xref: /freebsd-src/sys/contrib/device-tree/src/arm/qcom/qcom-ipq4018-ap120c-ac.dtsi (revision aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2f126890aSEmmanuel Vadot
3f126890aSEmmanuel Vadot#include "qcom-ipq4019.dtsi"
4f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
5f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h>
6f126890aSEmmanuel Vadot
7f126890aSEmmanuel Vadot/ {
8f126890aSEmmanuel Vadot	model = "ALFA Network AP120C-AC";
9f126890aSEmmanuel Vadot	compatible = "alfa-network,ap120c-ac", "qcom,ipq4018";
10f126890aSEmmanuel Vadot
11f126890aSEmmanuel Vadot	aliases {
12f126890aSEmmanuel Vadot		serial0 = &blsp1_uart1;
13f126890aSEmmanuel Vadot	};
14f126890aSEmmanuel Vadot
15f126890aSEmmanuel Vadot	chosen {
16f126890aSEmmanuel Vadot		stdout-path = "serial0:115200n8";
17f126890aSEmmanuel Vadot	};
18f126890aSEmmanuel Vadot
19f126890aSEmmanuel Vadot	keys {
20f126890aSEmmanuel Vadot		compatible = "gpio-keys";
21f126890aSEmmanuel Vadot
22f126890aSEmmanuel Vadot		key-reset {
23f126890aSEmmanuel Vadot			label = "reset";
24f126890aSEmmanuel Vadot			gpios = <&tlmm 63 GPIO_ACTIVE_LOW>;
25f126890aSEmmanuel Vadot			linux,code = <KEY_RESTART>;
26f126890aSEmmanuel Vadot		};
27f126890aSEmmanuel Vadot	};
28f126890aSEmmanuel Vadot};
29f126890aSEmmanuel Vadot
30f126890aSEmmanuel Vadot&tlmm {
31f126890aSEmmanuel Vadot	i2c0_pins: i2c0_pinmux {
32f126890aSEmmanuel Vadot		mux_i2c {
33f126890aSEmmanuel Vadot			function = "blsp_i2c0";
34f126890aSEmmanuel Vadot			pins = "gpio58", "gpio59";
35f126890aSEmmanuel Vadot			drive-strength = <16>;
36f126890aSEmmanuel Vadot			bias-disable;
37f126890aSEmmanuel Vadot		};
38f126890aSEmmanuel Vadot	};
39f126890aSEmmanuel Vadot
40f126890aSEmmanuel Vadot	mdio_pins: mdio_pinmux {
41f126890aSEmmanuel Vadot		mux_mdio {
42f126890aSEmmanuel Vadot			pins = "gpio53";
43f126890aSEmmanuel Vadot			function = "mdio";
44f126890aSEmmanuel Vadot			bias-pull-up;
45f126890aSEmmanuel Vadot		};
46f126890aSEmmanuel Vadot
47f126890aSEmmanuel Vadot		mux_mdc {
48f126890aSEmmanuel Vadot			pins = "gpio52";
49f126890aSEmmanuel Vadot			function = "mdc";
50f126890aSEmmanuel Vadot			bias-pull-up;
51f126890aSEmmanuel Vadot		};
52f126890aSEmmanuel Vadot	};
53f126890aSEmmanuel Vadot
54f126890aSEmmanuel Vadot	serial0_pins: serial0_pinmux {
55f126890aSEmmanuel Vadot		mux_uart {
56f126890aSEmmanuel Vadot			pins = "gpio60", "gpio61";
57f126890aSEmmanuel Vadot			function = "blsp_uart0";
58f126890aSEmmanuel Vadot			bias-disable;
59f126890aSEmmanuel Vadot		};
60f126890aSEmmanuel Vadot	};
61f126890aSEmmanuel Vadot
62f126890aSEmmanuel Vadot	spi0_pins: spi0_pinmux {
63f126890aSEmmanuel Vadot		mux_spi {
64f126890aSEmmanuel Vadot			function = "blsp_spi0";
65f126890aSEmmanuel Vadot			pins = "gpio55", "gpio56", "gpio57";
66f126890aSEmmanuel Vadot			drive-strength = <12>;
67f126890aSEmmanuel Vadot			bias-disable;
68f126890aSEmmanuel Vadot		};
69f126890aSEmmanuel Vadot
70f126890aSEmmanuel Vadot		mux_cs {
71f126890aSEmmanuel Vadot			function = "gpio";
72f126890aSEmmanuel Vadot			pins = "gpio54", "gpio4";
73f126890aSEmmanuel Vadot			drive-strength = <2>;
74f126890aSEmmanuel Vadot			bias-disable;
75f126890aSEmmanuel Vadot			output-high;
76f126890aSEmmanuel Vadot		};
77f126890aSEmmanuel Vadot	};
78f126890aSEmmanuel Vadot
79f126890aSEmmanuel Vadot	usb-power-hog {
80f126890aSEmmanuel Vadot		line-name = "USB-power";
81f126890aSEmmanuel Vadot		gpios = <1 GPIO_ACTIVE_HIGH>;
82f126890aSEmmanuel Vadot		gpio-hog;
83f126890aSEmmanuel Vadot		output-high;
84f126890aSEmmanuel Vadot	};
85f126890aSEmmanuel Vadot};
86f126890aSEmmanuel Vadot
87f126890aSEmmanuel Vadot&watchdog {
88f126890aSEmmanuel Vadot	status = "okay";
89f126890aSEmmanuel Vadot};
90f126890aSEmmanuel Vadot
91f126890aSEmmanuel Vadot&prng {
92f126890aSEmmanuel Vadot	status = "okay";
93f126890aSEmmanuel Vadot};
94f126890aSEmmanuel Vadot
95f126890aSEmmanuel Vadot&blsp_dma {
96f126890aSEmmanuel Vadot	status = "okay";
97f126890aSEmmanuel Vadot};
98f126890aSEmmanuel Vadot
99f126890aSEmmanuel Vadot&blsp1_i2c3 {
100f126890aSEmmanuel Vadot	status = "okay";
101f126890aSEmmanuel Vadot
102f126890aSEmmanuel Vadot	pinctrl-0 = <&i2c0_pins>;
103f126890aSEmmanuel Vadot	pinctrl-names = "default";
104f126890aSEmmanuel Vadot
105f126890aSEmmanuel Vadot	tpm@29 {
106f126890aSEmmanuel Vadot		compatible = "atmel,at97sc3204t";
107f126890aSEmmanuel Vadot		reg = <0x29>;
108f126890aSEmmanuel Vadot	};
109f126890aSEmmanuel Vadot};
110f126890aSEmmanuel Vadot
111f126890aSEmmanuel Vadot&blsp1_spi1 {
112f126890aSEmmanuel Vadot	status = "okay";
113f126890aSEmmanuel Vadot
114f126890aSEmmanuel Vadot	pinctrl-0 = <&spi0_pins>;
115f126890aSEmmanuel Vadot	pinctrl-names = "default";
116f126890aSEmmanuel Vadot	cs-gpios = <&tlmm 54 GPIO_ACTIVE_HIGH>, <&tlmm 4 GPIO_ACTIVE_HIGH>;
117f126890aSEmmanuel Vadot
118f126890aSEmmanuel Vadot	flash@0 {
119f126890aSEmmanuel Vadot		compatible = "jedec,spi-nor";
120f126890aSEmmanuel Vadot		reg = <0>;
121f126890aSEmmanuel Vadot		spi-max-frequency = <24000000>;
122f126890aSEmmanuel Vadot
123f126890aSEmmanuel Vadot		partitions {
124f126890aSEmmanuel Vadot			compatible = "fixed-partitions";
125f126890aSEmmanuel Vadot			#address-cells = <1>;
126f126890aSEmmanuel Vadot			#size-cells = <1>;
127f126890aSEmmanuel Vadot
128f126890aSEmmanuel Vadot			partition@0 {
129f126890aSEmmanuel Vadot				label = "SBL1";
130f126890aSEmmanuel Vadot				reg = <0x00000000 0x00040000>;
131f126890aSEmmanuel Vadot				read-only;
132f126890aSEmmanuel Vadot			};
133f126890aSEmmanuel Vadot
134f126890aSEmmanuel Vadot			partition@40000 {
135f126890aSEmmanuel Vadot				label = "MIBIB";
136f126890aSEmmanuel Vadot				reg = <0x00040000 0x00020000>;
137f126890aSEmmanuel Vadot				read-only;
138f126890aSEmmanuel Vadot			};
139f126890aSEmmanuel Vadot
140f126890aSEmmanuel Vadot			partition@60000 {
141f126890aSEmmanuel Vadot				label = "QSEE";
142f126890aSEmmanuel Vadot				reg = <0x00060000 0x00060000>;
143f126890aSEmmanuel Vadot				read-only;
144f126890aSEmmanuel Vadot			};
145f126890aSEmmanuel Vadot
146f126890aSEmmanuel Vadot			partition@c0000 {
147f126890aSEmmanuel Vadot				label = "CDT";
148f126890aSEmmanuel Vadot				reg = <0x000c0000 0x00010000>;
149f126890aSEmmanuel Vadot				read-only;
150f126890aSEmmanuel Vadot			};
151f126890aSEmmanuel Vadot
152f126890aSEmmanuel Vadot			partition@d0000 {
153f126890aSEmmanuel Vadot				label = "DDRPARAMS";
154f126890aSEmmanuel Vadot				reg = <0x000d0000 0x00010000>;
155f126890aSEmmanuel Vadot				read-only;
156f126890aSEmmanuel Vadot			};
157f126890aSEmmanuel Vadot
158f126890aSEmmanuel Vadot			partition@e0000 {
159f126890aSEmmanuel Vadot				label = "u-boot-env";
160f126890aSEmmanuel Vadot				reg = <0x000e0000 0x00010000>;
161f126890aSEmmanuel Vadot			};
162f126890aSEmmanuel Vadot
163f126890aSEmmanuel Vadot			partition@f0000 {
164f126890aSEmmanuel Vadot				label = "u-boot";
165f126890aSEmmanuel Vadot				reg = <0x000f0000 0x00080000>;
166f126890aSEmmanuel Vadot				read-only;
167f126890aSEmmanuel Vadot			};
168f126890aSEmmanuel Vadot
169f126890aSEmmanuel Vadot			partition@170000 {
170f126890aSEmmanuel Vadot				label = "ART";
171f126890aSEmmanuel Vadot				reg = <0x00170000 0x00010000>;
172f126890aSEmmanuel Vadot				read-only;
173f126890aSEmmanuel Vadot				compatible = "nvmem-cells";
174f126890aSEmmanuel Vadot				#address-cells = <1>;
175f126890aSEmmanuel Vadot				#size-cells = <1>;
176f126890aSEmmanuel Vadot
177f126890aSEmmanuel Vadot				precal_art_1000: precal@1000 {
178f126890aSEmmanuel Vadot					reg = <0x1000 0x2f20>;
179f126890aSEmmanuel Vadot				};
180f126890aSEmmanuel Vadot
181f126890aSEmmanuel Vadot				precal_art_5000: precal@5000 {
182f126890aSEmmanuel Vadot					reg = <0x5000 0x2f20>;
183f126890aSEmmanuel Vadot				};
184f126890aSEmmanuel Vadot			};
185f126890aSEmmanuel Vadot
186f126890aSEmmanuel Vadot			partition@180000 {
187f126890aSEmmanuel Vadot				label = "priv_data1";
188f126890aSEmmanuel Vadot				reg = <0x00180000 0x00010000>;
189f126890aSEmmanuel Vadot				read-only;
190f126890aSEmmanuel Vadot			};
191f126890aSEmmanuel Vadot
192f126890aSEmmanuel Vadot			partition@190000 {
193f126890aSEmmanuel Vadot				label = "priv_data2";
194f126890aSEmmanuel Vadot				reg = <0x00190000 0x00010000>;
195f126890aSEmmanuel Vadot				read-only;
196f126890aSEmmanuel Vadot			};
197f126890aSEmmanuel Vadot		};
198f126890aSEmmanuel Vadot	};
199f126890aSEmmanuel Vadot
200f126890aSEmmanuel Vadot	flash@1 {
201f126890aSEmmanuel Vadot		compatible = "spi-nand";
202f126890aSEmmanuel Vadot		reg = <1>;
203f126890aSEmmanuel Vadot		spi-max-frequency = <40000000>;
204f126890aSEmmanuel Vadot
205f126890aSEmmanuel Vadot		partitions {
206f126890aSEmmanuel Vadot			compatible = "fixed-partitions";
207f126890aSEmmanuel Vadot			#address-cells = <1>;
208f126890aSEmmanuel Vadot			#size-cells = <1>;
209f126890aSEmmanuel Vadot
210f126890aSEmmanuel Vadot			partition@0 {
211f126890aSEmmanuel Vadot				label = "ubi1";
212f126890aSEmmanuel Vadot				reg = <0x00000000 0x04000000>;
213f126890aSEmmanuel Vadot			};
214f126890aSEmmanuel Vadot
215f126890aSEmmanuel Vadot			partition@4000000 {
216f126890aSEmmanuel Vadot				label = "ubi2";
217f126890aSEmmanuel Vadot				reg = <0x04000000 0x04000000>;
218f126890aSEmmanuel Vadot			};
219f126890aSEmmanuel Vadot		};
220f126890aSEmmanuel Vadot	};
221f126890aSEmmanuel Vadot};
222f126890aSEmmanuel Vadot
223f126890aSEmmanuel Vadot&blsp1_uart1 {
224f126890aSEmmanuel Vadot	status = "okay";
225f126890aSEmmanuel Vadot
226f126890aSEmmanuel Vadot	pinctrl-0 = <&serial0_pins>;
227f126890aSEmmanuel Vadot	pinctrl-names = "default";
228f126890aSEmmanuel Vadot};
229f126890aSEmmanuel Vadot
230f126890aSEmmanuel Vadot&cryptobam {
231f126890aSEmmanuel Vadot	status = "okay";
232f126890aSEmmanuel Vadot};
233f126890aSEmmanuel Vadot
234f126890aSEmmanuel Vadot&crypto {
235f126890aSEmmanuel Vadot	status = "okay";
236f126890aSEmmanuel Vadot};
237f126890aSEmmanuel Vadot
238f126890aSEmmanuel Vadot&mdio {
239f126890aSEmmanuel Vadot	status = "okay";
240f126890aSEmmanuel Vadot
241f126890aSEmmanuel Vadot	pinctrl-0 = <&mdio_pins>;
242f126890aSEmmanuel Vadot	pinctrl-names = "default";
243f126890aSEmmanuel Vadot};
244f126890aSEmmanuel Vadot
245f126890aSEmmanuel Vadot&wifi0 {
246f126890aSEmmanuel Vadot	status = "okay";
247f126890aSEmmanuel Vadot	nvmem-cell-names = "pre-calibration";
248f126890aSEmmanuel Vadot	nvmem-cells = <&precal_art_1000>;
249f126890aSEmmanuel Vadot};
250f126890aSEmmanuel Vadot
251f126890aSEmmanuel Vadot&wifi1 {
252f126890aSEmmanuel Vadot	status = "okay";
253f126890aSEmmanuel Vadot	nvmem-cell-names = "pre-calibration";
254f126890aSEmmanuel Vadot	nvmem-cells = <&precal_art_5000>;
255f126890aSEmmanuel Vadot	qcom,ath10k-calibration-variant = "ALFA-Network-AP120C-AC";
256f126890aSEmmanuel Vadot};
257f126890aSEmmanuel Vadot
258f126890aSEmmanuel Vadot&usb3_hs_phy {
259f126890aSEmmanuel Vadot	status = "okay";
260f126890aSEmmanuel Vadot};
261f126890aSEmmanuel Vadot
262f126890aSEmmanuel Vadot&usb3 {
263f126890aSEmmanuel Vadot	status = "okay";
264f126890aSEmmanuel Vadot
265*aa1a8ff2SEmmanuel Vadot	};
266*aa1a8ff2SEmmanuel Vadot
267*aa1a8ff2SEmmanuel Vadot&usb3_dwc {
268f126890aSEmmanuel Vadot	phys = <&usb3_hs_phy>;
269f126890aSEmmanuel Vadot	phy-names = "usb2-phy";
270f126890aSEmmanuel Vadot};
271f126890aSEmmanuel Vadot
272f126890aSEmmanuel Vadot&usb2_hs_phy {
273f126890aSEmmanuel Vadot	status = "okay";
274f126890aSEmmanuel Vadot};
275f126890aSEmmanuel Vadot
276f126890aSEmmanuel Vadot&usb2 {
277f126890aSEmmanuel Vadot	status = "okay";
278f126890aSEmmanuel Vadot};
279