Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/shli/md
[linux-2.6-block.git] / arch / arm / boot / dts / kirkwood-openblocks_a7.dts
CommitLineData
f24b56cb
TP
1/*
2 * Device Tree file for OpenBlocks A7 board
3 *
4 * Copyright (C) 2013 Free Electrons
5 *
6 * Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
7 *
8 * This file is licensed under the terms of the GNU General Public
9 * License version 2. This program is licensed "as is" without any
10 * warranty of any kind, whether express or implied.
11 */
12
13/dts-v1/;
14
15#include "kirkwood.dtsi"
16#include "kirkwood-6282.dtsi"
17
18/ {
19 model = "Plat'Home OpenBlocksA7";
20 compatible = "plathome,openblocks-a7", "marvell,kirkwood-88f6283", "marvell,kirkwood";
21
22 memory {
23 device_type = "memory";
24 reg = <0x00000000 0x40000000>; /* 1 GB */
25 };
26
27 chosen {
28 bootargs = "console=ttyS0,115200n8 earlyprintk";
ab833614 29 stdout-path = &uart0;
f24b56cb
TP
30 };
31
32 ocp@f1000000 {
33 serial@12000 {
9f2339a6 34 status = "okay";
f24b56cb
TP
35 };
36
37 serial@12100 {
9f2339a6 38 status = "okay";
f24b56cb
TP
39 };
40
41 sata@80000 {
42 nr-ports = <1>;
43 status = "okay";
44 };
45
46 i2c@11100 {
47 status = "okay";
f24b56cb
TP
48
49 s24c02: s24c02@50 {
dcdf9cfc 50 compatible = "atmel,24c02";
f24b56cb
TP
51 reg = <0x50>;
52 };
53 };
54
a9483969 55 pinctrl: pin-controller@10000 {
56aeb07c
TP
56 pinctrl-0 = <&pmx_dip_switches &pmx_gpio_header
57 &pmx_gpio_header_gpo>;
f24b56cb
TP
58 pinctrl-names = "default";
59
60 pmx_uart0: pmx-uart0 {
61 marvell,pins = "mpp10", "mpp11", "mpp15",
62 "mpp16";
63 marvell,function = "uart0";
64 };
65
66 pmx_uart1: pmx-uart1 {
67 marvell,pins = "mpp13", "mpp14", "mpp8",
68 "mpp9";
69 marvell,function = "uart1";
70 };
71
72 pmx_sysrst: pmx-sysrst {
73 marvell,pins = "mpp6";
74 marvell,function = "sysrst";
75 };
76
77 pmx_dip_switches: pmx-dip-switches {
78 marvell,pins = "mpp44", "mpp45", "mpp46", "mpp47";
79 marvell,function = "gpio";
80 };
81
82 /*
83 * Accessible on connector J202. The MPP
84 * listed below are pin 1-7, pin 8 is unused,
85 * pin 9 is external reset input and pin 10 is
86 * ground.
87 */
88 pmx_gpio_header: pmx-gpio-header {
56aeb07c 89 marvell,pins = "mpp17", "mpp29", "mpp28",
f24b56cb
TP
90 "mpp35", "mpp34", "mpp40";
91 marvell,function = "gpio";
92 };
93
56aeb07c
TP
94 pmx_gpio_header_gpo: pxm-gpio-header-gpo {
95 marvell,pins = "mpp7";
96 marvell,function = "gpo";
97 };
98
f24b56cb
TP
99 pmx_gpio_init: pmx-init {
100 marvell,pins = "mpp38";
101 marvell,function = "gpio";
102 };
103
104 pmx_usb_oc: pmx-usb-oc {
105 marvell,pins = "mpp39";
106 marvell,function = "gpio";
107 };
108
109 pmx_leds: pmx-leds {
110 marvell,pins = "mpp41", "mpp42", "mpp43";
111 marvell,function = "gpio";
112 };
f24b56cb
TP
113 };
114 };
115
116 gpio-leds {
117 compatible = "gpio-leds";
118 pinctrl-0 = <&pmx_leds>;
119 pinctrl-names = "default";
120
121 led-red {
122 label = "obsa7:red:stat";
3a31f2d7 123 gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
f24b56cb
TP
124 };
125
126 led-green {
127 label = "obsa7:green:stat";
3a31f2d7 128 gpios = <&gpio1 10 GPIO_ACTIVE_LOW>;
f24b56cb
TP
129 };
130
131 led-yellow {
132 label = "obsa7:yellow:stat";
3a31f2d7 133 gpios = <&gpio1 11 GPIO_ACTIVE_LOW>;
f24b56cb
TP
134 };
135 };
136
137 gpio_keys {
138 compatible = "gpio-keys";
139 pinctrl-0 = <&pmx_gpio_init>;
140 pinctrl-names = "default";
141 #address-cells = <1>;
142 #size-cells = <0>;
143
395c755f 144 button {
f24b56cb 145 label = "Init Button";
23301190 146 linux,code = <KEY_POWER>;
3a31f2d7 147 gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
f24b56cb
TP
148 };
149 };
150};
151
152&nand {
153 chip-delay = <25>;
154 status = "okay";
f24b56cb
TP
155
156 partition@0 {
157 label = "uboot";
158 reg = <0x0 0x1c0000>;
159 };
160
161 partition@1c0000 {
162 label = "env";
163 reg = <0x1c0000 0x2c0000>;
164 };
165
166 partition@480000 {
167 label = "test";
168 reg = <0x480000 0x160000>;
169 };
170
171 partition@5e0000 {
172 label = "conf";
173 reg = <0x5e0000 0x540000>;
174 };
175
176 partition@b20000 {
177 label = "linux";
178 reg = <0xb20000 0x3d40000>;
179 };
180
181 partition@4860000 {
182 label = "user";
183 reg = <0x4860000 0xb7a0000>;
184 };
185};
186
187&mdio {
188 status = "okay";
189
190 ethphy0: ethernet-phy@0 {
f24b56cb
TP
191 reg = <0>;
192 };
193
194 ethphy1: ethernet-phy@1 {
f24b56cb
TP
195 reg = <1>;
196 };
197};
198
199&eth0 {
200 status = "okay";
201 ethernet0-port@0 {
202 phy-handle = <&ethphy0>;
203 };
204};
205
206&eth1 {
207 status = "okay";
f24b56cb
TP
208 ethernet1-port@0 {
209 phy-handle = <&ethphy1>;
210 };
211};