1ae9840fcbfd118b10f4600a706d4089f3d14a2b
[openwrt.git] / target / linux / lantiq / dts / BTHOMEHUBV3A.dts
1 /dts-v1/;
2
3 /include/ "ar9.dtsi"
4
5 / {
6         model = "BTHOMEHUBV3A - BT Home Hub 3A";  /* SoC: Lantiq ar9 @ 333MHz */
7
8         chosen {
9                 bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
10         };
11
12         memory@0 {                                /* RAM: Samsung K4H511638F-LC 64MB */
13                 reg = <0x0 0x4000000>;
14         };
15
16         sram@1F000000 {
17                 vmmc@107000 {
18                         status = "okay";
19                         gpios = <&gpio 31 0>;
20                 };
21         };
22
23         fpi@10000000 {
24                 #address-cells = <1>;
25                 #size-cells = <1>;
26                 localbus@0 {
27                         #address-cells = <2>;
28                         #size-cells = <1>;
29                         ranges = <0 0 0x0 0x3ffffff /* addrsel0 */
30                                 1 0 0x4000000 0x4000010>; /* addsel1 */
31                         compatible = "lantiq,localbus", "simple-bus";
32
33                         nand-parts@0 {            /* NAND Flash: Samsung K9F5608U0D-JIB0 32MB */
34                                 compatible = "gen_nand", "lantiq,nand-xway";
35                                 lantiq,cs = <1>;
36                                 bank-width = <2>;
37                                 reg = <1 0x0 0x2000000 >;
38                                 #address-cells = <1>;
39                                 #size-cells = <1>;
40                                 req-mask = <0x1>;  /* PCI request lines to mask during NAND access */
41
42                                 partition@0 {
43                                         label = "preboot";
44                                         reg = <0x00000 0x8000>;
45                                         read-only;
46                                 };
47                                 partition@8000 {
48                                         label = "u-boot";
49                                         reg = <0x8000 0x05c000>;
50                                         read-only;
51                                 };
52                                 partition@64000 {
53                                         label = "uboot-config";
54                                         reg = <0x64000 0x004000>;
55                                         read-only;
56                                 };
57                                 ath9k_cal: partition@68000 {
58                                         label = "art-copy";
59                                         reg = <0x68000 0x004000>;
60                                         read-only;
61                                 };
62                                 partition@6c000 {
63                                         label = "kernel";
64                                         reg = <0x6c000 0x200000>;
65                                 };
66                                 partition@26c000 {
67                                         label = "ubi";
68                                         reg = <0x26c000 0x1d94000>;
69                                 };
70                         };
71
72                         ath9k_eep {
73                                 compatible = "ath9k,eeprom";
74                                 ath,eep-flash = <&ath9k_cal 0x0000>;
75                                 ath,mac-offset = <0x10c>;
76                                 ath,pci-slot = <14>;
77                                 ath,eep-endian;
78                         };
79                 };
80
81                 gpio: pinmux@E100B10 {
82                         compatible = "lantiq,pinctrl-xr9";
83                         pinctrl-names = "default";
84                         pinctrl-0 = <&state_default>;
85
86                         #gpio-cells = <2>;
87                         gpio-controller;
88                         reg = <0xE100B10 0xA0>;
89
90                         state_default: pinmux {
91                                 nand_out {
92                                         lantiq,groups = "nand cle", "nand ale";
93                                         lantiq,function = "ebu";
94                                         lantiq,output = <1>;
95                                         lantiq,open-drain = <0>;
96                                         lantiq,pull = <0>;
97                                 };
98                                 nand_cs1 {
99                                         lantiq,groups = "nand cs1";
100                                         lantiq,function = "ebu";
101                                         lantiq,open-drain = <0>;
102                                         lantiq,pull = <0>;
103                                 };
104
105                                 pci_in {
106                                         lantiq,groups = "req1";
107                                         lantiq,function = "pci";
108                                         lantiq,output = <0>;
109                                         lantiq,open-drain = <1>;
110                                         lantiq,pull = <2>;
111                                 };
112                                 pci_out {
113                                         lantiq,groups = "gnt1";
114                                         lantiq,function = "pci";
115                                         lantiq,output = <1>;
116                                         lantiq,open-drain = <0>;
117                                         lantiq,pull = <0>;
118                                 };
119
120                                 pci_rst {
121                                         lantiq,pins = "io21";
122                                         lantiq,output = <1>;
123                                         lantiq,open-drain = <0>;
124                                 };
125                         };
126                 };
127
128                 etop@E180000 {
129                         phy-mode = "rgmii";
130                 };
131
132                 ifxhcd@E101000 {
133                         status = "okay";
134                         gpios = <&gpio 33 0>;
135                 };
136
137                 pci@E105400 {
138                         status = "okay";
139                         gpio-reset = <&gpio 21 0>;
140                 };
141
142         };
143
144         gpio-keys-polled {
145                 compatible = "gpio-keys-polled";
146                 #address-cells = <1>;
147                 #size-cells = <0>;
148                 poll-interval = <100>;
149                 reset {
150                         label = "reset";
151                         gpios = <&gpio 54 1>;
152                         linux,code = <0x198>;
153                 };
154                 restart {
155                         label = "restart";
156                         gpios = <&gpio 52 1>;
157                         linux,code = <0x198>;
158                 };
159                 wps {
160                         label = "wps";
161                         gpios = <&gpio 53 1>;
162                         linux,code = <0x211>;
163                 };
164         };
165
166         gpio-leds {
167                 compatible = "gpio-leds";
168
169                 wireless-red {
170                         label = "soc:red:wireless";
171                         gpios = <&gpio 2 1>;
172                 };
173                 wireless-orange {
174                         label = "soc:orange:wireless";
175                         gpios = <&gpio 6 1>;
176                 };
177                 wireless-blue {
178                         label = "soc:blue:wireless";
179                         gpios = <&gpio 9 1>;
180                 };
181
182                 broadband-red {
183                         label = "soc:red:broadband";
184                         gpios = <&gpio 11 1>;
185                 };
186                 broadband-orange {
187                         label = "soc:orange:broadband";
188                         gpios = <&gpio 0 1>;
189                 };
190                 broadband-blue {
191                         label = "soc:blue:broadband";
192                         gpios = <&gpio 12 1>;
193                 };
194
195                 power-red {
196                         label = "soc:red:power";
197                         gpios = <&gpio 14 1>;
198                 };
199                 power-orange {
200                         label = "soc:orange:power";
201                         gpios = <&gpio 5 1>;
202                 };
203                 power-blue {
204                         label = "soc:blue:power";
205                         gpios = <&gpio 1 1>;
206                 };
207         };
208
209 };
210