28bda1a78d071a41e2e83135b6b025e373f8cc49
[openwrt/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 init=/etc/preinit";
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 ath9k_eep {
109 compatible = "ath9k,eeprom";
110 ath,eep-flash = <&ath9k_cal 0x0000>;
111 ath,mac-increment = <1>;
112 ath,pci-slot = <14>;
113 ath,eep-endian;
114 };
115 };
116
117 gpio: pinmux@E100B10 {
118 pinctrl-names = "default";
119 pinctrl-0 = <&state_default>;
120
121 state_default: pinmux {
122 nand_out {
123 lantiq,groups = "nand cle", "nand ale";
124 lantiq,function = "ebu";
125 lantiq,output = <1>;
126 lantiq,open-drain = <0>;
127 lantiq,pull = <0>;
128 };
129 nand_cs1 {
130 lantiq,groups = "nand cs1";
131 lantiq,function = "ebu";
132 lantiq,open-drain = <0>;
133 lantiq,pull = <0>;
134 };
135 exin {
136 lantiq,groups = "exin1";
137 lantiq,function = "exin";
138 };
139 pci_in {
140 lantiq,groups = "req1";
141 lantiq,function = "pci";
142 lantiq,output = <0>;
143 lantiq,open-drain = <1>;
144 lantiq,pull = <2>;
145 };
146 pci_out {
147 lantiq,groups = "gnt1";
148 lantiq,function = "pci";
149 lantiq,output = <1>;
150 lantiq,open-drain = <0>;
151 lantiq,pull = <0>;
152 };
153
154 pci_rst {
155 lantiq,pins = "io21";
156 lantiq,output = <1>;
157 lantiq,open-drain = <0>;
158 };
159
160 btn_in {
161 lantiq,pins = "io2", "io15", "io22";
162 lantiq,output = <0>;
163 lantiq,open-drain = <1>;
164 lantiq,pull = <2>;
165 };
166 };
167 };
168
169 etop@E180000 {
170 phy-mode = "rmii";
171 };
172
173 ifxhcd@E101000 {
174 status = "okay";
175 };
176
177 gpios: stp@E100BB0 {
178 status = "okay";
179 };
180
181 pci@E105400 {
182 status = "okay";
183 gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
184 };
185 };
186
187 gpio-keys-polled {
188 compatible = "gpio-keys-polled";
189 #address-cells = <1>;
190 #size-cells = <0>;
191 poll-interval = <100>;
192
193 reset {
194 label = "reset";
195 gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
196 linux,code = <KEY_RESTART>;
197 };
198 findhandset {
199 label = "findhandset";
200 gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
201 linux,code = <KEY_PHONE>;
202 };
203 wps {
204 label = "wps";
205 gpios = <&gpio 22 GPIO_ACTIVE_LOW>;
206 linux,code = <KEY_WPS_BUTTON>;
207 };
208 };
209
210 gpio-leds {
211 compatible = "gpio-leds";
212
213 upgrading-orange {
214 label = "bthomehubv2b:orange:upgrading";
215 gpios = <&gpios 5 GPIO_ACTIVE_HIGH>;
216 };
217
218 phone-orange {
219 label = "bthomehubv2b:orange:phone";
220 gpios = <&gpios 6 GPIO_ACTIVE_HIGH>;
221 };
222 phone-blue {
223 label = "bthomehubv2b:blue:phone";
224 gpios = <&gpios 7 GPIO_ACTIVE_HIGH>;
225 };
226
227 wireless-orange {
228 label = "bthomehubv2b:orange:wireless";
229 gpios = <&gpios 8 GPIO_ACTIVE_HIGH>;
230 };
231 wireless_blue: wireless-blue {
232 label = "bthomehubv2b:blue:wireless";
233 gpios = <&gpios 9 GPIO_ACTIVE_HIGH>;
234 };
235
236 broadband-red {
237 label = "bthomehubv2b:red:broadband";
238 gpios = <&gpios 10 GPIO_ACTIVE_HIGH>;
239 };
240 broadband-orange {
241 label = "bthomehubv2b:orange:broadband";
242 gpios = <&gpios 11 GPIO_ACTIVE_HIGH>;
243 };
244 broadband_blue: broadband-blue {
245 label = "bthomehubv2b:blue:broadband";
246 gpios = <&gpios 12 GPIO_ACTIVE_HIGH>;
247 };
248
249 power_red: power-red {
250 label = "bthomehubv2b:red:power";
251 gpios = <&gpios 13 GPIO_ACTIVE_HIGH>;
252 };
253 power_orange: power-orange {
254 label = "bthomehubv2b:orange:power";
255 gpios = <&gpios 14 GPIO_ACTIVE_HIGH>;
256 default-state = "keep";
257 };
258 power_blue: power-blue {
259 label = "bthomehubv2b:blue:power";
260 gpios = <&gpios 15 GPIO_ACTIVE_HIGH>;
261 };
262 };
263 };
264