lantiq: add support for indicating the boot state using three leds
[openwrt/openwrt.git] / target / linux / lantiq / dts / ARV7519PW.dts
1 /dts-v1/;
2
3 /include/ "danube.dtsi"
4
5 / {
6 model = "ARV7519PW - Astoria Networks";
7
8 chosen {
9 bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
10
11 leds {
12 boot = &power;
13 failsafe = &power2;
14 running = &power;
15
16 dsl = &dsl;
17 internet = &online;
18 wifi = &wifi;
19 };
20 };
21
22 memory@0 {
23 reg = <0x0 0x4000000>;
24 };
25
26 sram@1F000000 {
27 vmmc@107000 {
28 status = "okay";
29 };
30 };
31
32 fpi@10000000 {
33 localbus@0 {
34 nor-boot@0 {
35 compatible = "lantiq,nor";
36 bank-width = <2>;
37 reg = <0 0x0 0x2000000>;
38 #address-cells = <1>;
39 #size-cells = <1>;
40
41 partition@0 {
42 label = "uboot";
43 reg = <0x00000 0x40000>;
44 read-only;
45 };
46
47 partition@40000 {
48 label = "uboot_env";
49 reg = <0x40000 0x20000>;
50 };
51
52 partition@60000 {
53 label = "firmware";
54 reg = <0x60000 0xf80000>;
55 };
56
57 partition@fe0000 {
58 label = "board_config";
59 reg = <0xfe0000 0x20000>;
60 read-only;
61 };
62 };
63
64 mac_addr {
65 compatible = "lantiq,eth-mac";
66 reg = <0 0xfe0016 0x6>;
67 mac-increment = <2>;
68 };
69 };
70
71 gpio: pinmux@E100B10 {
72 pinctrl-names = "default";
73 pinctrl-0 = <&state_default>;
74
75 state_default: pinmux {
76 ebu {
77 lantiq,groups = "ebu cs1";
78 lantiq,function = "ebu";
79 };
80 pci_in {
81 lantiq,groups = "req1";
82 lantiq,function = "pci";
83 lantiq,open-drain = <1>;
84 lantiq,pull = <2>;
85 lantiq,output = <0>;
86 };
87 pci_out {
88 lantiq,groups = "gnt1";
89 lantiq,function = "pci";
90 lantiq,pull = <0>;
91 lantiq,output = <1>;
92 };
93 pci_rst {
94 lantiq,pins = "io21";
95 lantiq,pull = <2>;
96 lantiq,output = <1>;
97 };
98 switch_rst {
99 lantiq,pins = "io19";
100 lantiq,pull = <2>;
101 lantiq,output = <1>;
102 };
103 };
104 };
105
106 etop@E180000 {
107 phy-mode = "mii";
108 };
109
110 /* warning: passive port
111 only works with active devices */
112 ifxhcd@E101000 {
113 status = "okay";
114 };
115
116 pci@E105400 {
117 status = "okay";
118 lantiq,external-clock;
119 gpio-reset = <&gpio 21 0>;
120 req-mask = <0xf>;
121 };
122 };
123
124 ralink_eep {
125 compatible = "ralink,eeprom";
126 ralink,eeprom = "RT2860.eeprom";
127 };
128
129 gpio-keys-polled {
130 compatible = "gpio-keys-polled";
131 #address-cells = <1>;
132 #size-cells = <0>;
133 poll-interval = <100>;
134
135 rfkill {
136 label = "rfkill";
137 gpios = <&gpio 11 1>;
138 linux,code = <0xf7>;
139 };
140 reset {
141 label = "reset";
142 gpios = <&gpio 28 1>;
143 linux,code = <0x198>;
144 };
145 };
146
147 gpio-leds {
148 compatible = "gpio-leds";
149 power: power {
150 label = "power";
151 gpios = <&gpio 2 1>;
152 default-state = "keep";
153 };
154 power2: power2 {
155 label = "power2";
156 gpios = <&gpio 14 1>;
157 };
158 online: online {
159 label = "online";
160 gpios = <&gpio 3 1>;
161 };
162 online2 {
163 label = "online2";
164 gpios = <&gpio 30 1>;
165 };
166 wifi: wifi {
167 label = "wifi";
168 gpios = <&gpio 12 1>;
169 };
170 wifi2 {
171 label = "wifi2";
172 gpios = <&gpio 10 1>;
173 };
174 wifi3 {
175 label = "wifi3";
176 gpios = <&gpio 6 1>;
177 };
178 voice {
179 label = "voice";
180 gpios = <&gpio 31 1>;
181 };
182 wps {
183 label = "wps";
184 gpios = <&gpio 15 1>;
185 };
186 wps2 {
187 label = "wps2";
188 gpios = <&gpio 7 1>;
189 };
190 wps3 {
191 label = "wps3";
192 gpios = <&gpio 23 1>;
193 };
194 dsl: dsl {
195 label = "dsl";
196 gpios = <&gpio 4 1>;
197 };
198 lan {
199 label = "lan";
200 gpios = <&gpio 1 1>;
201 };
202 tv {
203 label = "tv";
204 gpios = <&gpio 20 1>;
205 };
206 upgrade {
207 label = "upgrade";
208 gpios = <&gpio 29 1>;
209 };
210 };
211
212 /* is there another way to "reserve" the GPIO? */
213 gpio_export {
214 compatible = "gpio-export";
215 #size-cells = <0>;
216
217 switch {
218 gpio-export,name = "switch";
219 gpio-export,output = <1>;
220 gpios = <&gpio 19 0>;
221 };
222 };
223 };