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