xref: /freebsd-src/sys/contrib/device-tree/src/arm64/freescale/imx8mp-icore-mx8mp.dtsi (revision 7ef62cebc2f965b0f640263e179276928885e33d)
1d5b0e70fSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2d5b0e70fSEmmanuel Vadot/*
3d5b0e70fSEmmanuel Vadot * Copyright (c) 2018 NXP
4d5b0e70fSEmmanuel Vadot * Copyright (c) 2019 Engicam srl
5*7ef62cebSEmmanuel Vadot * Copyright (c) 2020 Amarula Solutions(India)
6d5b0e70fSEmmanuel Vadot */
7d5b0e70fSEmmanuel Vadot
8d5b0e70fSEmmanuel Vadot/ {
9d5b0e70fSEmmanuel Vadot	compatible = "engicam,icore-mx8mp", "fsl,imx8mp";
10d5b0e70fSEmmanuel Vadot};
11d5b0e70fSEmmanuel Vadot
12d5b0e70fSEmmanuel Vadot&A53_0 {
13d5b0e70fSEmmanuel Vadot	cpu-supply = <&buck2>;
14d5b0e70fSEmmanuel Vadot};
15d5b0e70fSEmmanuel Vadot
16d5b0e70fSEmmanuel Vadot&A53_1 {
17d5b0e70fSEmmanuel Vadot	cpu-supply = <&buck2>;
18d5b0e70fSEmmanuel Vadot};
19d5b0e70fSEmmanuel Vadot
20d5b0e70fSEmmanuel Vadot&A53_2 {
21d5b0e70fSEmmanuel Vadot	cpu-supply = <&buck2>;
22d5b0e70fSEmmanuel Vadot};
23d5b0e70fSEmmanuel Vadot
24d5b0e70fSEmmanuel Vadot&A53_3 {
25d5b0e70fSEmmanuel Vadot	cpu-supply = <&buck2>;
26d5b0e70fSEmmanuel Vadot};
27d5b0e70fSEmmanuel Vadot
28d5b0e70fSEmmanuel Vadot&i2c1 {
29d5b0e70fSEmmanuel Vadot	clock-frequency = <100000>;
30d5b0e70fSEmmanuel Vadot	pinctrl-names = "default";
31d5b0e70fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_i2c1>;
32d5b0e70fSEmmanuel Vadot	status = "okay";
33d5b0e70fSEmmanuel Vadot
34d5b0e70fSEmmanuel Vadot	pca9450: pmic@25 {
35d5b0e70fSEmmanuel Vadot		compatible = "nxp,pca9450c";
36d5b0e70fSEmmanuel Vadot		interrupt-parent = <&gpio3>;
37d5b0e70fSEmmanuel Vadot		interrupts = <1 IRQ_TYPE_LEVEL_LOW>;
38d5b0e70fSEmmanuel Vadot		pinctrl-names = "default";
39d5b0e70fSEmmanuel Vadot		pinctrl-0 = <&pinctrl_pmic>;
40d5b0e70fSEmmanuel Vadot		reg = <0x25>;
41d5b0e70fSEmmanuel Vadot
42d5b0e70fSEmmanuel Vadot		regulators {
43d5b0e70fSEmmanuel Vadot			buck1: BUCK1 {
44d5b0e70fSEmmanuel Vadot				regulator-always-on;
45d5b0e70fSEmmanuel Vadot				regulator-boot-on;
46d5b0e70fSEmmanuel Vadot				regulator-min-microvolt = <720000>;
47d5b0e70fSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
48d5b0e70fSEmmanuel Vadot				regulator-name = "BUCK1";
49d5b0e70fSEmmanuel Vadot				regulator-ramp-delay = <3125>;
50d5b0e70fSEmmanuel Vadot			};
51d5b0e70fSEmmanuel Vadot
52d5b0e70fSEmmanuel Vadot			buck2: BUCK2  {
53d5b0e70fSEmmanuel Vadot				nxp,dvs-run-voltage = <950000>;
54d5b0e70fSEmmanuel Vadot				nxp,dvs-standby-voltage = <850000>;
55d5b0e70fSEmmanuel Vadot				regulator-always-on;
56d5b0e70fSEmmanuel Vadot				regulator-boot-on;
57d5b0e70fSEmmanuel Vadot				regulator-max-microvolt = <1025000>;
58d5b0e70fSEmmanuel Vadot				regulator-min-microvolt = <720000>;
59d5b0e70fSEmmanuel Vadot				regulator-name = "BUCK2";
60d5b0e70fSEmmanuel Vadot				regulator-ramp-delay = <3125>;
61d5b0e70fSEmmanuel Vadot			};
62d5b0e70fSEmmanuel Vadot
63d5b0e70fSEmmanuel Vadot			buck4: BUCK4 {
64d5b0e70fSEmmanuel Vadot				regulator-always-on;
65d5b0e70fSEmmanuel Vadot				regulator-boot-on;
66d5b0e70fSEmmanuel Vadot				regulator-max-microvolt = <3600000>;
67d5b0e70fSEmmanuel Vadot				regulator-min-microvolt = <3000000>;
68d5b0e70fSEmmanuel Vadot				regulator-name = "BUCK4";
69d5b0e70fSEmmanuel Vadot			};
70d5b0e70fSEmmanuel Vadot
71d5b0e70fSEmmanuel Vadot			buck5: BUCK5 {
72d5b0e70fSEmmanuel Vadot				regulator-always-on;
73d5b0e70fSEmmanuel Vadot				regulator-boot-on;
74d5b0e70fSEmmanuel Vadot				regulator-max-microvolt = <1950000>;
75d5b0e70fSEmmanuel Vadot				regulator-min-microvolt = <1650000>;
76d5b0e70fSEmmanuel Vadot				regulator-name = "BUCK5";
77d5b0e70fSEmmanuel Vadot			};
78d5b0e70fSEmmanuel Vadot
79d5b0e70fSEmmanuel Vadot			buck6: BUCK6 {
80d5b0e70fSEmmanuel Vadot				regulator-always-on;
81d5b0e70fSEmmanuel Vadot				regulator-boot-on;
82d5b0e70fSEmmanuel Vadot				regulator-max-microvolt = <1155000>;
83d5b0e70fSEmmanuel Vadot				regulator-min-microvolt = <1045000>;
84d5b0e70fSEmmanuel Vadot				regulator-name = "BUCK6";
85d5b0e70fSEmmanuel Vadot			};
86d5b0e70fSEmmanuel Vadot
87d5b0e70fSEmmanuel Vadot			ldo1: LDO1 {
88d5b0e70fSEmmanuel Vadot				regulator-always-on;
89d5b0e70fSEmmanuel Vadot				regulator-boot-on;
90d5b0e70fSEmmanuel Vadot				regulator-max-microvolt = <1950000>;
91d5b0e70fSEmmanuel Vadot				regulator-min-microvolt = <1650000>;
92d5b0e70fSEmmanuel Vadot				regulator-name = "LDO1";
93d5b0e70fSEmmanuel Vadot			};
94d5b0e70fSEmmanuel Vadot
95d5b0e70fSEmmanuel Vadot			ldo3: LDO3 {
96d5b0e70fSEmmanuel Vadot				regulator-always-on;
97d5b0e70fSEmmanuel Vadot				regulator-boot-on;
98d5b0e70fSEmmanuel Vadot				regulator-max-microvolt = <1890000>;
99d5b0e70fSEmmanuel Vadot				regulator-min-microvolt = <1710000>;
100d5b0e70fSEmmanuel Vadot				regulator-name = "LDO3";
101d5b0e70fSEmmanuel Vadot			};
102d5b0e70fSEmmanuel Vadot
103d5b0e70fSEmmanuel Vadot			ldo5: LDO5 {
104d5b0e70fSEmmanuel Vadot				regulator-always-on;
105d5b0e70fSEmmanuel Vadot				regulator-boot-on;
106d5b0e70fSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
107d5b0e70fSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
108d5b0e70fSEmmanuel Vadot				regulator-name = "LDO5";
109d5b0e70fSEmmanuel Vadot			};
110d5b0e70fSEmmanuel Vadot		};
111d5b0e70fSEmmanuel Vadot	};
112d5b0e70fSEmmanuel Vadot};
113d5b0e70fSEmmanuel Vadot
114d5b0e70fSEmmanuel Vadot/* EMMC */
115d5b0e70fSEmmanuel Vadot&usdhc3 {
116d5b0e70fSEmmanuel Vadot	bus-width = <8>;
117d5b0e70fSEmmanuel Vadot	non-removable;
118d5b0e70fSEmmanuel Vadot	pinctrl-names = "default", "state_100mhz", "state_200mhz";
119d5b0e70fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_usdhc3>;
120d5b0e70fSEmmanuel Vadot	pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
121d5b0e70fSEmmanuel Vadot	pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
122d5b0e70fSEmmanuel Vadot	status = "okay";
123d5b0e70fSEmmanuel Vadot};
124d5b0e70fSEmmanuel Vadot
125d5b0e70fSEmmanuel Vadot&iomuxc {
126d5b0e70fSEmmanuel Vadot	pinctrl_i2c1: i2c1grp {
127d5b0e70fSEmmanuel Vadot		fsl,pins = <
128d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_I2C1_SCL__I2C1_SCL		0x400001c3
129d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_I2C1_SDA__I2C1_SDA		0x400001c3
130d5b0e70fSEmmanuel Vadot		>;
131d5b0e70fSEmmanuel Vadot	};
132d5b0e70fSEmmanuel Vadot
133d5b0e70fSEmmanuel Vadot	pinctrl_pmic: pmicgrp {
134d5b0e70fSEmmanuel Vadot		fsl,pins = <
135d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_CE0_B__GPIO3_IO01	  0x41
136d5b0e70fSEmmanuel Vadot		>;
137d5b0e70fSEmmanuel Vadot	};
138d5b0e70fSEmmanuel Vadot
139d5b0e70fSEmmanuel Vadot	pinctrl_usdhc3: usdhc3grp {
140d5b0e70fSEmmanuel Vadot		fsl,pins = <
141d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK	0x190
142d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD	0x1d0
143d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0	0x1d0
144d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1	0x1d0
145d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2	0x1d0
146d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3	0x1d0
147d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4	0x1d0
148d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5	0x1d0
149d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6	0x1d0
150d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7	0x1d0
151d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE	0x190
152d5b0e70fSEmmanuel Vadot		>;
153d5b0e70fSEmmanuel Vadot	};
154d5b0e70fSEmmanuel Vadot
155d5b0e70fSEmmanuel Vadot	pinctrl_usdhc3_100mhz: usdhc3-100mhzgrp {
156d5b0e70fSEmmanuel Vadot		fsl,pins = <
157d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK	0x194
158d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD	0x1d4
159d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0	0x1d4
160d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1	0x1d4
161d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2	0x1d4
162d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3	0x1d4
163d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4	0x1d4
164d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5	0x1d4
165d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6	0x1d4
166d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7	0x1d4
167d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE	0x194
168d5b0e70fSEmmanuel Vadot		>;
169d5b0e70fSEmmanuel Vadot	};
170d5b0e70fSEmmanuel Vadot
171d5b0e70fSEmmanuel Vadot	pinctrl_usdhc3_200mhz: usdhc3-200mhzgrp {
172d5b0e70fSEmmanuel Vadot		fsl,pins = <
173d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK	0x196
174d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD	0x1d6
175d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0	0x1d6
176d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1	0x1d6
177d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2	0x1d6
178d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3	0x1d6
179d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4	0x1d6
180d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5	0x1d6
181d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6	0x1d6
182d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7	0x1d6
183d5b0e70fSEmmanuel Vadot			MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE	0x196
184d5b0e70fSEmmanuel Vadot		>;
185d5b0e70fSEmmanuel Vadot	};
186d5b0e70fSEmmanuel Vadot};
187