lantiq: define default leds in dts files
[openwrt.git] / target / linux / lantiq / dts / BTHOMEHUBV5A.dts
1 /dts-v1/;
2
3 /include/ "vr9.dtsi"
4
5 / {
6         model = "BTHOMEHUBV5A - BT Home Hub 5A";
7
8         chosen {
9                 bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
10
11                 leds {
12                         internet = &broadband_blue;
13                         wifi = &wireless_blue;
14                 };
15         };
16
17         memory@0 {
18                 reg = <0x0 0x8000000>;
19         };
20
21         fpi@10000000 {
22                 localbus@0 {
23                         nand-parts@0 {
24                                 compatible = "gen_nand", "lantiq,nand-xway";
25                                 lantiq,cs = <1>;
26                                 bank-width = <2>;
27                                 reg = <0 0x0 0x2000000>;
28                                 #address-cells = <1>;
29                                 #size-cells = <1>;
30
31                                 partition@0 {
32                                         label = "u-boot";
33                                         reg = <0x0 0x40000>;
34                                         read-only;
35                                 };
36                                 partition@40000 {
37                                         label = "uboot-env";
38                                         reg = <0x40000 0x40000>;
39                                 };
40                                 caldata: partition@80000 {
41                                         label = "caldata";
42                                         reg = <0x80000 0x20000>;
43                                         read-only;
44                                 };
45                                 partition@a0000 {
46                                         label = "kernel";
47                                         reg = <0xa0000 0x200000>;
48                                 };
49                                 partition@2a0000 {
50                                         label = "ubi";
51                                         reg = <0x2a0000 0x7d60000>;
52                                 };
53                         };
54                 };
55
56                 gpio: pinmux@E100B10 {
57                         pinctrl-names = "default";
58                         pinctrl-0 = <&state_default>;
59
60                         interrupt-parent = <&icu0>;
61                         interrupts = <166 135 66 40 41 42 38>;
62
63                         state_default: pinmux {
64                                 mdio {
65                                         lantiq,groups = "mdio";
66                                         lantiq,function = "mdio";
67                                 };
68                                 pci_rst {
69                                         lantiq,pins = "io21";
70                                         lantiq,output = <1>;
71                                         lantiq,open-drain;
72                                 };
73                                 pcie_rst {
74                                         lantiq,pins = "io38";
75                                         lantiq,pull = <0>;
76                                         lantiq,output = <1>;
77                                         lantiq,open-drain;
78                                 };
79                                 usb_vbus {
80                                         lantiq,pins = "io33";
81                                         lantiq,pull = <0>;
82                                         lantiq,open-drain = <0>;
83                                         lantiq,output = <1>;
84                                 };
85                                 nand_out {
86                                         lantiq,groups = "nand cle", "nand ale";
87                                         lantiq,function = "ebu";
88                                         lantiq,output = <1>;
89                                         lantiq,open-drain = <0>;
90                                         lantiq,pull = <0>;
91                                 };
92                                 nand_cs1 {
93                                         lantiq,groups = "nand cs1";
94                                         lantiq,function = "ebu";
95                                         lantiq,open-drain = <0>;
96                                         lantiq,pull = <0>;
97                                 };
98                         };
99                 };
100
101                 eth@E108000 {
102                         #address-cells = <1>;
103                         #size-cells = <0>;
104                         compatible = "lantiq,xrx200-net";
105                         reg = < 0xE108000 0x3000        /* switch */
106                                 0xE10B100 0x70          /* mdio */
107                                 0xE10B1D8 0x30          /* mii */
108                                 0xE10B308 0x30 >;       /* pmac */
109                         interrupt-parent = <&icu0>;
110                         interrupts = <73 72>;
111
112                         lan: interface@0 {
113                                 compatible = "lantiq,xrx200-pdi";
114                                 #address-cells = <1>;
115                                 #size-cells = <0>;
116                                 reg = <0>;
117                                 mtd-mac-address = <&caldata 0x110c>;
118                                 lantiq,switch;
119
120                                 ethernet@0 {
121                                         compatible = "lantiq,xrx200-pdi-port";
122                                         reg = <0>;
123                                         phy-mode = "rgmii";
124                                         phy-handle = <&phy0>;
125                                 };
126                                 ethernet@1 {
127                                         compatible = "lantiq,xrx200-pdi-port";
128                                         reg = <1>;
129                                         phy-mode = "rgmii";
130                                         phy-handle = <&phy1>;
131                                 };
132                                 ethernet@2 {
133                                         compatible = "lantiq,xrx200-pdi-port";
134                                         reg = <2>;
135                                         phy-mode = "gmii";
136                                         phy-handle = <&phy11>;
137                                 };
138                                 ethernet@4 {
139                                         compatible = "lantiq,xrx200-pdi-port";
140                                         reg = <4>;
141                                         phy-mode = "gmii";
142                                         phy-handle = <&phy13>;
143                                 };
144                         };
145
146                         wan: interface@1 {
147                                 compatible = "lantiq,xrx200-pdi";
148                                 #address-cells = <1>;
149                                 #size-cells = <0>;
150                                 reg = <1>;
151                                 mtd-mac-address = <&caldata 0x110c>;
152                                 mtd-mac-address-increment = <4>;
153                                 lantiq,wan;
154
155                                 ethernet@5 {
156                                         compatible = "lantiq,xrx200-pdi-port";
157                                         reg = <5>;
158                                         phy-mode = "rgmii";
159                                         phy-handle = <&phy5>;
160                                 };
161                         };
162
163                         mdio@0 {
164                                 #address-cells = <1>;
165                                 #size-cells = <0>;
166                                 compatible = "lantiq,xrx200-mdio";
167
168                                 phy0: ethernet-phy@0 {
169                                         reg = <0x0>;
170                                         compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
171                                 };
172                                 phy1: ethernet-phy@1 {
173                                         reg = <0x1>;
174                                         compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
175                                 };
176                                 phy5: ethernet-phy@5 {
177                                         reg = <0x5>;
178                                         compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
179                                 };
180                                 phy11: ethernet-phy@11 {
181                                         reg = <0x11>;
182                                         compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
183                                 };
184                                 phy13: ethernet-phy@13 {
185                                         reg = <0x13>;
186                                         compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
187                                 };
188                         };
189                 };
190
191                 ifxhcd@E101000 {
192                         status = "okay";
193                         gpios = <&gpio 33 0>;
194                 };
195
196                 pci@E105400 {
197                         status = "okay";
198                         lantiq,bus-clock = <33333333>;
199                         interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
200                         interrupt-map = <0x7000 0 0 1 &icu0 30 1>;
201                         gpio-reset = <&gpio 21 0>;
202                 };
203         };
204
205         gphy-xrx200 {
206                 compatible = "lantiq,phy-xrx200";
207                 firmware1 = "lantiq/vr9_phy11g_a1x.bin";        /*VR9 1.1*/
208                 firmware2 = "lantiq/vr9_phy11g_a2x.bin";        /*VR9 1.2*/
209                 phys = [ 00 01 ];
210         };
211
212         ath9k_eep {
213                 compatible = "ath9k,eeprom";
214                 ath,eep-flash = <&caldata 0x1000>;
215                 ath,mac-offset = <0x110c>;
216                 ath,mac-increment = <2>;
217                 ath,pci-slot = <0xe>; /* 14 */
218         };
219
220         gpio-keys-polled {
221                 compatible = "gpio-keys-polled";
222                 #address-cells = <1>;
223                 #size-cells = <0>;
224                 poll-interval = <100>;
225
226                 reset {
227                         label = "reset";
228                         gpios = <&gpio 2 1>;
229                         linux,code = <0x198>;
230                 };
231
232                 wps {
233                         label = "wps";
234                         gpios = <&gpio 25 1>;
235                         linux,code = <0x211>;
236                 };
237
238                 restart {
239                         label = "restart";
240                         gpios = <&gpio 39 1>;
241                         linux,code = <0x198>;
242                 };
243         };
244
245         gpio-leds {
246                 compatible = "gpio-leds";
247
248                 broadband-red {
249                         label = "soc:red:broadband";
250                         gpios = <&gpio 0 1>;
251                 };
252                 broadband-green {
253                         label = "soc:green:broadband";
254                         gpios = <&gpio 3 1>;
255                 };
256                 broadband_blue: broadband-blue {
257                         label = "soc:blue:broadband";
258                         gpios = <&gpio 8 1>;
259                 };
260
261                 wireless-red {
262                         label = "soc:red:wireless";
263                         gpios = <&gpio 9 1>;
264                 };
265                 wireless-green {
266                         label = "soc:green:wireless";
267                         gpios = <&gpio 10 1>;
268                 };
269                 wireless_blue: wireless-blue {
270                         label = "soc:blue:wireless";
271                         gpios = <&gpio 11 1>;
272                 };
273
274                 power-red {
275                         label = "soc:red:power";
276                         gpios = <&gpio 12 1>;
277                 };
278                 power-green {
279                         label = "soc:green:power";
280                         gpios = <&gpio 14 1>;
281                 };
282                 power-blue {
283                         label = "soc:blue:power";
284                         gpios = <&gpio 15 1>;
285                 };
286
287                 dimmed {
288                         label = "dimmed";
289                         gpios = <&gpio 19 0>;
290                 };
291         };
292 };