991b93671b2abb71542b4a5705bf2b441ebfb37b
[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 mdio@90000 {
16 status = "okay";
17 pinctrl-0 = <&mdio_pins>;
18 pinctrl-names = "default";
19
20 ethphy: ethernet-phy@5 {
21 reg = <0x5>;
22 };
23 };
24
25 counter@4a1000 {
26 compatible = "qcom,qca-gcnt";
27 reg = <0x4a1000 0x4>;
28 };
29
30 ess_tcsr@1953000 {
31 compatible = "qcom,tcsr";
32 reg = <0x1953000 0x1000>;
33 qcom,ess-interface-select = <TCSR_ESS_PSGMII_RGMII5>;
34 };
35
36 tcsr@1949000 {
37 compatible = "qcom,tcsr";
38 reg = <0x1949000 0x100>;
39 qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
40 };
41
42 tcsr@1957000 {
43 compatible = "qcom,tcsr";
44 reg = <0x1957000 0x100>;
45 qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
46 };
47
48 i2c_0: i2c@78b7000 {
49 pinctrl-0 = <&i2c_0_pins>;
50 pinctrl-names = "default";
51 status = "okay";
52
53 tpm@29 {
54 /* No Driver */
55 compatible = "atmel,at97sc3203";
56 reg = <0x29>;
57 read-only;
58 };
59 };
60 };
61
62 keys {
63 compatible = "gpio-keys";
64
65 reset {
66 label = "Reset button";
67 gpios = <&tlmm 50 GPIO_ACTIVE_LOW>;
68 linux,code = <KEY_RESTART>;
69 };
70 };
71 };
72
73 &watchdog {
74 status = "okay";
75 };
76
77 &prng {
78 status = "okay";
79 };
80
81 &crypto {
82 status = "okay";
83 };
84
85 &blsp_dma {
86 status = "okay";
87 };
88
89 &blsp1_uart1 {
90 /* Texas Instruments CC2540T BLE radio */
91 pinctrl-0 = <&serial_0_pins>;
92 pinctrl-names = "default";
93 status = "okay";
94 };
95
96 &blsp1_uart2 {
97 pinctrl-0 = <&serial_1_pins>;
98 pinctrl-names = "default";
99 status = "okay";
100 };
101
102 &cryptobam {
103 status = "okay";
104 };
105
106 &qpic_bam {
107 status = "okay";
108 };
109
110 &tlmm {
111 mdio_pins: mdio_pinmux {
112 mux_1 {
113 pins = "gpio6";
114 function = "mdio";
115 bias-pull-up;
116 };
117 mux_2 {
118 pins = "gpio7";
119 function = "mdc";
120 bias-pull-up;
121 };
122 };
123
124 nand_pins: nand_pins {
125 pullups {
126 pins = "gpio53", "gpio58", "gpio59";
127 function = "qpic";
128 bias-pull-up;
129 };
130
131 pulldowns {
132 pins = "gpio54", "gpio55", "gpio56",
133 "gpio57", "gpio60", "gpio61",
134 "gpio62", "gpio63", "gpio64",
135 "gpio65", "gpio66", "gpio67",
136 "gpio68", "gpio69";
137 function = "qpic";
138 bias-pull-down;
139 };
140 };
141
142 spi_0_pins: spi_0_pinmux {
143 pin {
144 function = "blsp_spi0";
145 pins = "gpio13", "gpio14", "gpio15";
146 drive-strength = <12>;
147 bias-disable;
148 };
149 pin_cs {
150 function = "gpio";
151 pins = "gpio12";
152 drive-strength = <2>;
153 bias-disable;
154 output-high;
155 };
156 };
157
158 i2c_0_pins: i2c_0_pinmux {
159 mux {
160 pins = "gpio10", "gpio11";
161 function = "blsp_i2c0";
162 drive-strength = <4>;
163 bias-disable;
164 };
165 };
166
167 serial_0_pins: serial_0_pinmux {
168 mux {
169 pins = "gpio16", "gpio17";
170 function = "blsp_uart0";
171 bias-disable;
172 };
173 };
174
175 serial_1_pins: serial_1_pinmux {
176 mux {
177 pins = "gpio8", "gpio9";
178 function = "blsp_uart1";
179 bias-disable;
180 };
181 };
182 };
183
184 &nand {
185 pinctrl-0 = <&nand_pins>;
186 pinctrl-names = "default";
187 status = "okay";
188
189 nand@0 {
190 partitions {
191 compatible = "fixed-partitions";
192 #address-cells = <1>;
193 #size-cells = <1>;
194
195 partition@0 {
196 /* 'aos0' in Aruba firmware */
197 label = "aos0";
198 reg = <0x0 0x2000000>;
199 read-only;
200 };
201
202 partition@2000000 {
203 /* 'aos1' in Aruba firmware */
204 label = "ubi";
205 reg = <0x2000000 0x2000000>;
206 };
207
208 partition@4000000 {
209 label = "aruba-ubifs";
210 reg = <0x4000000 0x4000000>;
211 read-only;
212 };
213 };
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 };