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