40d1e597c5a4df2f85db7817447735beaee42baf
[openwrt/openwrt.git] / target / linux / lantiq / files-5.4 / arch / mips / boot / dts / lantiq / ar9_bt_homehub-v3a.dts
1 #include "ar9.dtsi"
2
3 #include <dt-bindings/input/input.h>
4
5 / {
6 compatible = "bt,homehub-v3a", "lantiq,xway", "lantiq,ar9";
7 model = "BT Home Hub 3A"; /* SoC: Lantiq ar9 @ 333MHz */
8
9 chosen {
10 bootargs = "console=ttyLTQ0,115200";
11 };
12
13 aliases {
14 led-boot = &power_orange;
15 led-failsafe = &power_red;
16 led-running = &power_blue;
17 led-upgrade = &power_blue;
18
19 led-dsl = &broadband_blue;
20 led-wifi = &wireless_blue;
21 };
22
23 memory@0 { /* RAM: Samsung K4H511638F-LC 64MB */
24 device_type = "memory";
25 reg = <0x0 0x4000000>;
26 };
27
28 keys {
29 compatible = "gpio-keys-polled";
30 poll-interval = <100>;
31 reset {
32 label = "reset";
33 gpios = <&gpio 54 GPIO_ACTIVE_LOW>;
34 linux,code = <KEY_RESTART>;
35 };
36 restart {
37 label = "restart";
38 gpios = <&gpio 52 GPIO_ACTIVE_LOW>;
39 linux,code = <KEY_POWER>;
40 };
41 wps {
42 label = "wps";
43 gpios = <&gpio 53 GPIO_ACTIVE_LOW>;
44 linux,code = <KEY_WPS_BUTTON>;
45 };
46 };
47
48 leds {
49 compatible = "gpio-leds";
50
51 wireless-red {
52 label = "bthomehubv3a:red:wireless";
53 gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
54 };
55 wireless-orange {
56 label = "bthomehubv3a:orange:wireless";
57 gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
58 };
59 wireless_blue: wireless-blue {
60 label = "bthomehubv3a:blue:wireless";
61 gpios = <&gpio 9 GPIO_ACTIVE_LOW>;
62 };
63
64 broadband-red {
65 label = "bthomehubv3a:red:broadband";
66 gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
67 };
68 broadband-orange {
69 label = "bthomehubv3a:orange:broadband";
70 gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
71 };
72 broadband_blue: broadband-blue {
73 label = "bthomehubv3a:blue:broadband";
74 gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
75 };
76
77 power_red: power-red {
78 label = "bthomehubv3a:red:power";
79 gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
80 };
81 power_orange: power-orange {
82 label = "bthomehubv3a:orange:power";
83 gpios = <&gpio 5 GPIO_ACTIVE_LOW>;
84 default-state = "keep";
85 };
86 power_blue: power-blue {
87 label = "bthomehubv3a:blue:power";
88 gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
89 };
90 };
91
92 usb_vbus: regulator-usb-vbus {
93 compatible = "regulator-fixed";
94
95 regulator-name = "USB_VBUS";
96
97 regulator-min-microvolt = <5000000>;
98 regulator-max-microvolt = <5000000>;
99
100 gpio = <&gpio 33 GPIO_ACTIVE_HIGH>;
101 enable-active-high;
102 };
103 };
104
105 &gpio {
106 pinctrl-names = "default";
107 pinctrl-0 = <&state_default>;
108
109 state_default: pinmux {
110 pci_rst {
111 lantiq,pins = "io21";
112 lantiq,output = <1>;
113 lantiq,open-drain = <0>;
114 };
115 };
116 };
117
118 &gsw {
119 phy-mode = "rgmii";
120 };
121
122 &localbus {
123 flash@1 { /* NAND Flash: Samsung K9F5608U0D-JIB0 32MB */
124 compatible = "lantiq,nand-xway";
125 lantiq,cs = <1>;
126 bank-width = <2>;
127 reg = <1 0x0 0x2000000 >;
128 req-mask = <0x1>; /* PCI request lines to mask during NAND access */
129
130 pinctrl-0 = <&nand_pins>, <&nand_cs1_pins>;
131 pinctrl-names = "default";
132
133 partitions {
134 compatible = "fixed-partitions";
135 #address-cells = <1>;
136 #size-cells = <1>;
137
138 partition@0 {
139 label = "preboot";
140 reg = <0x00000 0x8000>;
141 read-only;
142 };
143 partition@8000 {
144 label = "u-boot";
145 reg = <0x8000 0x05c000>;
146 read-only;
147 };
148 partition@64000 {
149 label = "u-boot-env";
150 reg = <0x64000 0x004000>;
151 };
152 ath9k_cal: partition@68000 {
153 label = "art-copy";
154 reg = <0x68000 0x004000>;
155 };
156 partition@6c000 {
157 label = "kernel";
158 reg = <0x6c000 0x200000>;
159 };
160 partition@26c000 {
161 label = "ubi";
162 reg = <0x26c000 0x1d94000>;
163 };
164 };
165 };
166 };
167
168 &pci0 {
169 status = "okay";
170
171 pinctrl-0 = <&pci_gnt1_pins>, <&pci_req1_pins>;
172 pinctrl-names = "default";
173
174 gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
175
176 wifi@7000 {
177 reg = <0x7000 0 0 0 0>;
178 qca,no-eeprom; /* load from ath9k-eeprom-pci-0000:00:0e.0.bin */
179 };
180 };
181
182 &usb_phy0 {
183 status = "okay";
184 };
185
186 &usb0 {
187 status = "okay";
188 vbus-supply = <&usb_vbus>;
189 };