lantiq: BT Home Hub3A - device tree
[openwrt/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