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