xref: /freebsd/sys/contrib/device-tree/src/arm64/ti/k3-am62-pocketbeagle2.dts (revision ae5de77ed78ae54d86cead5604869212e8008e6b)
1*ae5de77eSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only OR MIT
2*ae5de77eSEmmanuel Vadot/*
3*ae5de77eSEmmanuel Vadot * https://www.beagleboard.org/boards/pocketbeagle-2
4*ae5de77eSEmmanuel Vadot *
5*ae5de77eSEmmanuel Vadot * Copyright (C) 2025 Texas Instruments Incorporated - https://www.ti.com/
6*ae5de77eSEmmanuel Vadot * Copyright (C) 2025 Robert Nelson, BeagleBoard.org Foundation
7*ae5de77eSEmmanuel Vadot */
8*ae5de77eSEmmanuel Vadot
9*ae5de77eSEmmanuel Vadot/dts-v1/;
10*ae5de77eSEmmanuel Vadot
11*ae5de77eSEmmanuel Vadot#include <dt-bindings/leds/common.h>
12*ae5de77eSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
13*ae5de77eSEmmanuel Vadot#include <dt-bindings/input/input.h>
14*ae5de77eSEmmanuel Vadot#include "k3-am625.dtsi"
15*ae5de77eSEmmanuel Vadot
16*ae5de77eSEmmanuel Vadot/ {
17*ae5de77eSEmmanuel Vadot	compatible = "beagle,am62-pocketbeagle2", "ti,am625";
18*ae5de77eSEmmanuel Vadot	model = "BeagleBoard.org PocketBeagle2";
19*ae5de77eSEmmanuel Vadot
20*ae5de77eSEmmanuel Vadot	aliases {
21*ae5de77eSEmmanuel Vadot		serial0 = &wkup_uart0;
22*ae5de77eSEmmanuel Vadot		serial1 = &main_uart1;
23*ae5de77eSEmmanuel Vadot		serial2 = &main_uart6;
24*ae5de77eSEmmanuel Vadot		serial3 = &main_uart0;
25*ae5de77eSEmmanuel Vadot		mmc1 = &sdhci1;
26*ae5de77eSEmmanuel Vadot		usb0 = &usb0;
27*ae5de77eSEmmanuel Vadot		usb1 = &usb1;
28*ae5de77eSEmmanuel Vadot		i2c0 = &main_i2c0;
29*ae5de77eSEmmanuel Vadot		i2c2 = &main_i2c2;
30*ae5de77eSEmmanuel Vadot		i2c3 = &wkup_i2c0;
31*ae5de77eSEmmanuel Vadot	};
32*ae5de77eSEmmanuel Vadot
33*ae5de77eSEmmanuel Vadot	chosen {
34*ae5de77eSEmmanuel Vadot		stdout-path = &main_uart6;
35*ae5de77eSEmmanuel Vadot	};
36*ae5de77eSEmmanuel Vadot
37*ae5de77eSEmmanuel Vadot	memory@80000000 {
38*ae5de77eSEmmanuel Vadot		/* 512MB RAM */
39*ae5de77eSEmmanuel Vadot		reg = <0x00000000 0x80000000 0x00000000 0x20000000>;
40*ae5de77eSEmmanuel Vadot		device_type = "memory";
41*ae5de77eSEmmanuel Vadot		bootph-pre-ram;
42*ae5de77eSEmmanuel Vadot	};
43*ae5de77eSEmmanuel Vadot
44*ae5de77eSEmmanuel Vadot	reserved_memory: reserved-memory {
45*ae5de77eSEmmanuel Vadot		#address-cells = <2>;
46*ae5de77eSEmmanuel Vadot		#size-cells = <2>;
47*ae5de77eSEmmanuel Vadot		ranges;
48*ae5de77eSEmmanuel Vadot
49*ae5de77eSEmmanuel Vadot		/* global cma region */
50*ae5de77eSEmmanuel Vadot		linux,cma {
51*ae5de77eSEmmanuel Vadot			compatible = "shared-dma-pool";
52*ae5de77eSEmmanuel Vadot			reusable;
53*ae5de77eSEmmanuel Vadot			size = <0x00 0x8000000>;
54*ae5de77eSEmmanuel Vadot			linux,cma-default;
55*ae5de77eSEmmanuel Vadot		};
56*ae5de77eSEmmanuel Vadot
57*ae5de77eSEmmanuel Vadot		mcu_m4fss_dma_memory_region: m4f-dma-memory@9cb00000 {
58*ae5de77eSEmmanuel Vadot			compatible = "shared-dma-pool";
59*ae5de77eSEmmanuel Vadot			reg = <0x00 0x9cb00000 0x00 0x100000>;
60*ae5de77eSEmmanuel Vadot			no-map;
61*ae5de77eSEmmanuel Vadot		};
62*ae5de77eSEmmanuel Vadot
63*ae5de77eSEmmanuel Vadot		mcu_m4fss_memory_region: m4f-memory@9cc00000 {
64*ae5de77eSEmmanuel Vadot			compatible = "shared-dma-pool";
65*ae5de77eSEmmanuel Vadot			reg = <0x00 0x9cc00000 0x00 0xe00000>;
66*ae5de77eSEmmanuel Vadot			no-map;
67*ae5de77eSEmmanuel Vadot		};
68*ae5de77eSEmmanuel Vadot
69*ae5de77eSEmmanuel Vadot		secure_tfa_ddr: tfa@9e780000 {
70*ae5de77eSEmmanuel Vadot			reg = <0x00 0x9e780000 0x00 0x80000>;
71*ae5de77eSEmmanuel Vadot			alignment = <0x1000>;
72*ae5de77eSEmmanuel Vadot			no-map;
73*ae5de77eSEmmanuel Vadot		};
74*ae5de77eSEmmanuel Vadot
75*ae5de77eSEmmanuel Vadot		secure_ddr: optee@9e800000 {
76*ae5de77eSEmmanuel Vadot			reg = <0x00 0x9e800000 0x00 0x01800000>;
77*ae5de77eSEmmanuel Vadot			alignment = <0x1000>;
78*ae5de77eSEmmanuel Vadot			no-map;
79*ae5de77eSEmmanuel Vadot		};
80*ae5de77eSEmmanuel Vadot
81*ae5de77eSEmmanuel Vadot		wkup_r5fss0_core0_dma_memory_region: r5f-dma-memory@9db00000 {
82*ae5de77eSEmmanuel Vadot			compatible = "shared-dma-pool";
83*ae5de77eSEmmanuel Vadot			reg = <0x00 0x9db00000 0x00 0xc00000>;
84*ae5de77eSEmmanuel Vadot			no-map;
85*ae5de77eSEmmanuel Vadot		};
86*ae5de77eSEmmanuel Vadot	};
87*ae5de77eSEmmanuel Vadot
88*ae5de77eSEmmanuel Vadot	vsys_5v0: regulator-1 {
89*ae5de77eSEmmanuel Vadot		compatible = "regulator-fixed";
90*ae5de77eSEmmanuel Vadot		regulator-name = "vsys_5v0";
91*ae5de77eSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
92*ae5de77eSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
93*ae5de77eSEmmanuel Vadot		regulator-always-on;
94*ae5de77eSEmmanuel Vadot		regulator-boot-on;
95*ae5de77eSEmmanuel Vadot		bootph-all;
96*ae5de77eSEmmanuel Vadot	};
97*ae5de77eSEmmanuel Vadot
98*ae5de77eSEmmanuel Vadot	vdd_3v3: regulator-2 {
99*ae5de77eSEmmanuel Vadot		compatible = "regulator-fixed";
100*ae5de77eSEmmanuel Vadot		regulator-name = "vdd_3v3";
101*ae5de77eSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
102*ae5de77eSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
103*ae5de77eSEmmanuel Vadot		vin-supply = <&vsys_5v0>;
104*ae5de77eSEmmanuel Vadot		regulator-always-on;
105*ae5de77eSEmmanuel Vadot		regulator-boot-on;
106*ae5de77eSEmmanuel Vadot		bootph-all;
107*ae5de77eSEmmanuel Vadot	};
108*ae5de77eSEmmanuel Vadot
109*ae5de77eSEmmanuel Vadot	vdd_mmc1: regulator-3 {
110*ae5de77eSEmmanuel Vadot		compatible = "regulator-fixed";
111*ae5de77eSEmmanuel Vadot		regulator-name = "vdd_mmc1";
112*ae5de77eSEmmanuel Vadot		pinctrl-names = "default";
113*ae5de77eSEmmanuel Vadot		pinctrl-0 = <&vdd_3v3_sd_pins_default>;
114*ae5de77eSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
115*ae5de77eSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
116*ae5de77eSEmmanuel Vadot		regulator-boot-on;
117*ae5de77eSEmmanuel Vadot		enable-active-high;
118*ae5de77eSEmmanuel Vadot		regulator-always-on;
119*ae5de77eSEmmanuel Vadot		vin-supply = <&vdd_3v3>;
120*ae5de77eSEmmanuel Vadot		gpio = <&main_gpio0 0 GPIO_ACTIVE_HIGH>;
121*ae5de77eSEmmanuel Vadot		bootph-all;
122*ae5de77eSEmmanuel Vadot	};
123*ae5de77eSEmmanuel Vadot
124*ae5de77eSEmmanuel Vadot	vdd_sd_dv: regulator-4 {
125*ae5de77eSEmmanuel Vadot		compatible = "regulator-gpio";
126*ae5de77eSEmmanuel Vadot		regulator-name = "sd_hs200_switch";
127*ae5de77eSEmmanuel Vadot		pinctrl-names = "default";
128*ae5de77eSEmmanuel Vadot		pinctrl-0 = <&vdd_sd_dv_pins_default>;
129*ae5de77eSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
130*ae5de77eSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
131*ae5de77eSEmmanuel Vadot		regulator-boot-on;
132*ae5de77eSEmmanuel Vadot		vin-supply = <&vdd_3v3>;
133*ae5de77eSEmmanuel Vadot		gpios = <&main_gpio1 49 GPIO_ACTIVE_HIGH>;
134*ae5de77eSEmmanuel Vadot		states = <1800000 0x0>,
135*ae5de77eSEmmanuel Vadot			 <3300000 0x1>;
136*ae5de77eSEmmanuel Vadot		bootph-all;
137*ae5de77eSEmmanuel Vadot	};
138*ae5de77eSEmmanuel Vadot
139*ae5de77eSEmmanuel Vadot	adc_vref: regulator-5 {
140*ae5de77eSEmmanuel Vadot		compatible = "regulator-fixed";
141*ae5de77eSEmmanuel Vadot		regulator-name = "default";
142*ae5de77eSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
143*ae5de77eSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
144*ae5de77eSEmmanuel Vadot		regulator-boot-on;
145*ae5de77eSEmmanuel Vadot	};
146*ae5de77eSEmmanuel Vadot
147*ae5de77eSEmmanuel Vadot	leds {
148*ae5de77eSEmmanuel Vadot		compatible = "gpio-leds";
149*ae5de77eSEmmanuel Vadot		pinctrl-names = "default";
150*ae5de77eSEmmanuel Vadot		pinctrl-0 = <&led_pins_default>;
151*ae5de77eSEmmanuel Vadot		bootph-all;
152*ae5de77eSEmmanuel Vadot
153*ae5de77eSEmmanuel Vadot		led-1 {
154*ae5de77eSEmmanuel Vadot			function = LED_FUNCTION_HEARTBEAT;
155*ae5de77eSEmmanuel Vadot			color = <LED_COLOR_ID_GREEN>;
156*ae5de77eSEmmanuel Vadot			linux,default-trigger = "heartbeat";
157*ae5de77eSEmmanuel Vadot			gpios = <&main_gpio0 6 GPIO_ACTIVE_HIGH>;
158*ae5de77eSEmmanuel Vadot			default-state = "on";
159*ae5de77eSEmmanuel Vadot			bootph-all;
160*ae5de77eSEmmanuel Vadot		};
161*ae5de77eSEmmanuel Vadot
162*ae5de77eSEmmanuel Vadot		led-2 {
163*ae5de77eSEmmanuel Vadot			function = LED_FUNCTION_DISK_ACTIVITY;
164*ae5de77eSEmmanuel Vadot			color = <LED_COLOR_ID_GREEN>;
165*ae5de77eSEmmanuel Vadot			linux,default-trigger = "mmc1";
166*ae5de77eSEmmanuel Vadot			gpios = <&main_gpio0 5 GPIO_ACTIVE_HIGH>;
167*ae5de77eSEmmanuel Vadot			default-state = "on";
168*ae5de77eSEmmanuel Vadot			bootph-all;
169*ae5de77eSEmmanuel Vadot		};
170*ae5de77eSEmmanuel Vadot
171*ae5de77eSEmmanuel Vadot		led-3 {
172*ae5de77eSEmmanuel Vadot			function = LED_FUNCTION_INDICATOR;
173*ae5de77eSEmmanuel Vadot			color = <LED_COLOR_ID_GREEN>;
174*ae5de77eSEmmanuel Vadot			gpios = <&main_gpio0 4 GPIO_ACTIVE_HIGH>;
175*ae5de77eSEmmanuel Vadot			default-state = "off";
176*ae5de77eSEmmanuel Vadot			bootph-all;
177*ae5de77eSEmmanuel Vadot		};
178*ae5de77eSEmmanuel Vadot
179*ae5de77eSEmmanuel Vadot		led-4 {
180*ae5de77eSEmmanuel Vadot			function = LED_FUNCTION_INDICATOR;
181*ae5de77eSEmmanuel Vadot			color = <LED_COLOR_ID_GREEN>;
182*ae5de77eSEmmanuel Vadot			gpios = <&main_gpio0 3 GPIO_ACTIVE_HIGH>;
183*ae5de77eSEmmanuel Vadot			default-state = "off";
184*ae5de77eSEmmanuel Vadot			bootph-all;
185*ae5de77eSEmmanuel Vadot		};
186*ae5de77eSEmmanuel Vadot	};
187*ae5de77eSEmmanuel Vadot};
188*ae5de77eSEmmanuel Vadot
189*ae5de77eSEmmanuel Vadot&main_pmx0 {
190*ae5de77eSEmmanuel Vadot	led_pins_default: led-default-pins {
191*ae5de77eSEmmanuel Vadot		pinctrl-single,pins = <
192*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x000c, PIN_OUTPUT, 7) /* (E25) OSPI0_D0.GPIO0_3 */
193*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x0010, PIN_OUTPUT, 7) /* (G24) OSPI0_D1.GPIO0_4 */
194*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x0014, PIN_OUTPUT, 7) /* (F25) OSPI0_D2.GPIO0_5 */
195*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x0018, PIN_OUTPUT, 7) /* (F24) OSPI0_D3.GPIO0_6 */
196*ae5de77eSEmmanuel Vadot		>;
197*ae5de77eSEmmanuel Vadot		bootph-all;
198*ae5de77eSEmmanuel Vadot	};
199*ae5de77eSEmmanuel Vadot
200*ae5de77eSEmmanuel Vadot	main_i2c0_pins_default: main-i2c0-default-pins {
201*ae5de77eSEmmanuel Vadot		pinctrl-single,pins = <
202*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x01e0, PIN_INPUT_PULLUP, 0) /* (B16) I2C0_SCL */
203*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x01e4, PIN_INPUT_PULLUP, 0) /* (A16) I2C0_SDA */
204*ae5de77eSEmmanuel Vadot		>;
205*ae5de77eSEmmanuel Vadot		bootph-all;
206*ae5de77eSEmmanuel Vadot	};
207*ae5de77eSEmmanuel Vadot
208*ae5de77eSEmmanuel Vadot	main_i2c2_pins_default: main-i2c2-default-pins {
209*ae5de77eSEmmanuel Vadot		pinctrl-single,pins = <
210*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x00b0, PIN_INPUT_PULLUP, 1) /* (K22) GPMC0_CSn2.I2C2_SCL */
211*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x00b4, PIN_INPUT_PULLUP, 1) /* (K24) GPMC0_CSn3.I2C2_SDA */
212*ae5de77eSEmmanuel Vadot		>;
213*ae5de77eSEmmanuel Vadot		bootph-all;
214*ae5de77eSEmmanuel Vadot	};
215*ae5de77eSEmmanuel Vadot
216*ae5de77eSEmmanuel Vadot	main_uart0_pins_default: main-uart0-default-pins {
217*ae5de77eSEmmanuel Vadot		pinctrl-single,pins = <
218*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14/A13) UART0_RXD */
219*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (E14/E11) UART0_TXD */
220*ae5de77eSEmmanuel Vadot		>;
221*ae5de77eSEmmanuel Vadot		bootph-all;
222*ae5de77eSEmmanuel Vadot	};
223*ae5de77eSEmmanuel Vadot
224*ae5de77eSEmmanuel Vadot	main_uart1_pins_default: main-uart1-default-pins {
225*ae5de77eSEmmanuel Vadot		pinctrl-single,pins = <
226*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x194, PIN_INPUT, 2) /* (B19/B18) MCASP0_AXR3.UART1_CTSn */
227*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x198, PIN_OUTPUT, 2) /* (A19/B17) MCASP0_AXR2.UART1_RTSn */
228*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x1ac, PIN_INPUT, 2) /* (E19/D15) MCASP0_AFSR.UART1_RXD */
229*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x1b0, PIN_OUTPUT, 2) /* (A20/D16) MCASP0_ACLKR.UART1_TXD */
230*ae5de77eSEmmanuel Vadot		>;
231*ae5de77eSEmmanuel Vadot		bootph-all;
232*ae5de77eSEmmanuel Vadot	};
233*ae5de77eSEmmanuel Vadot
234*ae5de77eSEmmanuel Vadot	main_uart6_pins_default: main-uart6-default-pins {
235*ae5de77eSEmmanuel Vadot		pinctrl-single,pins = <
236*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x001c, PIN_INPUT, 3) /* (J23) OSPI0_D4.UART6_RXD */
237*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x0020, PIN_OUTPUT, 3) /* (J25) OSPI0_D5.UART6_TXD */
238*ae5de77eSEmmanuel Vadot		>;
239*ae5de77eSEmmanuel Vadot	};
240*ae5de77eSEmmanuel Vadot
241*ae5de77eSEmmanuel Vadot	main_mmc1_pins_default: main-mmc1-default-pins {
242*ae5de77eSEmmanuel Vadot		pinctrl-single,pins = <
243*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x23c, PIN_INPUT, 0) /* (A21/C18) MMC1_CMD */
244*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x234, PIN_INPUT, 0) /* (B22/A20) MMC1_CLK */
245*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x230, PIN_INPUT, 0) /* (A22/A19) MMC1_DAT0 */
246*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x22c, PIN_INPUT, 0) /* (B21/B19) MMC1_DAT1 */
247*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x228, PIN_INPUT, 0) /* (C21/B20) MMC1_DAT2 */
248*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x224, PIN_INPUT, 0) /* (D22/C19) MMC1_DAT3 */
249*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x240, PIN_INPUT, 7) /* (D17/C15) MMC1_SDCD.GPIO1_48 */
250*ae5de77eSEmmanuel Vadot		>;
251*ae5de77eSEmmanuel Vadot		bootph-all;
252*ae5de77eSEmmanuel Vadot	};
253*ae5de77eSEmmanuel Vadot
254*ae5de77eSEmmanuel Vadot	vdd_sd_dv_pins_default: vdd-sd-dv-default-pins {
255*ae5de77eSEmmanuel Vadot		pinctrl-single,pins = <
256*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x0244, PIN_OUTPUT, 7) /* (P25) GPMC0_CLK.GPIO1_49 */
257*ae5de77eSEmmanuel Vadot		>;
258*ae5de77eSEmmanuel Vadot		bootph-all;
259*ae5de77eSEmmanuel Vadot	};
260*ae5de77eSEmmanuel Vadot
261*ae5de77eSEmmanuel Vadot	pmic_irq_pins_default: pmic-irq-default-pins {
262*ae5de77eSEmmanuel Vadot		pinctrl-single,pins = <
263*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x01f4, PIN_INPUT_PULLUP, 0) /* (D16) EXTINTn */
264*ae5de77eSEmmanuel Vadot		>;
265*ae5de77eSEmmanuel Vadot		bootph-all;
266*ae5de77eSEmmanuel Vadot	};
267*ae5de77eSEmmanuel Vadot
268*ae5de77eSEmmanuel Vadot	vdd_3v3_sd_pins_default: vdd-3v3-sd-default-pins {
269*ae5de77eSEmmanuel Vadot		pinctrl-single,pins = <
270*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x0000, PIN_OUTPUT, 7) /* (H24) OSPI0_CLK.GPIO0_0 */
271*ae5de77eSEmmanuel Vadot		>;
272*ae5de77eSEmmanuel Vadot		bootph-all;
273*ae5de77eSEmmanuel Vadot	};
274*ae5de77eSEmmanuel Vadot
275*ae5de77eSEmmanuel Vadot	usb1_pins_default: usb1-default-pins {
276*ae5de77eSEmmanuel Vadot		pinctrl-single,pins = <
277*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x0258, PIN_INPUT, 0) /* (F18) USB1_DRVVBUS */
278*ae5de77eSEmmanuel Vadot		>;
279*ae5de77eSEmmanuel Vadot		bootph-all;
280*ae5de77eSEmmanuel Vadot	};
281*ae5de77eSEmmanuel Vadot
282*ae5de77eSEmmanuel Vadot	epwm2_pins_default: epwm2-default-pins {
283*ae5de77eSEmmanuel Vadot		pinctrl-single,pins = <
284*ae5de77eSEmmanuel Vadot			AM62X_IOPAD(0x01e8, PIN_OUTPUT, 8) /* (B17) I2C1_SCL.EHRPWM2_A */
285*ae5de77eSEmmanuel Vadot		>;
286*ae5de77eSEmmanuel Vadot	};
287*ae5de77eSEmmanuel Vadot};
288*ae5de77eSEmmanuel Vadot
289*ae5de77eSEmmanuel Vadot&epwm2 {
290*ae5de77eSEmmanuel Vadot	status = "okay";
291*ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
292*ae5de77eSEmmanuel Vadot	pinctrl-0 = <&epwm2_pins_default>;
293*ae5de77eSEmmanuel Vadot};
294*ae5de77eSEmmanuel Vadot
295*ae5de77eSEmmanuel Vadot&mailbox0_cluster0 {
296*ae5de77eSEmmanuel Vadot	mbox_m4_0: mbox-m4-0 {
297*ae5de77eSEmmanuel Vadot		ti,mbox-rx = <0 0 0>;
298*ae5de77eSEmmanuel Vadot		ti,mbox-tx = <1 0 0>;
299*ae5de77eSEmmanuel Vadot	};
300*ae5de77eSEmmanuel Vadot};
301*ae5de77eSEmmanuel Vadot
302*ae5de77eSEmmanuel Vadot&main_uart0 {
303*ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
304*ae5de77eSEmmanuel Vadot	pinctrl-0 = <&main_uart0_pins_default>;
305*ae5de77eSEmmanuel Vadot	bootph-all;
306*ae5de77eSEmmanuel Vadot	status = "okay";
307*ae5de77eSEmmanuel Vadot};
308*ae5de77eSEmmanuel Vadot
309*ae5de77eSEmmanuel Vadot&main_uart1 {
310*ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
311*ae5de77eSEmmanuel Vadot	pinctrl-0 = <&main_uart1_pins_default>;
312*ae5de77eSEmmanuel Vadot	bootph-pre-ram;
313*ae5de77eSEmmanuel Vadot	status = "reserved";
314*ae5de77eSEmmanuel Vadot};
315*ae5de77eSEmmanuel Vadot
316*ae5de77eSEmmanuel Vadot&main_uart6 {
317*ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
318*ae5de77eSEmmanuel Vadot	pinctrl-0 = <&main_uart6_pins_default>;
319*ae5de77eSEmmanuel Vadot	bootph-all;
320*ae5de77eSEmmanuel Vadot	status = "okay";
321*ae5de77eSEmmanuel Vadot};
322*ae5de77eSEmmanuel Vadot
323*ae5de77eSEmmanuel Vadot&main_i2c0 {
324*ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
325*ae5de77eSEmmanuel Vadot	pinctrl-0 = <&main_i2c0_pins_default>;
326*ae5de77eSEmmanuel Vadot	clock-frequency = <400000>;
327*ae5de77eSEmmanuel Vadot	bootph-all;
328*ae5de77eSEmmanuel Vadot	status = "okay";
329*ae5de77eSEmmanuel Vadot
330*ae5de77eSEmmanuel Vadot	ad7291: adc@20 {
331*ae5de77eSEmmanuel Vadot		/* Emulated with MSPM0L1105 */
332*ae5de77eSEmmanuel Vadot		compatible = "adi,ad7291";
333*ae5de77eSEmmanuel Vadot		reg = <0x20>;
334*ae5de77eSEmmanuel Vadot		vref-supply = <&adc_vref>;
335*ae5de77eSEmmanuel Vadot	};
336*ae5de77eSEmmanuel Vadot
337*ae5de77eSEmmanuel Vadot	eeprom: eeprom@50 {
338*ae5de77eSEmmanuel Vadot		/* Emulated with MSPM0L1105 */
339*ae5de77eSEmmanuel Vadot		compatible = "atmel,24c32";
340*ae5de77eSEmmanuel Vadot		reg = <0x50>;
341*ae5de77eSEmmanuel Vadot	};
342*ae5de77eSEmmanuel Vadot};
343*ae5de77eSEmmanuel Vadot
344*ae5de77eSEmmanuel Vadot&main_i2c2 {
345*ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
346*ae5de77eSEmmanuel Vadot	pinctrl-0 = <&main_i2c2_pins_default>;
347*ae5de77eSEmmanuel Vadot	clock-frequency = <400000>;
348*ae5de77eSEmmanuel Vadot	bootph-all;
349*ae5de77eSEmmanuel Vadot	status = "okay";
350*ae5de77eSEmmanuel Vadot};
351*ae5de77eSEmmanuel Vadot
352*ae5de77eSEmmanuel Vadot&mcu_m4fss {
353*ae5de77eSEmmanuel Vadot	mboxes = <&mailbox0_cluster0 &mbox_m4_0>;
354*ae5de77eSEmmanuel Vadot	memory-region = <&mcu_m4fss_dma_memory_region>,
355*ae5de77eSEmmanuel Vadot			<&mcu_m4fss_memory_region>;
356*ae5de77eSEmmanuel Vadot	status = "okay";
357*ae5de77eSEmmanuel Vadot};
358*ae5de77eSEmmanuel Vadot
359*ae5de77eSEmmanuel Vadot&mcu_pmx0 {
360*ae5de77eSEmmanuel Vadot	wkup_uart0_pins_default: wkup-uart0-default-pins {
361*ae5de77eSEmmanuel Vadot		pinctrl-single,pins = <
362*ae5de77eSEmmanuel Vadot			AM62X_MCU_IOPAD(0x02c, PIN_INPUT, 0)	/* (C6/A7) WKUP_UART0_CTSn */
363*ae5de77eSEmmanuel Vadot			AM62X_MCU_IOPAD(0x030, PIN_OUTPUT, 0)	/* (A4/B4) WKUP_UART0_RTSn */
364*ae5de77eSEmmanuel Vadot			AM62X_MCU_IOPAD(0x024, PIN_INPUT, 0)	/* (B4/B5) WKUP_UART0_RXD */
365*ae5de77eSEmmanuel Vadot			AM62X_MCU_IOPAD(0x028, PIN_OUTPUT, 0)	/* (C5/C6) WKUP_UART0_TXD */
366*ae5de77eSEmmanuel Vadot		>;
367*ae5de77eSEmmanuel Vadot		bootph-all;
368*ae5de77eSEmmanuel Vadot	};
369*ae5de77eSEmmanuel Vadot
370*ae5de77eSEmmanuel Vadot	wkup_i2c0_pins_default: wkup-i2c0-default-pins {
371*ae5de77eSEmmanuel Vadot		pinctrl-single,pins = <
372*ae5de77eSEmmanuel Vadot			AM62X_MCU_IOPAD(0x004c, PIN_INPUT_PULLUP, 0)	/* (B9) WKUP_I2C0_SCL */
373*ae5de77eSEmmanuel Vadot			AM62X_MCU_IOPAD(0x0050, PIN_INPUT_PULLUP, 0)	/* (A9) WKUP_I2C0_SDA */
374*ae5de77eSEmmanuel Vadot		>;
375*ae5de77eSEmmanuel Vadot		bootph-all;
376*ae5de77eSEmmanuel Vadot	};
377*ae5de77eSEmmanuel Vadot};
378*ae5de77eSEmmanuel Vadot
379*ae5de77eSEmmanuel Vadot&sdhci1 {
380*ae5de77eSEmmanuel Vadot	/* SD/MMC */
381*ae5de77eSEmmanuel Vadot	vmmc-supply = <&vdd_mmc1>;
382*ae5de77eSEmmanuel Vadot	vqmmc-supply = <&vdd_sd_dv>;
383*ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
384*ae5de77eSEmmanuel Vadot	pinctrl-0 = <&main_mmc1_pins_default>;
385*ae5de77eSEmmanuel Vadot	disable-wp;
386*ae5de77eSEmmanuel Vadot	cd-gpios = <&main_gpio1 48 GPIO_ACTIVE_LOW>;
387*ae5de77eSEmmanuel Vadot	cd-debounce-delay-ms = <100>;
388*ae5de77eSEmmanuel Vadot	bootph-all;
389*ae5de77eSEmmanuel Vadot	ti,fails-without-test-cd;
390*ae5de77eSEmmanuel Vadot	status = "okay";
391*ae5de77eSEmmanuel Vadot};
392*ae5de77eSEmmanuel Vadot
393*ae5de77eSEmmanuel Vadot&usbss0 {
394*ae5de77eSEmmanuel Vadot	bootph-all;
395*ae5de77eSEmmanuel Vadot	ti,vbus-divider;
396*ae5de77eSEmmanuel Vadot	status = "okay";
397*ae5de77eSEmmanuel Vadot};
398*ae5de77eSEmmanuel Vadot
399*ae5de77eSEmmanuel Vadot&usb0 {
400*ae5de77eSEmmanuel Vadot	/* This is a Type-C socket, but wired as USB 2.0 */
401*ae5de77eSEmmanuel Vadot	dr_mode = "peripheral";
402*ae5de77eSEmmanuel Vadot	bootph-all;
403*ae5de77eSEmmanuel Vadot};
404*ae5de77eSEmmanuel Vadot
405*ae5de77eSEmmanuel Vadot&usbss1 {
406*ae5de77eSEmmanuel Vadot	ti,vbus-divider;
407*ae5de77eSEmmanuel Vadot	status = "okay";
408*ae5de77eSEmmanuel Vadot};
409*ae5de77eSEmmanuel Vadot
410*ae5de77eSEmmanuel Vadot&usb1 {
411*ae5de77eSEmmanuel Vadot	/*
412*ae5de77eSEmmanuel Vadot	 * Default set here is compatible with original PocketBeagle,
413*ae5de77eSEmmanuel Vadot	 * Expansion boards assumed this was pre-setup as host.
414*ae5de77eSEmmanuel Vadot	 */
415*ae5de77eSEmmanuel Vadot	dr_mode = "host";
416*ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
417*ae5de77eSEmmanuel Vadot	pinctrl-0 = <&usb1_pins_default>;
418*ae5de77eSEmmanuel Vadot};
419*ae5de77eSEmmanuel Vadot
420*ae5de77eSEmmanuel Vadot&wkup_uart0 {
421*ae5de77eSEmmanuel Vadot	/* WKUP UART0 is used by Device Manager firmware */
422*ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
423*ae5de77eSEmmanuel Vadot	pinctrl-0 = <&wkup_uart0_pins_default>;
424*ae5de77eSEmmanuel Vadot	bootph-all;
425*ae5de77eSEmmanuel Vadot	status = "reserved";
426*ae5de77eSEmmanuel Vadot};
427*ae5de77eSEmmanuel Vadot
428*ae5de77eSEmmanuel Vadot&wkup_i2c0 {
429*ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
430*ae5de77eSEmmanuel Vadot	pinctrl-0 = <&wkup_i2c0_pins_default>;
431*ae5de77eSEmmanuel Vadot	clock-frequency = <100000>;
432*ae5de77eSEmmanuel Vadot	bootph-all;
433*ae5de77eSEmmanuel Vadot	status = "okay";
434*ae5de77eSEmmanuel Vadot
435*ae5de77eSEmmanuel Vadot	tps65219: pmic@30 {
436*ae5de77eSEmmanuel Vadot		compatible = "ti,tps65219";
437*ae5de77eSEmmanuel Vadot		reg = <0x30>;
438*ae5de77eSEmmanuel Vadot		buck1-supply = <&vsys_5v0>;
439*ae5de77eSEmmanuel Vadot		buck2-supply = <&vsys_5v0>;
440*ae5de77eSEmmanuel Vadot		buck3-supply = <&vsys_5v0>;
441*ae5de77eSEmmanuel Vadot		ldo1-supply = <&vdd_3v3>;
442*ae5de77eSEmmanuel Vadot		ldo2-supply = <&buck2_reg>;
443*ae5de77eSEmmanuel Vadot		ldo3-supply = <&vdd_3v3>;
444*ae5de77eSEmmanuel Vadot		ldo4-supply = <&vdd_3v3>;
445*ae5de77eSEmmanuel Vadot
446*ae5de77eSEmmanuel Vadot		pinctrl-names = "default";
447*ae5de77eSEmmanuel Vadot		pinctrl-0 = <&pmic_irq_pins_default>;
448*ae5de77eSEmmanuel Vadot		interrupt-parent = <&gic500>;
449*ae5de77eSEmmanuel Vadot		interrupts = <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>;
450*ae5de77eSEmmanuel Vadot		interrupt-controller;
451*ae5de77eSEmmanuel Vadot		#interrupt-cells = <1>;
452*ae5de77eSEmmanuel Vadot
453*ae5de77eSEmmanuel Vadot		bootph-all;
454*ae5de77eSEmmanuel Vadot		system-power-controller;
455*ae5de77eSEmmanuel Vadot		ti,power-button;
456*ae5de77eSEmmanuel Vadot
457*ae5de77eSEmmanuel Vadot		regulators {
458*ae5de77eSEmmanuel Vadot			buck1_reg: buck1 {
459*ae5de77eSEmmanuel Vadot				regulator-name = "VDD_CORE";
460*ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <850000>;
461*ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <850000>;
462*ae5de77eSEmmanuel Vadot				regulator-boot-on;
463*ae5de77eSEmmanuel Vadot				regulator-always-on;
464*ae5de77eSEmmanuel Vadot			};
465*ae5de77eSEmmanuel Vadot
466*ae5de77eSEmmanuel Vadot			buck2_reg: buck2 {
467*ae5de77eSEmmanuel Vadot				regulator-name = "VDD_1V8";
468*ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
469*ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
470*ae5de77eSEmmanuel Vadot				regulator-boot-on;
471*ae5de77eSEmmanuel Vadot				regulator-always-on;
472*ae5de77eSEmmanuel Vadot			};
473*ae5de77eSEmmanuel Vadot
474*ae5de77eSEmmanuel Vadot			buck3_reg: buck3 {
475*ae5de77eSEmmanuel Vadot				regulator-name = "VDD_1V2";
476*ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <1200000>;
477*ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <1200000>;
478*ae5de77eSEmmanuel Vadot				regulator-boot-on;
479*ae5de77eSEmmanuel Vadot				regulator-always-on;
480*ae5de77eSEmmanuel Vadot			};
481*ae5de77eSEmmanuel Vadot
482*ae5de77eSEmmanuel Vadot			ldo1_reg: ldo1 {
483*ae5de77eSEmmanuel Vadot				/*
484*ae5de77eSEmmanuel Vadot				 * Regulator is left as is unused, vdd_sd
485*ae5de77eSEmmanuel Vadot				 * is controlled via GPIO with bypass config
486*ae5de77eSEmmanuel Vadot				 * as per the NVM configuration
487*ae5de77eSEmmanuel Vadot				 */
488*ae5de77eSEmmanuel Vadot				regulator-name = "VDD_SD_3V3";
489*ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
490*ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
491*ae5de77eSEmmanuel Vadot				regulator-allow-bypass;
492*ae5de77eSEmmanuel Vadot				regulator-boot-on;
493*ae5de77eSEmmanuel Vadot				regulator-always-on;
494*ae5de77eSEmmanuel Vadot			};
495*ae5de77eSEmmanuel Vadot
496*ae5de77eSEmmanuel Vadot			ldo2_reg: ldo2 {
497*ae5de77eSEmmanuel Vadot				regulator-name = "VDDA_0V85";
498*ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <850000>;
499*ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <850000>;
500*ae5de77eSEmmanuel Vadot				regulator-boot-on;
501*ae5de77eSEmmanuel Vadot				regulator-always-on;
502*ae5de77eSEmmanuel Vadot			};
503*ae5de77eSEmmanuel Vadot
504*ae5de77eSEmmanuel Vadot			ldo3_reg: ldo3 {
505*ae5de77eSEmmanuel Vadot				regulator-name = "VDDA_1V8";
506*ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
507*ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
508*ae5de77eSEmmanuel Vadot				regulator-boot-on;
509*ae5de77eSEmmanuel Vadot				regulator-always-on;
510*ae5de77eSEmmanuel Vadot			};
511*ae5de77eSEmmanuel Vadot
512*ae5de77eSEmmanuel Vadot			ldo4_reg: ldo4 {
513*ae5de77eSEmmanuel Vadot				regulator-name = "VDD_2V5";
514*ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <2500000>;
515*ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <2500000>;
516*ae5de77eSEmmanuel Vadot				regulator-boot-on;
517*ae5de77eSEmmanuel Vadot				regulator-always-on;
518*ae5de77eSEmmanuel Vadot			};
519*ae5de77eSEmmanuel Vadot		};
520*ae5de77eSEmmanuel Vadot	};
521*ae5de77eSEmmanuel Vadot};
522