xref: /linux/scripts/dtc/include-prefixes/arm/nxp/imx/imx7-tqma7.dtsi (revision c3daa6513e2ea2a4daa82f5fc886c1f0d44833a6)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0 OR X11
2724ba675SRob Herring/*
3724ba675SRob Herring * Device Tree Include file for TQ-Systems TQMa7x boards with full mounted PCB.
4724ba675SRob Herring *
5724ba675SRob Herring * Copyright (C) 2016 TQ-Systems GmbH
6724ba675SRob Herring * Author: Markus Niebel <Markus.Niebel@tq-group.com>
7724ba675SRob Herring * Copyright (C) 2019 Bruno Thomsen <bruno.thomsen@gmail.com>
8724ba675SRob Herring */
9724ba675SRob Herring
10724ba675SRob Herring/ {
11724ba675SRob Herring	memory@80000000 {
12724ba675SRob Herring		device_type = "memory";
13724ba675SRob Herring		/* 512 MB - default configuration */
14724ba675SRob Herring		reg = <0x80000000 0x20000000>;
15724ba675SRob Herring	};
16724ba675SRob Herring};
17724ba675SRob Herring
18724ba675SRob Herring&cpu0 {
19724ba675SRob Herring	cpu-supply = <&sw1a_reg>;
20724ba675SRob Herring};
21724ba675SRob Herring
22724ba675SRob Herring&gpio2 {
23724ba675SRob Herring	/* Configured as pullup by QSPI pin group */
24724ba675SRob Herring	qspi-reset-hog {
25724ba675SRob Herring		gpio-hog;
26724ba675SRob Herring		gpios = <4 GPIO_ACTIVE_LOW>;
27724ba675SRob Herring		input;
28724ba675SRob Herring		line-name = "qspi-reset";
29724ba675SRob Herring	};
30724ba675SRob Herring};
31724ba675SRob Herring
32724ba675SRob Herring&i2c1 {
33908bfeb6SAlexander Stein	pinctrl-names = "default", "gpio";
34724ba675SRob Herring	pinctrl-0 = <&pinctrl_i2c1>;
35908bfeb6SAlexander Stein	pinctrl-1 = <&pinctrl_i2c1_recovery>;
36908bfeb6SAlexander Stein	scl-gpios = <&gpio4 8 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
37908bfeb6SAlexander Stein	sda-gpios = <&gpio4 9 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
38724ba675SRob Herring	clock-frequency = <100000>;
39724ba675SRob Herring	status = "okay";
40724ba675SRob Herring
41724ba675SRob Herring	pfuze3000: pmic@8 {
42724ba675SRob Herring		pinctrl-names = "default";
43724ba675SRob Herring		pinctrl-0 = <&pinctrl_pmic1>;
44724ba675SRob Herring		compatible = "fsl,pfuze3000";
45724ba675SRob Herring		reg = <0x08>;
46724ba675SRob Herring
47724ba675SRob Herring		regulators {
48724ba675SRob Herring			sw1a_reg: sw1a {
49724ba675SRob Herring				regulator-min-microvolt = <700000>;
50724ba675SRob Herring				regulator-max-microvolt = <3300000>;
51724ba675SRob Herring				regulator-boot-on;
52724ba675SRob Herring				regulator-always-on;
53724ba675SRob Herring				regulator-ramp-delay = <6250>;
54724ba675SRob Herring			};
55724ba675SRob Herring
56724ba675SRob Herring			/* use sw1c_reg to align with pfuze100/pfuze200 */
57724ba675SRob Herring			sw1c_reg: sw1b {
58724ba675SRob Herring				regulator-min-microvolt = <700000>;
59724ba675SRob Herring				regulator-max-microvolt = <1475000>;
60724ba675SRob Herring				regulator-boot-on;
61724ba675SRob Herring				regulator-always-on;
62724ba675SRob Herring				regulator-ramp-delay = <6250>;
63724ba675SRob Herring			};
64724ba675SRob Herring
65724ba675SRob Herring			sw2_reg: sw2 {
66724ba675SRob Herring				regulator-min-microvolt = <1500000>;
67724ba675SRob Herring				regulator-max-microvolt = <1850000>;
68724ba675SRob Herring				regulator-boot-on;
69724ba675SRob Herring				regulator-always-on;
70724ba675SRob Herring			};
71724ba675SRob Herring
72724ba675SRob Herring			sw3a_reg: sw3 {
73724ba675SRob Herring				regulator-min-microvolt = <900000>;
74724ba675SRob Herring				regulator-max-microvolt = <1650000>;
75724ba675SRob Herring				regulator-boot-on;
76724ba675SRob Herring				regulator-always-on;
77724ba675SRob Herring			};
78724ba675SRob Herring
79724ba675SRob Herring			swbst_reg: swbst {
80724ba675SRob Herring				regulator-min-microvolt = <5000000>;
81724ba675SRob Herring				regulator-max-microvolt = <5150000>;
82724ba675SRob Herring			};
83724ba675SRob Herring
84724ba675SRob Herring			snvs_reg: vsnvs {
85724ba675SRob Herring				regulator-min-microvolt = <1000000>;
86724ba675SRob Herring				regulator-max-microvolt = <3000000>;
87724ba675SRob Herring				regulator-boot-on;
88724ba675SRob Herring				regulator-always-on;
89724ba675SRob Herring			};
90724ba675SRob Herring
91724ba675SRob Herring			vref_reg: vrefddr {
92724ba675SRob Herring				regulator-boot-on;
93724ba675SRob Herring				regulator-always-on;
94724ba675SRob Herring			};
95724ba675SRob Herring
96724ba675SRob Herring			vgen1_reg: vldo1 {
97724ba675SRob Herring				regulator-min-microvolt = <1800000>;
98724ba675SRob Herring				regulator-max-microvolt = <3300000>;
99724ba675SRob Herring				regulator-always-on;
100724ba675SRob Herring			};
101724ba675SRob Herring
102724ba675SRob Herring			vgen2_reg: vldo2 {
103724ba675SRob Herring				regulator-min-microvolt = <800000>;
104724ba675SRob Herring				regulator-max-microvolt = <1550000>;
105724ba675SRob Herring				regulator-always-on;
106724ba675SRob Herring			};
107724ba675SRob Herring
108724ba675SRob Herring			vgen3_reg: vccsd {
109724ba675SRob Herring				regulator-min-microvolt = <2850000>;
110724ba675SRob Herring				regulator-max-microvolt = <3300000>;
111724ba675SRob Herring				regulator-always-on;
112724ba675SRob Herring			};
113724ba675SRob Herring
114724ba675SRob Herring			vgen4_reg: v33 {
115724ba675SRob Herring				regulator-min-microvolt = <2850000>;
116724ba675SRob Herring				regulator-max-microvolt = <3300000>;
117724ba675SRob Herring				regulator-always-on;
118724ba675SRob Herring			};
119724ba675SRob Herring
120724ba675SRob Herring			vgen5_reg: vldo3 {
121724ba675SRob Herring				regulator-min-microvolt = <1800000>;
122724ba675SRob Herring				regulator-max-microvolt = <3300000>;
123724ba675SRob Herring				regulator-always-on;
124724ba675SRob Herring			};
125724ba675SRob Herring
126724ba675SRob Herring			vgen6_reg: vldo4 {
127724ba675SRob Herring				regulator-min-microvolt = <1800000>;
128724ba675SRob Herring				regulator-max-microvolt = <3300000>;
129724ba675SRob Herring				regulator-always-on;
130724ba675SRob Herring			};
131724ba675SRob Herring		};
132724ba675SRob Herring	};
133724ba675SRob Herring
134c9d4affbSJoão Rodrigues	/* LM75A temperature sensor, TQMa7x 01xx */
135c9d4affbSJoão Rodrigues	lm75a: temperature-sensor@48 {
136c9d4affbSJoão Rodrigues		compatible = "national,lm75a";
137c9d4affbSJoão Rodrigues		reg = <0x48>;
138c9d4affbSJoão Rodrigues	};
139c9d4affbSJoão Rodrigues
140c9d4affbSJoão Rodrigues	/* NXP SE97BTP with temperature sensor + eeprom, TQMa7x 02xx */
141724ba675SRob Herring	se97b: temperature-sensor-eeprom@1e {
142724ba675SRob Herring		compatible = "nxp,se97b", "jedec,jc-42.4-temp";
143724ba675SRob Herring		reg = <0x1e>;
144724ba675SRob Herring	};
145724ba675SRob Herring
146724ba675SRob Herring	/* ST M24C64 */
147724ba675SRob Herring	m24c64: eeprom@50 {
148724ba675SRob Herring		compatible = "atmel,24c64";
149*c3daa651SAlexander Stein		read-only;
150724ba675SRob Herring		reg = <0x50>;
151724ba675SRob Herring		pagesize = <32>;
152724ba675SRob Herring		status = "okay";
153724ba675SRob Herring	};
154724ba675SRob Herring
155724ba675SRob Herring	at24c02: eeprom@56 {
156c4d9a26bSAlexander Stein		compatible = "nxp,se97b", "atmel,24c02";
157724ba675SRob Herring		reg = <0x56>;
158724ba675SRob Herring		pagesize = <16>;
159724ba675SRob Herring		status = "okay";
160724ba675SRob Herring	};
161724ba675SRob Herring
162724ba675SRob Herring	ds1339: rtc@68 {
163724ba675SRob Herring		compatible = "dallas,ds1339";
164724ba675SRob Herring		reg = <0x68>;
165724ba675SRob Herring	};
166724ba675SRob Herring};
167724ba675SRob Herring
168724ba675SRob Herring&iomuxc {
169724ba675SRob Herring	pinctrl_i2c1: i2c1grp {
170e67e40cfSAlexander Stein		fsl,pins =
171e67e40cfSAlexander Stein			<MX7D_PAD_I2C1_SDA__I2C1_SDA	0x40000078>,
172e67e40cfSAlexander Stein			<MX7D_PAD_I2C1_SCL__I2C1_SCL	0x40000078>;
173724ba675SRob Herring	};
174724ba675SRob Herring
175908bfeb6SAlexander Stein	pinctrl_i2c1_recovery: i2c1recoverygrp {
176908bfeb6SAlexander Stein		fsl,pins =
177908bfeb6SAlexander Stein			<MX7D_PAD_I2C1_SDA__GPIO4_IO9	0x40000078>,
178908bfeb6SAlexander Stein			<MX7D_PAD_I2C1_SCL__GPIO4_IO8	0x40000078>;
179908bfeb6SAlexander Stein	};
180908bfeb6SAlexander Stein
181724ba675SRob Herring	pinctrl_pmic1: pmic1grp {
182e67e40cfSAlexander Stein		fsl,pins =
183e67e40cfSAlexander Stein			<MX7D_PAD_SD2_RESET_B__GPIO5_IO11	0x4000005C>;
184724ba675SRob Herring	};
185724ba675SRob Herring
186724ba675SRob Herring	pinctrl_qspi: qspigrp {
187e67e40cfSAlexander Stein		fsl,pins =
188e67e40cfSAlexander Stein			<MX7D_PAD_EPDC_DATA00__QSPI_A_DATA0	0x5A>,
189e67e40cfSAlexander Stein			<MX7D_PAD_EPDC_DATA01__QSPI_A_DATA1	0x5A>,
190e67e40cfSAlexander Stein			<MX7D_PAD_EPDC_DATA02__QSPI_A_DATA2	0x5A>,
191e67e40cfSAlexander Stein			<MX7D_PAD_EPDC_DATA03__QSPI_A_DATA3	0x5A>,
192e67e40cfSAlexander Stein			<MX7D_PAD_EPDC_DATA05__QSPI_A_SCLK	0x11>,
193e67e40cfSAlexander Stein			<MX7D_PAD_EPDC_DATA06__QSPI_A_SS0_B	0x54>,
194e67e40cfSAlexander Stein			<MX7D_PAD_EPDC_DATA07__QSPI_A_SS1_B	0x54>;
195724ba675SRob Herring	};
196724ba675SRob Herring
197724ba675SRob Herring	pinctrl_qspi_reset: qspi_resetgrp {
198e67e40cfSAlexander Stein		fsl,pins =
199724ba675SRob Herring			/* #QSPI_RESET */
200e67e40cfSAlexander Stein			<MX7D_PAD_EPDC_DATA04__GPIO2_IO4	0x52>;
201724ba675SRob Herring	};
202724ba675SRob Herring
203724ba675SRob Herring	pinctrl_usdhc3: usdhc3grp {
204e67e40cfSAlexander Stein		fsl,pins =
205e67e40cfSAlexander Stein			<MX7D_PAD_SD3_CMD__SD3_CMD		0x59>,
206e67e40cfSAlexander Stein			<MX7D_PAD_SD3_CLK__SD3_CLK		0x56>,
207e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA0__SD3_DATA0		0x59>,
208e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA1__SD3_DATA1		0x59>,
209e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA2__SD3_DATA2		0x59>,
210e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA3__SD3_DATA3		0x59>,
211e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA4__SD3_DATA4		0x59>,
212e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA5__SD3_DATA5		0x59>,
213e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA6__SD3_DATA6		0x59>,
214e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA7__SD3_DATA7		0x59>,
215e67e40cfSAlexander Stein			<MX7D_PAD_SD3_STROBE__SD3_STROBE	0x19>;
216724ba675SRob Herring	};
217724ba675SRob Herring
218e7073f96SAlexander Stein	pinctrl_usdhc3_100mhz: usdhc3_100mhzgrp {
219e67e40cfSAlexander Stein		fsl,pins =
220e67e40cfSAlexander Stein			<MX7D_PAD_SD3_CMD__SD3_CMD               0x5a>,
221e67e40cfSAlexander Stein			<MX7D_PAD_SD3_CLK__SD3_CLK               0x51>,
222e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA0__SD3_DATA0           0x5a>,
223e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA1__SD3_DATA1           0x5a>,
224e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA2__SD3_DATA2           0x5a>,
225e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA3__SD3_DATA3           0x5a>,
226e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA4__SD3_DATA4           0x5a>,
227e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA5__SD3_DATA5           0x5a>,
228e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA6__SD3_DATA6           0x5a>,
229e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA7__SD3_DATA7           0x5a>,
230e67e40cfSAlexander Stein			<MX7D_PAD_SD3_STROBE__SD3_STROBE         0x1a>;
231724ba675SRob Herring	};
232724ba675SRob Herring
233e7073f96SAlexander Stein	pinctrl_usdhc3_200mhz: usdhc3_200mhzgrp {
234e67e40cfSAlexander Stein		fsl,pins =
235e67e40cfSAlexander Stein			<MX7D_PAD_SD3_CMD__SD3_CMD               0x5b>,
236e67e40cfSAlexander Stein			<MX7D_PAD_SD3_CLK__SD3_CLK               0x51>,
237e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA0__SD3_DATA0           0x5b>,
238e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA1__SD3_DATA1           0x5b>,
239e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA2__SD3_DATA2           0x5b>,
240e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA3__SD3_DATA3           0x5b>,
241e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA4__SD3_DATA4           0x5b>,
242e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA5__SD3_DATA5           0x5b>,
243e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA6__SD3_DATA6           0x5b>,
244e67e40cfSAlexander Stein			<MX7D_PAD_SD3_DATA7__SD3_DATA7           0x5b>,
245e67e40cfSAlexander Stein			<MX7D_PAD_SD3_STROBE__SD3_STROBE         0x1b>;
246724ba675SRob Herring	};
247724ba675SRob Herring};
248724ba675SRob Herring
249724ba675SRob Herring&iomuxc_lpsr {
250724ba675SRob Herring	pinctrl_wdog1: wdog1grp {
251e67e40cfSAlexander Stein		fsl,pins =
252e67e40cfSAlexander Stein			<MX7D_PAD_LPSR_GPIO1_IO00__WDOG1_WDOG_B	0x30>;
253724ba675SRob Herring	};
254724ba675SRob Herring};
255724ba675SRob Herring
256724ba675SRob Herring&qspi {
257724ba675SRob Herring	pinctrl-names = "default";
258724ba675SRob Herring	pinctrl-0 = <&pinctrl_qspi &pinctrl_qspi_reset>;
259724ba675SRob Herring	status = "okay";
260724ba675SRob Herring
261724ba675SRob Herring	flash0: flash@0 {
262724ba675SRob Herring		compatible = "jedec,spi-nor";
263724ba675SRob Herring		reg = <0>;
264724ba675SRob Herring		spi-max-frequency = <29000000>;
265724ba675SRob Herring		spi-rx-bus-width = <4>;
266724ba675SRob Herring		spi-tx-bus-width = <4>;
267724ba675SRob Herring	};
268724ba675SRob Herring};
269724ba675SRob Herring
270724ba675SRob Herring&usdhc3 {
271724ba675SRob Herring	pinctrl-names = "default", "state_100mhz", "state_200mhz";
272724ba675SRob Herring	pinctrl-0 = <&pinctrl_usdhc3>;
273724ba675SRob Herring	pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
274724ba675SRob Herring	pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
275724ba675SRob Herring	assigned-clocks = <&clks IMX7D_USDHC3_ROOT_CLK>;
276724ba675SRob Herring	assigned-clock-rates = <400000000>;
277724ba675SRob Herring	bus-width = <8>;
278724ba675SRob Herring	non-removable;
279e498d366SAlexander Stein	no-sd;
280e498d366SAlexander Stein	no-sdio;
281724ba675SRob Herring	vmmc-supply = <&vgen4_reg>;
282724ba675SRob Herring	vqmmc-supply = <&sw2_reg>;
283724ba675SRob Herring	status = "okay";
284724ba675SRob Herring};
285724ba675SRob Herring
286724ba675SRob Herring&wdog1 {
287724ba675SRob Herring	pinctrl-names = "default";
288724ba675SRob Herring	pinctrl-0 = <&pinctrl_wdog1>;
289724ba675SRob Herring	/*
290724ba675SRob Herring	 * Errata e10574:
291724ba675SRob Herring	 * WDOG reset needs to run with WDOG_RESET_B signal enabled.
292724ba675SRob Herring	 * X1-51 (WDOG1#) signal needs carrier board handling to reset
293724ba675SRob Herring	 * TQMa7 on X1-22 (RESET_IN#).
294724ba675SRob Herring	 */
295724ba675SRob Herring	fsl,ext-reset-output;
296724ba675SRob Herring	status = "okay";
297724ba675SRob Herring};
298