lantiq: dts: use generic node names
[oweals/openwrt.git] / target / linux / lantiq / files / arch / mips / boot / dts / BTHOMEHUBV2B.dts
1 /dts-v1/;
2
3 #include "danube.dtsi"
4
5 #include <dt-bindings/input/input.h>
6
7 / {
8         compatible = "bt,homehub-v2b", "lantiq,xway", "lantiq,danube";
9         model = "BT Home Hub 2B";  /* SoC: Lantiq Danube-S PSB 50712 @ 333MHz V1.3/1.5 */
10
11         chosen {
12                 bootargs = "console=ttyLTQ0,115200";
13         };
14
15         aliases {
16                 led-boot = &power_orange;
17                 led-failsafe = &power_red;
18                 led-running = &power_blue;
19                 led-upgrade = &power_blue;
20
21                 led-dsl = &broadband_blue;
22                 led-wifi = &wireless_blue;
23         };
24
25         memory@0 {                                /* RAM: Samsung K4H511638F-LC 64MB */
26                 device_type = "memory";
27                 reg = <0x0 0x4000000>;
28         };
29
30         keys {
31                 compatible = "gpio-keys-polled";
32                 poll-interval = <100>;
33
34                 reset {
35                         label = "reset";
36                         gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
37                         linux,code = <KEY_RESTART>;
38                 };
39                 findhandset {
40                         label = "findhandset";
41                         gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
42                         linux,code = <KEY_PHONE>;
43                 };
44                 wps {
45                         label = "wps";
46                         gpios = <&gpio 22 GPIO_ACTIVE_LOW>;
47                         linux,code = <KEY_WPS_BUTTON>;
48                 };
49         };
50
51         leds {
52                 compatible = "gpio-leds";
53
54                 upgrading-orange {
55                         label = "bthomehubv2b:orange:upgrading";
56                         gpios = <&gpios 5 GPIO_ACTIVE_HIGH>;
57                 };
58
59                 phone-orange {
60                         label = "bthomehubv2b:orange:phone";
61                         gpios = <&gpios 6 GPIO_ACTIVE_HIGH>;
62                 };
63                 phone-blue {
64                         label = "bthomehubv2b:blue:phone";
65                         gpios = <&gpios 7 GPIO_ACTIVE_HIGH>;
66                 };
67
68                 wireless-orange {
69                         label = "bthomehubv2b:orange:wireless";
70                         gpios = <&gpios 8 GPIO_ACTIVE_HIGH>;
71                 };
72                 wireless_blue: wireless-blue {
73                         label = "bthomehubv2b:blue:wireless";
74                         gpios = <&gpios 9 GPIO_ACTIVE_HIGH>;
75                 };
76
77                 broadband-red {
78                         label = "bthomehubv2b:red:broadband";
79                         gpios = <&gpios 10 GPIO_ACTIVE_HIGH>;
80                 };
81                 broadband-orange {
82                         label = "bthomehubv2b:orange:broadband";
83                         gpios = <&gpios 11 GPIO_ACTIVE_HIGH>;
84                 };
85                 broadband_blue: broadband-blue {
86                         label = "bthomehubv2b:blue:broadband";
87                         gpios = <&gpios 12 GPIO_ACTIVE_HIGH>;
88                 };
89
90                 power_red: power-red {
91                         label = "bthomehubv2b:red:power";
92                         gpios = <&gpios 13 GPIO_ACTIVE_HIGH>;
93                 };
94                 power_orange: power-orange {
95                         label = "bthomehubv2b:orange:power";
96                         gpios = <&gpios 14 GPIO_ACTIVE_HIGH>;
97                         default-state = "keep";
98                 };
99                 power_blue: power-blue {
100                         label = "bthomehubv2b:blue:power";
101                         gpios = <&gpios 15 GPIO_ACTIVE_HIGH>;
102                 };
103         };
104 };
105
106 &gpio {
107         pinctrl-names = "default";
108         pinctrl-0 = <&state_default>;
109
110         state_default: pinmux {
111                 nand_out {
112                         lantiq,groups = "nand cle", "nand ale";
113                         lantiq,function = "ebu";
114                         lantiq,output = <1>;
115                         lantiq,open-drain = <0>;
116                         lantiq,pull = <0>;
117                 };
118                 nand_cs1 {
119                         lantiq,groups = "nand cs1";
120                         lantiq,function = "ebu";
121                         lantiq,open-drain = <0>;
122                         lantiq,pull = <0>;
123                 };
124                 exin {
125                         lantiq,groups = "exin1";
126                         lantiq,function = "exin";
127                 };
128                 pci_in {
129                         lantiq,groups = "req1";
130                         lantiq,function = "pci";
131                         lantiq,output = <0>;
132                         lantiq,open-drain = <1>;
133                         lantiq,pull = <2>;
134                 };
135                 pci_out {
136                         lantiq,groups = "gnt1";
137                         lantiq,function = "pci";
138                         lantiq,output = <1>;
139                         lantiq,open-drain = <0>;
140                         lantiq,pull = <0>;
141                 };
142
143                 pci_rst {
144                         lantiq,pins = "io21";
145                         lantiq,output = <1>;
146                         lantiq,open-drain = <0>;
147                 };
148
149                 btn_in {
150                         lantiq,pins = "io2", "io15", "io22";
151                         lantiq,output = <0>;
152                         lantiq,open-drain = <1>;
153                         lantiq,pull = <2>;
154                 };
155         };
156 };
157
158 &gpios {
159         status = "okay";
160 };
161
162 &gsw {
163         phy-mode = "rmii";
164 };
165
166 &localbus {
167         flash@0 {                               /* NOR Flash: Spansion S29AL004D 512KB */
168                 compatible = "lantiq,nor";      /* "AMD AM29LV400BB" compatible on 3.3.8 */
169                 lantiq,cs = <0>;
170                 bank-width = <2>;
171                 reg = <0 0x0 0x80000>;
172
173                 partitions {
174                         compatible = "fixed-partitions";
175                         #address-cells = <1>;
176                         #size-cells = <1>;
177
178                         partition@0 {
179                                 label = "uboot";
180                                 reg = <0x00000 0x40000>; /* 256KB */
181                         };
182
183                         partition@40000 {
184                                 label = "uboot_env";
185                                 reg = <0x40000 0x10000>; /* 64KB */
186                         };
187
188                         partition@50000 {
189                                 label = "rg_conf_1";
190                                 reg = <0x50000 0x10000>;
191                         };
192
193                         partition@60000 {
194                                 label = "rg_conf_2";
195                                 reg = <0x60000 0x10000>;
196                         };
197
198                         partition@70000 {
199                                 label = "rg_conf_factory";
200                                 reg = <0x70000 0x10000>;
201                         };
202                 };
203         };
204
205         flash@1 {                 /* NAND Flash: Samsung K9F5608U0D-JIB0 32MB */
206                 compatible = "lantiq,nand-xway";
207                 lantiq,cs = <1>;
208                 bank-width = <2>;
209                 reg = <1 0x0 0x2000000 >;
210                 req-mask = <0x1>;  /* PCI request lines to mask during NAND access */
211
212                 partitions {
213                         compatible = "fixed-partitions";
214                         #address-cells = <1>;
215                         #size-cells = <1>;
216
217                         ath9k_cal: partition@0 {
218                                 label = "art";     /* Atheros 9160 wifi b/g/n radio EEPROM */
219                                 reg = <0x00000 0x4000>;
220                                 read-only;
221                         };
222
223                         partition@4000 {
224                                 label = "kernel";
225                                 reg = <0x4000 0x200000>;
226                         };
227
228                         partition@164000 {
229                                 label = "ubi";
230                                 reg = <0x204000 0x1dfc000>;
231                         };
232                 };
233         };
234 };
235
236 &pci0 {
237         status = "okay";
238         gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
239
240         wifi@168c,0027 {
241                 compatible = "pci168c,0027";
242                 reg = <0x7000 0 0 0 0>;
243                 qca,no-eeprom; /* load from ath9k-eeprom-pci-0000:00:0e.0.bin */
244         };
245 };
246
247 &usb_phy {
248         status = "okay";
249 };
250
251 &usb {
252         status = "okay";
253 };
254
255 &vmmc {
256         status = "okay";
257         gpios = <&gpio 31 GPIO_ACTIVE_HIGH>;
258 };