8c56c7d2f12326a51b40faddaf3676aa74d10595
[openwrt/openwrt.git] / target / linux / ipq40xx / files-6.6 / arch / arm / boot / dts / qcom / qcom-ipq4029-aruba-glenmorangie.dtsi
1 // SPDX-License-Identifier: GPL-2.0-only OR MIT
2
3 #include "qcom-ipq4019.dtsi"
4 #include <dt-bindings/gpio/gpio.h>
5 #include <dt-bindings/input/input.h>
6 #include <dt-bindings/soc/qcom,tcsr.h>
7
8 / {
9 memory {
10 device_type = "memory";
11 reg = <0x80000000 0x10000000>;
12 };
13
14 soc {
15 counter@4a1000 {
16 compatible = "qcom,qca-gcnt";
17 reg = <0x4a1000 0x4>;
18 };
19
20 ess_tcsr@1953000 {
21 compatible = "qcom,tcsr";
22 reg = <0x1953000 0x1000>;
23 qcom,ess-interface-select = <TCSR_ESS_PSGMII_RGMII5>;
24 };
25
26 tcsr@1949000 {
27 compatible = "qcom,tcsr";
28 reg = <0x1949000 0x100>;
29 qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
30 };
31
32 tcsr@1957000 {
33 compatible = "qcom,tcsr";
34 reg = <0x1957000 0x100>;
35 qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
36 };
37 };
38
39 keys {
40 compatible = "gpio-keys";
41
42 reset {
43 label = "Reset button";
44 gpios = <&tlmm 50 GPIO_ACTIVE_LOW>;
45 linux,code = <KEY_RESTART>;
46 };
47 };
48 };
49
50 &watchdog {
51 status = "okay";
52 };
53
54 &prng {
55 status = "okay";
56 };
57
58 &crypto {
59 status = "okay";
60 };
61
62 &blsp_dma {
63 status = "okay";
64 };
65
66 &blsp1_uart1 {
67 /* Texas Instruments CC2540T BLE radio */
68 pinctrl-0 = <&serial_0_pins>;
69 pinctrl-names = "default";
70 status = "okay";
71 };
72
73 &blsp1_uart2 {
74 pinctrl-0 = <&serial_1_pins>;
75 pinctrl-names = "default";
76 status = "okay";
77 };
78
79 &blsp1_i2c3 {
80 pinctrl-0 = <&i2c_0_pins>;
81 pinctrl-names = "default";
82 status = "okay";
83
84 tpm@29 {
85 /* No Driver */
86 compatible = "atmel,at97sc3203";
87 reg = <0x29>;
88 read-only;
89 };
90 };
91
92 &cryptobam {
93 status = "okay";
94 };
95
96 &qpic_bam {
97 status = "okay";
98 };
99
100 &tlmm {
101 mdio_pins: mdio_pinmux {
102 mux_1 {
103 pins = "gpio6";
104 function = "mdio";
105 bias-pull-up;
106 };
107 mux_2 {
108 pins = "gpio7";
109 function = "mdc";
110 bias-pull-up;
111 };
112 };
113
114 nand_pins: nand_pins {
115 pullups {
116 pins = "gpio53", "gpio58", "gpio59";
117 function = "qpic";
118 bias-pull-up;
119 };
120
121 pulldowns {
122 pins = "gpio54", "gpio55", "gpio56",
123 "gpio57", "gpio60", "gpio61",
124 "gpio62", "gpio63", "gpio64",
125 "gpio65", "gpio66", "gpio67",
126 "gpio68", "gpio69";
127 function = "qpic";
128 bias-pull-down;
129 };
130 };
131
132 spi_0_pins: spi_0_pinmux {
133 pin {
134 function = "blsp_spi0";
135 pins = "gpio13", "gpio14", "gpio15";
136 drive-strength = <12>;
137 bias-disable;
138 };
139 pin_cs {
140 function = "gpio";
141 pins = "gpio12";
142 drive-strength = <2>;
143 bias-disable;
144 output-high;
145 };
146 };
147
148 i2c_0_pins: i2c_0_pinmux {
149 mux {
150 pins = "gpio10", "gpio11";
151 function = "blsp_i2c0";
152 drive-strength = <4>;
153 bias-disable;
154 };
155 };
156
157 serial_0_pins: serial_0_pinmux {
158 mux {
159 pins = "gpio16", "gpio17";
160 function = "blsp_uart0";
161 bias-disable;
162 };
163 };
164
165 serial_1_pins: serial_1_pinmux {
166 mux {
167 pins = "gpio8", "gpio9";
168 function = "blsp_uart1";
169 bias-disable;
170 };
171 };
172 };
173
174 &nand {
175 pinctrl-0 = <&nand_pins>;
176 pinctrl-names = "default";
177 status = "okay";
178
179 nand@0 {
180 partitions {
181 compatible = "fixed-partitions";
182 #address-cells = <1>;
183 #size-cells = <1>;
184
185 partition@0 {
186 /* 'aos0' in Aruba firmware */
187 label = "aos0";
188 reg = <0x0 0x2000000>;
189 read-only;
190 };
191
192 partition@2000000 {
193 /* 'aos1' in Aruba firmware */
194 label = "ubi";
195 reg = <0x2000000 0x2000000>;
196 };
197
198 partition@4000000 {
199 label = "aruba-ubifs";
200 reg = <0x4000000 0x4000000>;
201 read-only;
202 };
203 };
204 };
205 };
206
207 &mdio {
208 status = "okay";
209 pinctrl-0 = <&mdio_pins>;
210 pinctrl-names = "default";
211
212 ethphy: ethernet-phy@5 {
213 reg = <0x5>;
214 };
215 };
216
217 &gmac {
218 status = "okay";
219 };
220
221 &switch {
222 status = "okay";
223
224 /delete-property/ psgmii-ethphy;
225 };
226
227 &swport5 {
228 status = "okay";
229
230 label = "lan";
231 phy-handle = <&ethphy>;
232 phy-mode = "rgmii-id";
233 };
234
235 &ethphy0 {
236 status = "disabled";
237 };
238
239 &ethphy1 {
240 status = "disabled";
241 };
242
243 &ethphy2 {
244 status = "disabled";
245 };
246
247 &ethphy3 {
248 status = "disabled";
249 };
250
251 &ethphy4 {
252 status = "disabled";
253 };
254
255 &psgmiiphy {
256 status = "disabled";
257 };
258
259 &wifi0 {
260 status = "okay";
261 nvmem-cell-names = "pre-calibration", "mac-address";
262 nvmem-cells = <&precal_art_1000>, <&macaddr_mfginfo_1d 0>;
263 qcom,ath10k-calibration-variant = "Aruba-AP-303";
264 };
265
266 &wifi1 {
267 status = "okay";
268 nvmem-cell-names = "pre-calibration", "mac-address";
269 nvmem-cells = <&precal_art_5000>, <&macaddr_mfginfo_1d 1>;
270 qcom,ath10k-calibration-variant = "Aruba-AP-303";
271 };