This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

SK-AM62A-LP: Error initializing the D-PHY from the cdns-csi2rx driver using a custom dtb/dts file

Part Number: SK-AM62A-LP

Hello,

I've created a custom dts file for the SK-AM62A-LP board using SDK9.0 following the instructions on the TI Acadamy here:
dev.ti.com/.../node

I'm working to prepare for a custom design that requires an Ethernet, CSI2 Image Sensor, H.264 Encoding, SD card, and eMMC supoort. I was able to successfully create a custom dtb using SDK 8.6 previously. When I replace the k3-am62a7-sk.dtb file with my custom dtb file, I have my system booting but I see using dmsg "cdns-csi2rx 30101000.csi-bridge: Couldn't get external D-PHY" and the output of "media-ctl -p" just shows the j721 bridge. This doesn't happen using the SDK provided image and I can detect an attached IMX219 sensor.  Here is my current dts file (with the extra nodes to support the dev board):

// SPDX-License-Identifier: GPL-2.0
/*
 * AM62A SK: https://www.ti.com/lit/zip/sprr459
 *
 * Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/
 */

/dts-v1/;

#include <dt-bindings/leds/common.h>
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/net/ti-dp83867.h>
#include "k3-am62a7.dtsi"

/ {
	compatible =  "ti,am62a7";
	model = "Texas Instruments AM62A7";

	aliases {
		serial2 = &main_uart0;
		mmc0 = &sdhci0;
		mmc1 = &sdhci1;
		// ethernet0 = "/bus@f0000/ethernet@8000000/ethernet-ports/port@1";
		ethernet0 = &cpsw_port1;
	};

	chosen {
		stdout-path = "serial2:115200n8";
		bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
	};

	cpus {
		/delete-node/ cpu@1;
		/delete-node/ cpu@2;
		/delete-node/ cpu@3;
	};

//	memory@80000000 {
//		device_type = "memory";
//		/* 2G RAM */
//		reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
//	};
	
	memory@80000000 {
	device_type = "memory";
	/* 4G RAM */
	reg = <0x00000000 0x80000000 0x00000000 0x80000000>,
	      <0x00000008 0x80000000 0x00000000 0x80000000>;
	};

	dma_buf_phys {
		compatible = "ti,dma-buf-phys";
	};


	reserved-memory {
		#address-cells = <2>;
		#size-cells = <2>;
		ranges;
		
		/* global cma region */
		linux,cma {
			compatible = "shared-dma-pool";
			reusable;
			size = <0x00 0x24000000>;
			alloc-ranges = <0x00 0xc0000000 0x00 0x24000000>;
			linux,cma-default;
		};

		secure_tfa_ddr: tfa@9e780000 {
			reg = <0x00 0x9e780000 0x00 0x80000>;
			alignment = <0x1000>;
			no-map;
		};

		secure_ddr: optee@9e800000 {
			reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
			alignment = <0x1000>;
			no-map;
		};
		
		wkup_r5fss0_core0_dma_memory_region: r5f-dma-memory@9c800000 {
			compatible = "shared-dma-pool";
			reg = <0x00 0x9c800000 0x00 0x100000>;
			no-map;
		};

		wkup_r5fss0_core0_memory_region: r5f-dma-memory@9c900000 {
			compatible = "shared-dma-pool";
			reg = <0x00 0x9c900000 0x00 0x01e00000>;
			no-map;
		};

		mcu_r5fss0_core0_dma_memory_region: r5f-dma-memory@9b800000 {
			compatible = "shared-dma-pool";
			reg = <0x00 0x9b800000 0x00 0x100000>;
			no-map;
		};

		mcu_r5fss0_core0_memory_region: r5f-dma-memory@9b900000 {
			compatible = "shared-dma-pool";
			reg = <0x00 0x9b900000 0x00 0x0f00000>;
			no-map;
		};

		edgeai_rtos_ipc_memory_region: edgeai-rtos-ipc-memory-region {
			reg = <0x00 0xa0000000 0x00 0x01000000>;
			no-map;
		};

		edgeai_memory_region: edgeai-dma-memory@a1000000 {
			compatible = "shared-dma-pool";
			reg = <0x00 0xa1000000 0x00 0x02000000>;
			no-map;
		};

		edgeai_shared_region: edgeai_shared-memories {
			compatible = "dma-heap-carveout";
			reg = <0x00 0xa3000000 0x00 0x0b000000>;
		};

		edgeai_core_heaps: edgeai-core-heap-memory@ae000000 {
			compatible = "shared-dma-pool";
			reg = <0x00 0xae000000 0x00 0x12000000>;
			no-map;
		};
	};

	vmain_pd: regulator-0 {
		/* TPS25750 PD CONTROLLER OUTPUT */
		compatible = "regulator-fixed";
		regulator-name = "vmain_pd";
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
		regulator-always-on;
		regulator-boot-on;
	};

	vcc_5v0: regulator-1 {
		/* Output of TPS63070 */
		compatible = "regulator-fixed";
		regulator-name = "vcc_5v0";
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
		vin-supply = <&vmain_pd>;
		regulator-always-on;
		regulator-boot-on;
	};

	vcc_3v3_main: regulator-2 {
		/* output of LM5141-Q1 */
		compatible = "regulator-fixed";
		regulator-name = "vcc_3v3_main";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		vin-supply = <&vmain_pd>;
		regulator-always-on;
		regulator-boot-on;
	};

	vdd_mmc1: regulator-3 {
		/* TPS22918DBVR */
		compatible = "regulator-fixed";
		regulator-name = "vdd_mmc1";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		regulator-boot-on;
		enable-active-high;
		gpio = <&exp1 3 GPIO_ACTIVE_HIGH>;
	};

	vcc_3v3_sys: regulator-4 {
		/* output of TPS222965DSGT */
		compatible = "regulator-fixed";
		regulator-name = "vcc_3v3_sys";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		vin-supply = <&vcc_3v3_main>;
		regulator-always-on;
		regulator-boot-on;
	};

	vddshv_sdio: regulator-5 {
		compatible = "regulator-gpio";
		regulator-name = "vddshv_sdio";
		pinctrl-names = "default";
		pinctrl-0 = <&vddshv_sdio_pins_default>;
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <3300000>;
		regulator-boot-on;
		vin-supply = <&ldo1>;
		gpios = <&main_gpio0 31 GPIO_ACTIVE_HIGH>;
		states = <1800000 0x0>,
			 <3300000 0x1>;
	};

	leds {
		compatible = "gpio-leds";
		pinctrl-names = "default";
		pinctrl-0 = <&usr_led_pins_default>;

		led-0 {
			label = "am62a-sk:green:heartbeat";
			gpios = <&main_gpio1 49 GPIO_ACTIVE_HIGH>;
			linux,default-trigger = "heartbeat";
			function = LED_FUNCTION_HEARTBEAT;
			default-state = "off";
		};
	};
};

	

&main_pmx0 {
	main_uart0_pins_default: main-uart0-pins-default {
		pinctrl-single,pins = <
			AM62AX_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14) UART0_RXD */
			AM62AX_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (E14) UART0_TXD */
		>;
	};
	
	main_mmc0_pins_default: main-mmc0-pins-default {
	pinctrl-single,pins = <
		AM62AX_IOPAD(0x220, PIN_INPUT, 0) /* (Y3) MMC0_CMD */
		AM62AX_IOPAD(0x218, PIN_INPUT, 0) /* (AB1) MMC0_CLKLB */
		AM62AX_IOPAD(0x21c, PIN_INPUT, 0) /* (AB1) MMC0_CLK */
		AM62AX_IOPAD(0x214, PIN_INPUT, 0) /* (AA2) MMC0_DAT0 */
		AM62AX_IOPAD(0x210, PIN_INPUT_PULLUP, 0) /* (AA1) MMC0_DAT1 */
		AM62AX_IOPAD(0x20c, PIN_INPUT_PULLUP, 0) /* (AA3) MMC0_DAT2 */
		AM62AX_IOPAD(0x208, PIN_INPUT_PULLUP, 0) /* (Y4) MMC0_DAT3 */
		AM62AX_IOPAD(0x204, PIN_INPUT_PULLUP, 0) /* (AB2) MMC0_DAT4 */
		AM62AX_IOPAD(0x200, PIN_INPUT_PULLUP, 0) /* (AC1) MMC0_DAT5 */
		AM62AX_IOPAD(0x1fc, PIN_INPUT_PULLUP, 0) /* (AD2) MMC0_DAT6 */
		AM62AX_IOPAD(0x1f8, PIN_INPUT_PULLUP, 0) /* (AC2) MMC0_DAT7 */
	>;
	};

	main_mmc1_pins_default: main-mmc1-pins-default {
		pinctrl-single,pins = <
			AM62AX_IOPAD(0x23c, PIN_INPUT, 0) /* (A21) MMC1_CMD */
			AM62AX_IOPAD(0x234, PIN_INPUT, 0) /* (B22) MMC1_CLK */
			AM62AX_IOPAD(0x230, PIN_INPUT, 0) /* (A22) MMC1_DAT0 */
			AM62AX_IOPAD(0x22c, PIN_INPUT, 0) /* (B21) MMC1_DAT1 */
			AM62AX_IOPAD(0x228, PIN_INPUT, 0) /* (C21) MMC1_DAT2 */
			AM62AX_IOPAD(0x224, PIN_INPUT, 0) /* (D22) MMC1_DAT3 */
			AM62AX_IOPAD(0x240, PIN_INPUT, 0) /* (D17) MMC1_SDCD */
		>;
	};

	main_mdio1_pins_default: main-mdio1-pins-default {
		pinctrl-single,pins = <
			AM62AX_IOPAD(0x160, PIN_OUTPUT, 0) /* (V12) MDIO0_MDC */
			AM62AX_IOPAD(0x15c, PIN_INPUT, 0) /* (V13) MDIO0_MDIO */
		>;
	};

	main_rgmii1_pins_default: main-rgmii1-pins-default {
		pinctrl-single,pins = <
			AM62AX_IOPAD(0x14c, PIN_INPUT, 0) /* (AB16) RGMII1_RD0 */
			AM62AX_IOPAD(0x150, PIN_INPUT, 0) /* (V15) RGMII1_RD1 */
			AM62AX_IOPAD(0x154, PIN_INPUT, 0) /* (W15) RGMII1_RD2 */
			AM62AX_IOPAD(0x158, PIN_INPUT, 0) /* (V14) RGMII1_RD3 */
			AM62AX_IOPAD(0x148, PIN_INPUT, 0) /* (AA16) RGMII1_RXC */
			AM62AX_IOPAD(0x144, PIN_INPUT, 0) /* (AA15) RGMII1_RX_CTL */
			AM62AX_IOPAD(0x134, PIN_INPUT, 0) /* (Y17) RGMII1_TD0 */
			AM62AX_IOPAD(0x138, PIN_INPUT, 0) /* (V16) RGMII1_TD1 */
			AM62AX_IOPAD(0x13c, PIN_INPUT, 0) /* (Y16) RGMII1_TD2 */
			AM62AX_IOPAD(0x140, PIN_INPUT, 0) /* (AA17) RGMII1_TD3 */
			AM62AX_IOPAD(0x130, PIN_INPUT, 0) /* (AB17) RGMII1_TXC */
			AM62AX_IOPAD(0x12c, PIN_INPUT, 0) /* (W16) RGMII1_TX_CTL */
		>;
	};

	main_i2c2_pins_default: main-i2c2-pins-default {
		pinctrl-single,pins = <
			AM62AX_IOPAD(0x0b0, PIN_INPUT_PULLUP, 1) /* (K22) To I2C Switch 0x71 for CSI, also Dev Board GPMC0_CSn2.I2C2_SCL */
			AM62AX_IOPAD(0x0b4, PIN_INPUT_PULLUP, 1) /* (K24) To I2C Switch 0x71 for CSI, also Dev Board GPMC0_CSn3.I2C2_SDA */
		>;
	};

	/* TI SK Dev Board specific */
	/* PMIC Bus */
	main_i2c0_pins_default: main-i2c0-pins-default {
	pinctrl-single,pins = <
		AM62AX_IOPAD(0x1e0, PIN_INPUT_PULLUP, 0) /* (B16) I2C0_SCL */
		AM62AX_IOPAD(0x1e4, PIN_INPUT_PULLUP, 0) /* (A16) I2C0_SDA */
	>;
	};
	
	/* This I2C bus is used for Voltage Module enable and the BootMode GPIO expander on the TI SK Dev Board */
	main_i2c1_pins_default: main-i2c1-pins-default {
		pinctrl-single,pins = <
			AM62AX_IOPAD(0x1e8, PIN_INPUT_PULLUP, 0) /* (B17) I2C1_SCL */
			AM62AX_IOPAD(0x1ec, PIN_INPUT_PULLUP, 0) /* (A17) I2C1_SDA */
		>;
	};

	main_gpio1_ioexp_intr_pins_default: main-gpio1-ioexp-intr-pins-default {
		pinctrl-single,pins = <
			AM62AX_IOPAD(0x01d4, PIN_INPUT, 7) /* (C15) UART0_RTSn.GPIO1_23 */

		>;
	};

	usr_led_pins_default: usr-led-pins-default {
		pinctrl-single,pins = <
			AM62AX_IOPAD(0x244, PIN_OUTPUT, 7) /* (D18) MMC1_SDWP.GPIO1_49 */
		>;
	};

	vddshv_sdio_pins_default: vddshv-sdio-pins-default {
		pinctrl-single,pins = <
			AM62AX_IOPAD(0x07c, PIN_OUTPUT, 7) /* (M19) GPMC0_CLK.GPIO0_31 */
		>;
	};
};

&mcu_pmx0 {
	status = "okay";

	pmic_irq_pins_default: pmic-irq-pins-default {
		pinctrl-single,pins = <
			AM62AX_MCU_IOPAD(0x000, PIN_INPUT, 7) /* (E11) MCU_GPIO0_0 */
		>;
	};
};

&mcu_gpio0 {
	status = "okay";
};


/delete-node/ &mcu_uart0;
/delete-node/ &mcu_i2c0;
// /delete-node/ &mcu_r5fss0_core0;
// /delete-node/ &mcu_r5fss0;
/delete-node/ &mcu_spi0;
/delete-node/ &mcu_spi1;
// /delete-node/ &mcu_gpio0;
// /delete-node/ &mcu_pmx0;
// /delete-node/ &cbass_mcu;

/delete-node/ &wkup_uart0;
/delete-node/ &wkup_i2c0;
/delete-node/ &wkup_rtc0;
/delete-node/ &wkup_r5fss0_core0;
/delete-node/ &wkup_r5fss0;
/delete-node/ &wkup_conf;

// /delete-node/ &phy_gmii_sel;
/delete-node/ &epwm_tbclk;
// /delete-node/ &main_conf;
/delete-node/ &crypto;
// /delete-node/ &main_i2c0;
// /delete-node/ &main_i2c1;
// /delete-node/ &main_i2c2;

/* TI SK Dev Board specific */
&main_i2c0 {
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&main_i2c0_pins_default>;
	clock-frequency = <400000>;

	tps659312: pmic@48 {
		compatible = "ti,tps6593-q1";
		reg = <0x48>;
		ti,primary-pmic;
		system-power-controller;

		gpio-controller;
		#gpio-cells = <2>;

		pinctrl-names = "default";
		pinctrl-0 = <&pmic_irq_pins_default>;
		interrupt-parent = <&mcu_gpio0>;
		interrupts = <0 IRQ_TYPE_EDGE_FALLING>;

		buck123-supply = <&vcc_3v3_sys>;
		buck4-supply = <&vcc_3v3_sys>;
		buck5-supply = <&vcc_3v3_sys>;
		ldo1-supply = <&vcc_3v3_sys>;
		ldo2-supply = <&vcc_3v3_sys>;
		ldo3-supply = <&buck5>;
		ldo4-supply = <&vcc_3v3_sys>;

		regulators {
			buck123: buck123 {
				regulator-name = "vcc_core";
				regulator-min-microvolt = <715000>;
				regulator-max-microvolt = <895000>;
				regulator-boot-on;
				regulator-always-on;
			};

			buck4: buck4 {
				regulator-name = "vcc_1v1";
				regulator-min-microvolt = <1100000>;
				regulator-max-microvolt = <1100000>;
				regulator-boot-on;
				regulator-always-on;
			};

			buck5: buck5 {
				regulator-name = "vcc_1v8_sys";
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-boot-on;
				regulator-always-on;
			};

			ldo1: ldo1 {
				regulator-name = "vddshv5_sdio";
				regulator-min-microvolt = <3300000>;
				regulator-max-microvolt = <3300000>;
				regulator-boot-on;
				regulator-always-on;
			};

			ldo2: ldo2 {
				regulator-name = "vpp_1v8";
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-boot-on;
				regulator-always-on;
			};

			ldo3: ldo3 {
				regulator-name = "vcc_0v85";
				regulator-min-microvolt = <850000>;
				regulator-max-microvolt = <850000>;
				regulator-boot-on;
				regulator-always-on;
			};

			ldo4: ldo4 {
				regulator-name = "vdda_1v8";
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-boot-on;
				regulator-always-on;
			};
		};
	};
};

&main_i2c1 {
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&main_i2c1_pins_default>;
	clock-frequency = <100000>;

	exp1: gpio@22 {
		compatible = "ti,tca6424";
		reg = <0x22>;
		gpio-controller;
		#gpio-cells = <2>;

		interrupt-parent = <&main_gpio1>;
		interrupts = <23 IRQ_TYPE_EDGE_FALLING>;
		interrupt-controller;
		#interrupt-cells = <2>;

		gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST",
				   "BT_EN_SOC", "MMC1_SD_EN",
				   "VPP_EN", "EXP_PS_3V3_En",
				   "EXP_PS_5V0_En", "EXP_HAT_DETECT",
				   "GPIO_AUD_RSTn", "GPIO_eMMC_RSTn",
				   "UART1_FET_BUF_EN", "BT_UART_WAKE_SOC",
				   "GPIO_HDMI_RSTn", "CSI_GPIO0",
				   "CSI_GPIO1", "WLAN_ALERTn",
				   "HDMI_INTn", "TEST_GPIO2",
				   "MCASP1_FET_EN", "MCASP1_BUF_BT_EN",
				   "MCASP1_FET_SEL", "UART1_FET_SEL",
				   "PD_I2C_IRQ", "IO_EXP_TEST_LED";

		pinctrl-names = "default";
		pinctrl-0 = <&main_gpio1_ioexp_intr_pins_default>;
	};

	exp2: gpio@23 {
		compatible = "ti,tca6424";
		reg = <0x23>;
		gpio-controller;
		#gpio-cells = <2>;

		gpio-line-names = "", "",
				  "", "",
				  "", "",
				  "", "",
				  "WL_LT_EN", "CSI_RSTz",
				  "", "",
				  "", "",
				  "", "",
				  "SPI0_FET_SEL", "SPI0_FET_OE",
				  "RGMII2_BRD_CONN_DET", "CSI_SEL2",
				  "CSI_EN", "AUTO_100M_1000M_CONFIG",
				  "CSI_VLDO_SEL", "SoC_WLAN_SDIO_RST";
	};
};

&main_i2c2 {
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&main_i2c2_pins_default>;
	clock-frequency = <400000>;
};

/delete-node/ &main_i2c3;
/delete-node/ &main_spi0;
/delete-node/ &main_spi1;
/delete-node/ &main_spi2;

// /delete-node/ &sdhci0;
// /delete-node/ &sdhci1;
// /delete-node/ &sdhci2;
// /delete-node/ &main_gpio0;
// /delete-node/ &main_gpio1;

&sdhci0 {
	/* eMMC */
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&main_mmc0_pins_default>;
	ti,driver-strength-ohm = <50>;
	disable-wp;
};


&sdhci1 {
	/* SD / MMC */
	status = "okay";
	vmmc-supply = <&vdd_mmc1>;
	vqmmc-supply = <&vddshv_sdio>;
	pinctrl-names = "default";
	pinctrl-0 = <&main_mmc1_pins_default>;
	ti,driver-strength-ohm = <50>;
	disable-wp;
};

&main_gpio0 {
	status = "okay";
};

&main_gpio1 {
	status = "okay";
};

&main_gpio_intr {
	status = "okay";
};


&main_uart0 {
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&main_uart0_pins_default>;
};


/delete-node/ &main_uart1;
/delete-node/ &main_uart2;
/delete-node/ &main_uart3;
/delete-node/ &main_uart4;
/delete-node/ &main_uart5;
/delete-node/ &main_uart6;
// /delete-node/ &vpu;
/delete-node/ &dss_ports;
/delete-node/ &dss;
/delete-node/ &usb1;
/delete-node/ &usbss1;

// /delete-node/ &cpsw_port1;
// /delete-node/ &cpsw_port2;
// /delete-node/ &cpsw3g_mdio;
// /delete-node/ &cpsw3g;

&cpsw3g {
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&main_rgmii1_pins_default>;
};

&cpsw_port1 {
	status = "okay";
	phy-mode = "rgmii-rxid";
	phy-handle = <&cpsw3g_phy0>;
};

&cpsw_port2 {
	status = "disabled";
};

&cpsw3g_mdio {

	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&main_mdio1_pins_default>;

	cpsw3g_phy0: ethernet-phy@0 {
		reg = <0>;
		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
		ti,min-output-impedance;
	};
};

/delete-node/ &usb0;
/delete-node/ &usbss0;

// /delete-node/ &csi0_port0;
// /delete-node/ &csi0_port1;
// /delete-node/ &csi0_port2;
// /delete-node/ &csi0_port3;
// /delete-node/ &csi0_port4;
// /delete-node/ &dphy0;
// /delete-node/ &ti_csi2rx0;
// /delete-node/ &dmss_csi;

&ti_csi2rx0 {
	status = "okay";
};

&dphy0 {
	status = "okay";
};

/delete-node/ &ospi0;
/delete-node/ &fss;
/delete-node/ &main_mcan0;
/delete-node/ &epwm0;
/delete-node/ &epwm1;
/delete-node/ &epwm2;
/delete-node/ &ecap0;
/delete-node/ &ecap1;
/delete-node/ &ecap2;
/delete-node/ &mcasp0;
/delete-node/ &mcasp1;
/delete-node/ &mcasp2;

/delete-node/ &main0_thermal;
/delete-node/ &main1_thermal;
/delete-node/ &main2_thermal;
/delete-node/ &thermal_zones;
// /delete-node/ &wkup_vtm0;
// /delete-node/ &cbass_wakeup;

&cbass_wakeup {
	wkup_conf: syscon@43000000 {
 		compatible = "ti,j721e-system-controller", "syscon", "simple-mfd";
 		reg = <0x00 0x43000000 0x00 0x20000>;
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00 0x00 0x43000000 0x20000>;
 
 		chipid: chipid@14 {
 			compatible = "ti,am654-chipid";
 			reg = <0x14 0x4>;
 		};
 	};
	wkup_r5fss0: r5fss@78000000 {
		compatible = "ti,am62-r5fss";
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0x78000000 0x00 0x78000000 0x8000>,
			 <0x78100000 0x00 0x78100000 0x8000>;
		power-domains = <&k3_pds 119 TI_SCI_PD_EXCLUSIVE>;
		wkup_r5fss0_core0: r5f@78000000 {
			compatible = "ti,am62-r5f";
			reg = <0x78000000 0x00008000>,
				<0x78100000 0x00008000>;
			reg-names = "atcm", "btcm";
			ti,sci = <&dmsc>;
			ti,sci-dev-id = <121>;
			ti,sci-proc-ids = <0x01 0xff>;
			resets = <&k3_reset 121 1>;
			firmware-name = "am62-wkup-r5f0_0-fw";
			ti,atcm-enable = <1>;
			ti,btcm-enable = <1>;
			ti,loczrama = <1>;
		};
	};
 	wkup_vtm0: temperature-sensor@b00000 {
 		compatible = "ti,j7200-vtm";
 		reg = <0x00 0xb00000 0x00 0x400>,
 		      <0x00 0xb01000 0x00 0x400>;
 		power-domains = <&k3_pds 95 TI_SCI_PD_EXCLUSIVE>;
 		#thermal-sensor-cells = <1>;
 	};
};

// /delete-node/ &mailbox0_cluster0;
/delete-node/ &mailbox0_cluster1;
// /delete-node/ &mailbox0_cluster2;
/delete-node/ &mailbox0_cluster3;
/delete-node/ &c7x_0;

&mailbox0_cluster0 {
	mbox_r5_0: mbox-r5-0 {
		ti,mbox-rx = <0 0 0>;
		ti,mbox-tx = <1 0 0>;
	};
};

// &mailbox0_cluster1 {
// 	mbox_c7x_0: mbox-c7x-0 {
// 		ti,mbox-rx = <0 0 0>;
// 		ti,mbox-tx = <1 0 0>;
// 	};
// };

&mailbox0_cluster2 {
	mbox_mcu_r5_0: mbox-mcu_r5-0 {
		ti,mbox-rx = <0 0 0>;
		ti,mbox-tx = <1 0 0>;
	};
};

// &c7x_0 {
// 	mboxes = <&mailbox0_cluster1 &mbox_c7x_0>;
// 	memory-region = <&c7x_0_dma_memory_region>,
// 			<&c7x_0_memory_region>;
// };

&wkup_r5fss0_core0 {
	mboxes = <&mailbox0_cluster0 &mbox_r5_0>;
	memory-region = <&wkup_r5fss0_core0_dma_memory_region>,
		<&wkup_r5fss0_core0_memory_region>;
};

&mcu_r5fss0_core0 {
	mboxes = <&mailbox0_cluster2 &mbox_mcu_r5_0>;
	memory-region = <&mcu_r5fss0_core0_dma_memory_region>,
			<&mcu_r5fss0_core0_memory_region>;
};


#define K3_TS_OFFSET(pa, val)	(0x4+(pa)*4) (0x10000 | val)

&timesync_router {
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&cpsw_cpts>;

	/* Use Time Sync Router to map GENF1 input to HW3_TS_PUSH output */
	cpsw_cpts: cpsw-cpts {
		pinctrl-single,pins = <
			/* pps [cpsw cpts genf1] in17 -> out12 [cpsw cpts hw3_push] */
			K3_TS_OFFSET(12, 17)
			>;
	};
};


&cluster0 {
	/delete-node/ core1;
	/delete-node/ core2;
	/delete-node/ core3;
};

And here is my output converting the dtb back to a dts using the dtc too:

/dts-v1/;

/ {
	model = "Texas Instruments AM62A7";
	compatible = "ti,am62a7";
	interrupt-parent = <0x01>;
	#address-cells = <0x02>;
	#size-cells = <0x02>;

	chosen {
		stdout-path = "serial2:115200n8";
		bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
	};

	firmware {

		optee {
			compatible = "linaro,optee-tz";
			method = "smc";
		};

		psci {
			compatible = "arm,psci-1.0";
			method = "smc";
			phandle = <0x37>;
		};
	};

	timer-cl0-cpu0 {
		compatible = "arm,armv8-timer";
		interrupts = <0x01 0x0d 0x08 0x01 0x0e 0x08 0x01 0x0b 0x08 0x01 0x0a 0x08>;
		phandle = <0x38>;
	};

	pmu {
		compatible = "arm,cortex-a53-pmu";
		interrupts = <0x01 0x07 0x04>;
		phandle = <0x39>;
	};

	bus@f0000 {
		compatible = "simple-bus";
		#address-cells = <0x02>;
		#size-cells = <0x02>;
		ranges = <0x00 0xf0000 0x00 0xf0000 0x00 0x30000 0x00 0x420000 0x00 0x420000 0x00 0x1000 0x00 0x600000 0x00 0x600000 0x00 0x1100 0x00 0x703000 0x00 0x703000 0x00 0x200 0x00 0x70c000 0x00 0x70c000 0x00 0x200 0x00 0xa40000 0x00 0xa40000 0x00 0x800 0x00 0x1000000 0x00 0x1000000 0x00 0x1b28400 0x00 0x8000000 0x00 0x8000000 0x00 0x200000 0x00 0xe000000 0x00 0xe000000 0x00 0x1d20000 0x00 0xfd00000 0x00 0xfd00000 0x00 0x20000 0x00 0xfd20000 0x00 0xfd20000 0x00 0x100 0x00 0xfd20200 0x00 0xfd20200 0x00 0x200 0x00 0x20000000 0x00 0x20000000 0x00 0xa008000 0x00 0x30040000 0x00 0x30040000 0x00 0x80000 0x00 0x30101000 0x00 0x30101000 0x00 0x10100 0x00 0x30200000 0x00 0x30200000 0x00 0x10000 0x00 0x30210000 0x00 0x30210000 0x00 0x10000 0x00 0x31000000 0x00 0x31000000 0x00 0x50000 0x00 0x31100000 0x00 0x31100000 0x00 0x50000 0x00 0x40900000 0x00 0x40900000 0x00 0x30000 0x00 0x43600000 0x00 0x43600000 0x00 0x10000 0x00 0x44043000 0x00 0x44043000 0x00 0xfe0 0x00 0x44860000 0x00 0x44860000 0x00 0x40000 0x00 0x48000000 0x00 0x48000000 0x00 0x6400000 0x00 0x60000000 0x00 0x60000000 0x00 0x8000000 0x00 0x70000000 0x00 0x70000000 0x00 0x10000 0x00 0x7e000000 0x00 0x7e000000 0x00 0x100000 0x01 0x00 0x01 0x00 0x00 0x310000 0x05 0x00 0x05 0x00 0x01 0x00 0x00 0x4000000 0x00 0x4000000 0x00 0x1ff1400 0x00 0x79000000 0x00 0x79000000 0x00 0x8000 0x00 0x79020000 0x00 0x79020000 0x00 0x8000 0x00 0x79100000 0x00 0x79100000 0x00 0x40000 0x00 0x79140000 0x00 0x79140000 0x00 0x40000 0x00 0xb00000 0x00 0xb00000 0x00 0x2400 0x00 0x2b000000 0x00 0x2b000000 0x00 0x300400 0x00 0x43000000 0x00 0x43000000 0x00 0x20000 0x00 0x78000000 0x00 0x78000000 0x00 0x8000 0x00 0x78100000 0x00 0x78100000 0x00 0x8000>;
		phandle = <0x3a>;

		bus@4000000 {
			compatible = "simple-bus";
			#address-cells = <0x02>;
			#size-cells = <0x02>;
			ranges = <0x00 0x4000000 0x00 0x4000000 0x00 0x1ff1400 0x00 0x79000000 0x00 0x79000000 0x00 0x8000 0x00 0x79020000 0x00 0x79020000 0x00 0x8000 0x00 0x79100000 0x00 0x79100000 0x00 0x40000 0x00 0x79140000 0x00 0x79140000 0x00 0x40000>;
			phandle = <0x3b>;

			sram@79100000 {
				compatible = "mmio-sram";
				reg = <0x00 0x79100000 0x00 0x80000>;
				ranges = <0x00 0x00 0x79100000 0x80000>;
				#address-cells = <0x01>;
				#size-cells = <0x01>;
				phandle = <0x07>;

				mcu_sram1@0 {
					reg = <0x00 0x80000>;
				};
			};

			pinctrl@4084000 {
				compatible = "pinctrl-single";
				reg = <0x00 0x4084000 0x00 0x88>;
				#pinctrl-cells = <0x01>;
				pinctrl-single,register-width = <0x20>;
				pinctrl-single,function-mask = <0xffffffff>;
				status = "okay";
				phandle = <0x3c>;

				pmic-irq-pins-default {
					pinctrl-single,pins = <0x00 0x50007>;
					phandle = <0x18>;
				};
			};

			timer@4800000 {
				compatible = "ti,am654-timer";
				reg = <0x00 0x4800000 0x00 0x400>;
				clocks = <0x02 0x23 0x02>;
				clock-names = "fck";
				power-domains = <0x03 0x23 0x01>;
				ti,timer-pwm;
				status = "reserved";
				phandle = <0x3d>;
			};

			timer@4810000 {
				compatible = "ti,am654-timer";
				reg = <0x00 0x4810000 0x00 0x400>;
				clocks = <0x02 0x30 0x02>;
				clock-names = "fck";
				power-domains = <0x03 0x30 0x01>;
				ti,timer-pwm;
				status = "reserved";
				phandle = <0x3e>;
			};

			timer@4820000 {
				compatible = "ti,am654-timer";
				reg = <0x00 0x4820000 0x00 0x400>;
				clocks = <0x02 0x31 0x02>;
				clock-names = "fck";
				power-domains = <0x03 0x31 0x01>;
				ti,timer-pwm;
				status = "reserved";
				phandle = <0x3f>;
			};

			timer@4830000 {
				compatible = "ti,am654-timer";
				reg = <0x00 0x4830000 0x00 0x400>;
				clocks = <0x02 0x32 0x02>;
				clock-names = "fck";
				power-domains = <0x03 0x32 0x01>;
				ti,timer-pwm;
				status = "reserved";
				phandle = <0x40>;
			};

			interrupt-controller@4210000 {
				compatible = "ti,sci-intr";
				reg = <0x00 0x4210000 0x00 0x200>;
				ti,intr-trigger-type = <0x01>;
				interrupt-controller;
				interrupt-parent = <0x01>;
				#interrupt-cells = <0x01>;
				ti,sci = <0x04>;
				ti,sci-dev-id = <0x05>;
				ti,interrupt-ranges = <0x00 0x68 0x04>;
				phandle = <0x05>;
			};

			gpio@4201000 {
				compatible = "ti,am64-gpio\0ti,keystone-gpio";
				reg = <0x00 0x4201000 0x00 0x100>;
				gpio-controller;
				#gpio-cells = <0x02>;
				interrupt-parent = <0x05>;
				interrupts = <0x1e 0x1f>;
				interrupt-controller;
				#interrupt-cells = <0x02>;
				ti,ngpio = <0x18>;
				ti,davinci-gpio-unbanked = <0x00>;
				power-domains = <0x03 0x4f 0x01>;
				clocks = <0x02 0x4f 0x00>;
				clock-names = "gpio";
				status = "okay";
				phandle = <0x19>;
			};

			r5fss@79000000 {
				compatible = "ti,am62-r5fss";
				#address-cells = <0x01>;
				#size-cells = <0x01>;
				ranges = <0x79000000 0x00 0x79000000 0x8000 0x79020000 0x00 0x79020000 0x8000>;
				power-domains = <0x03 0x07 0x01>;
				phandle = <0x41>;

				r5f@79000000 {
					compatible = "ti,am62-r5f";
					reg = <0x79000000 0x8000 0x79020000 0x8000>;
					reg-names = "atcm\0btcm";
					ti,sci = <0x04>;
					ti,sci-dev-id = <0x09>;
					ti,sci-proc-ids = <0x03 0xff>;
					resets = <0x06 0x09 0x01>;
					firmware-name = "am62a-mcu-r5f0_0-fw";
					ti,atcm-enable = <0x00>;
					ti,btcm-enable = <0x01>;
					ti,loczrama = <0x00>;
					sram = <0x07>;
					mboxes = <0x08 0x09>;
					memory-region = <0x0a 0x0b>;
					phandle = <0x42>;
				};
			};
		};

		bus@b00000 {
			compatible = "simple-bus";
			#address-cells = <0x02>;
			#size-cells = <0x02>;
			ranges = <0x00 0xb00000 0x00 0xb00000 0x00 0x2400 0x00 0x2b000000 0x00 0x2b000000 0x00 0x300400 0x00 0x43000000 0x00 0x43000000 0x00 0x20000 0x00 0x78000000 0x00 0x78000000 0x00 0x8000 0x00 0x78100000 0x00 0x78100000 0x00 0x8000>;
			phandle = <0x43>;

			syscon@43000000 {
				compatible = "ti,j721e-system-controller\0syscon\0simple-mfd";
				reg = <0x00 0x43000000 0x00 0x20000>;
				#address-cells = <0x01>;
				#size-cells = <0x01>;
				ranges = <0x00 0x00 0x43000000 0x20000>;
				phandle = <0x27>;

				chipid@14 {
					compatible = "ti,am654-chipid";
					reg = <0x14 0x04>;
					phandle = <0x44>;
				};
			};

			r5fss@78000000 {
				compatible = "ti,am62-r5fss";
				#address-cells = <0x01>;
				#size-cells = <0x01>;
				ranges = <0x78000000 0x00 0x78000000 0x8000 0x78100000 0x00 0x78100000 0x8000>;
				power-domains = <0x03 0x77 0x01>;
				phandle = <0x45>;

				r5f@78000000 {
					compatible = "ti,am62-r5f";
					reg = <0x78000000 0x8000 0x78100000 0x8000>;
					reg-names = "atcm\0btcm";
					ti,sci = <0x04>;
					ti,sci-dev-id = <0x79>;
					ti,sci-proc-ids = <0x01 0xff>;
					resets = <0x06 0x79 0x01>;
					firmware-name = "am62-wkup-r5f0_0-fw";
					ti,atcm-enable = <0x01>;
					ti,btcm-enable = <0x01>;
					ti,loczrama = <0x01>;
					mboxes = <0x0c 0x0d>;
					memory-region = <0x0e 0x0f>;
					phandle = <0x46>;
				};
			};

			temperature-sensor@b00000 {
				compatible = "ti,j7200-vtm";
				reg = <0x00 0xb00000 0x00 0x400 0x00 0xb01000 0x00 0x400>;
				power-domains = <0x03 0x5f 0x01>;
				#thermal-sensor-cells = <0x01>;
				phandle = <0x47>;
			};
		};

		sram@70000000 {
			compatible = "mmio-sram";
			reg = <0x00 0x70000000 0x00 0x10000>;
			#address-cells = <0x01>;
			#size-cells = <0x01>;
			ranges = <0x00 0x00 0x70000000 0x10000>;
			phandle = <0x2c>;
		};

		interrupt-controller@1800000 {
			compatible = "arm,gic-v3";
			reg = <0x00 0x1800000 0x00 0x10000 0x00 0x1880000 0x00 0xc0000 0x00 0x1880000 0x00 0xc0000 0x01 0x00 0x00 0x2000 0x01 0x10000 0x00 0x1000 0x01 0x20000 0x00 0x2000>;
			#address-cells = <0x02>;
			#size-cells = <0x02>;
			ranges;
			#interrupt-cells = <0x03>;
			interrupt-controller;
			interrupts = <0x01 0x09 0x04>;
			phandle = <0x01>;

			msi-controller@1820000 {
				compatible = "arm,gic-v3-its";
				reg = <0x00 0x1820000 0x00 0x10000>;
				socionext,synquacer-pre-its = <0x1000000 0x400000>;
				msi-controller;
				#msi-cells = <0x01>;
				phandle = <0x48>;
			};
		};

		syscon@100000 {
			compatible = "ti,j721e-system-controller\0syscon\0simple-mfd";
			reg = <0x00 0x100000 0x00 0x20000>;
			#address-cells = <0x01>;
			#size-cells = <0x01>;
			ranges = <0x00 0x00 0x100000 0x20000>;
			phandle = <0x49>;

			phy@4044 {
				compatible = "ti,am654-phy-gmii-sel";
				reg = <0x4044 0x08>;
				#phy-cells = <0x01>;
				phandle = <0x26>;
			};

			clock@82e0 {
				compatible = "ti,am62-audio-refclk";
				reg = <0x82e0 0x04>;
				clocks = <0x02 0x9d 0x00>;
				assigned-clocks = <0x02 0x9d 0x00>;
				assigned-clock-parents = <0x02 0x9d 0x08>;
				#clock-cells = <0x00>;
				phandle = <0x4a>;
			};

			clock@82e4 {
				compatible = "ti,am62-audio-refclk";
				reg = <0x82e4 0x04>;
				clocks = <0x02 0x9d 0x0a>;
				assigned-clocks = <0x02 0x9d 0x0a>;
				assigned-clock-parents = <0x02 0x9d 0x12>;
				#clock-cells = <0x00>;
				phandle = <0x4b>;
			};
		};

		bus@48000000 {
			compatible = "simple-bus";
			#address-cells = <0x02>;
			#size-cells = <0x02>;
			dma-ranges;
			ranges = <0x00 0x48000000 0x00 0x48000000 0x00 0x6000000>;
			ti,sci-dev-id = <0x19>;
			phandle = <0x4c>;

			mailbox@4d000000 {
				compatible = "ti,am654-secure-proxy";
				reg = <0x00 0x4d000000 0x00 0x80000 0x00 0x4a600000 0x00 0x80000 0x00 0x4a400000 0x00 0x80000>;
				reg-names = "target_data\0rt\0scfg";
				#mbox-cells = <0x01>;
				interrupt-names = "rx_012";
				interrupts = <0x00 0x22 0x04>;
				phandle = <0x15>;
			};

			interrupt-controller@48000000 {
				compatible = "ti,sci-inta";
				reg = <0x00 0x48000000 0x00 0x100000>;
				#interrupt-cells = <0x00>;
				interrupt-controller;
				interrupt-parent = <0x01>;
				msi-controller;
				ti,sci = <0x04>;
				ti,sci-dev-id = <0x1c>;
				ti,interrupt-ranges = <0x06 0x46 0x22>;
				ti,unmapped-event-sources = <0x10 0x11>;
				phandle = <0x12>;
			};

			dma-controller@485c0100 {
				compatible = "ti,am64-dmss-bcdma";
				reg = <0x00 0x485c0100 0x00 0x100 0x00 0x4c000000 0x00 0x20000 0x00 0x4a820000 0x00 0x20000 0x00 0x4aa40000 0x00 0x20000 0x00 0x4bc00000 0x00 0x100000>;
				reg-names = "gcfg\0bchanrt\0rchanrt\0tchanrt\0ringrt";
				msi-parent = <0x12>;
				#dma-cells = <0x03>;
				ti,sci = <0x04>;
				ti,sci-dev-id = <0x1a>;
				ti,sci-rm-range-bchan = <0x20>;
				ti,sci-rm-range-rchan = <0x21>;
				ti,sci-rm-range-tchan = <0x22>;
				phandle = <0x10>;
			};

			dma-controller@485c0000 {
				compatible = "ti,am64-dmss-pktdma";
				reg = <0x00 0x485c0000 0x00 0x100 0x00 0x4a800000 0x00 0x20000 0x00 0x4aa00000 0x00 0x40000 0x00 0x4b800000 0x00 0x400000>;
				reg-names = "gcfg\0rchanrt\0tchanrt\0ringrt";
				msi-parent = <0x12>;
				#dma-cells = <0x02>;
				ti,sci = <0x04>;
				ti,sci-dev-id = <0x1e>;
				ti,sci-rm-range-tchan = <0x23 0x24 0x25 0x26>;
				ti,sci-rm-range-tflow = <0x10 0x11 0x12 0x13>;
				ti,sci-rm-range-rchan = <0x29 0x2b 0x2d 0x2f 0x31 0x33>;
				ti,sci-rm-range-rflow = <0x2a 0x2c 0x2e 0x32>;
				phandle = <0x11>;
			};
		};

		bus@4e000000 {
			compatible = "simple-bus";
			#address-cells = <0x02>;
			#size-cells = <0x02>;
			dma-ranges;
			ranges = <0x00 0x4e000000 0x00 0x4e000000 0x00 0x300000>;
			ti,sci-dev-id = <0xc6>;
			phandle = <0x4d>;

			interrupt-controller@4e0a0000 {
				compatible = "ti,sci-inta";
				reg = <0x00 0x4e0a0000 0x00 0x8000>;
				#interrupt-cells = <0x00>;
				interrupt-controller;
				interrupt-parent = <0x01>;
				msi-controller;
				ti,sci = <0x04>;
				ti,sci-dev-id = <0xc8>;
				ti,interrupt-ranges = <0x00 0xed 0x08>;
				ti,unmapped-event-sources = <0x13>;
				power-domains = <0x03 0xb6 0x01>;
				phandle = <0x14>;
			};

			dma-controller@4e230000 {
				compatible = "ti,am62a-dmss-bcdma-csirx";
				reg = <0x00 0x4e230000 0x00 0x100 0x00 0x4e180000 0x00 0x8000 0x00 0x4e100000 0x00 0x10000>;
				reg-names = "gcfg\0rchanrt\0ringrt";
				msi-parent = <0x14>;
				#dma-cells = <0x03>;
				ti,sci = <0x04>;
				ti,sci-dev-id = <0xc7>;
				ti,sci-rm-range-rchan = <0x21>;
				power-domains = <0x03 0xb6 0x01>;
				phandle = <0x13>;
			};
		};

		system-controller@44043000 {
			compatible = "ti,k2g-sci";
			reg = <0x00 0x44043000 0x00 0xfe0>;
			reg-names = "debug_messages";
			ti,host-id = <0x0c>;
			mbox-names = "rx\0tx";
			mboxes = <0x15 0x0c 0x15 0x0d>;
			phandle = <0x04>;

			power-controller {
				compatible = "ti,sci-pm-domain";
				#power-domain-cells = <0x02>;
				phandle = <0x03>;
			};

			clock-controller {
				compatible = "ti,k2g-sci-clk";
				#clock-cells = <0x02>;
				phandle = <0x02>;
			};

			reset-controller {
				compatible = "ti,sci-reset";
				#reset-cells = <0x02>;
				phandle = <0x06>;
			};
		};

		pinctrl@f4000 {
			compatible = "pinctrl-single";
			reg = <0x00 0xf4000 0x00 0x2ac>;
			#pinctrl-cells = <0x01>;
			pinctrl-single,register-width = <0x20>;
			pinctrl-single,function-mask = <0xffffffff>;
			phandle = <0x4e>;

			main-uart0-pins-default {
				pinctrl-single,pins = <0x1c8 0x50000 0x1cc 0x10000>;
				phandle = <0x16>;
			};

			main-mmc0-pins-default {
				pinctrl-single,pins = <0x220 0x50000 0x218 0x50000 0x21c 0x50000 0x214 0x50000 0x210 0x60000 0x20c 0x60000 0x208 0x60000 0x204 0x60000 0x200 0x60000 0x1fc 0x60000 0x1f8 0x60000>;
				phandle = <0x21>;
			};

			main-mmc1-pins-default {
				pinctrl-single,pins = <0x23c 0x50000 0x234 0x50000 0x230 0x50000 0x22c 0x50000 0x228 0x50000 0x224 0x50000 0x240 0x50000>;
				phandle = <0x24>;
			};

			main-mdio1-pins-default {
				pinctrl-single,pins = <0x160 0x10000 0x15c 0x50000>;
				phandle = <0x29>;
			};

			main-rgmii1-pins-default {
				pinctrl-single,pins = <0x14c 0x50000 0x150 0x50000 0x154 0x50000 0x158 0x50000 0x148 0x50000 0x144 0x50000 0x134 0x50000 0x138 0x50000 0x13c 0x50000 0x140 0x50000 0x130 0x50000 0x12c 0x50000>;
				phandle = <0x25>;
			};

			main-i2c2-pins-default {
				pinctrl-single,pins = <0xb0 0x60001 0xb4 0x60001>;
				phandle = <0x1f>;
			};

			main-i2c0-pins-default {
				pinctrl-single,pins = <0x1e0 0x60000 0x1e4 0x60000>;
				phandle = <0x17>;
			};

			main-i2c1-pins-default {
				pinctrl-single,pins = <0x1e8 0x60000 0x1ec 0x60000>;
				phandle = <0x1c>;
			};

			main-gpio1-ioexp-intr-pins-default {
				pinctrl-single,pins = <0x1d4 0x50007>;
				phandle = <0x1e>;
			};

			usr-led-pins-default {
				pinctrl-single,pins = <0x244 0x10007>;
				phandle = <0x36>;
			};

			vddshv-sdio-pins-default {
				pinctrl-single,pins = <0x7c 0x10007>;
				phandle = <0x33>;
			};
		};

		timer@2400000 {
			compatible = "ti,am654-timer";
			reg = <0x00 0x2400000 0x00 0x400>;
			interrupts = <0x00 0x78 0x04>;
			clocks = <0x02 0x24 0x02>;
			clock-names = "fck";
			assigned-clocks = <0x02 0x24 0x02>;
			assigned-clock-parents = <0x02 0x24 0x03>;
			power-domains = <0x03 0x24 0x01>;
			ti,timer-pwm;
			phandle = <0x4f>;
		};

		timer@2410000 {
			compatible = "ti,am654-timer";
			reg = <0x00 0x2410000 0x00 0x400>;
			interrupts = <0x00 0x79 0x04>;
			clocks = <0x02 0x25 0x02>;
			clock-names = "fck";
			assigned-clocks = <0x02 0x25 0x02>;
			assigned-clock-parents = <0x02 0x25 0x03>;
			power-domains = <0x03 0x25 0x01>;
			ti,timer-pwm;
			phandle = <0x50>;
		};

		timer@2420000 {
			compatible = "ti,am654-timer";
			reg = <0x00 0x2420000 0x00 0x400>;
			interrupts = <0x00 0x7a 0x04>;
			clocks = <0x02 0x26 0x02>;
			clock-names = "fck";
			assigned-clocks = <0x02 0x26 0x02>;
			assigned-clock-parents = <0x02 0x26 0x03>;
			power-domains = <0x03 0x26 0x01>;
			ti,timer-pwm;
			phandle = <0x51>;
		};

		timer@2430000 {
			compatible = "ti,am654-timer";
			reg = <0x00 0x2430000 0x00 0x400>;
			interrupts = <0x00 0x7b 0x04>;
			clocks = <0x02 0x27 0x02>;
			clock-names = "fck";
			assigned-clocks = <0x02 0x27 0x02>;
			assigned-clock-parents = <0x02 0x27 0x03>;
			power-domains = <0x03 0x27 0x01>;
			ti,timer-pwm;
			phandle = <0x52>;
		};

		timer@2440000 {
			compatible = "ti,am654-timer";
			reg = <0x00 0x2440000 0x00 0x400>;
			interrupts = <0x00 0x7c 0x04>;
			clocks = <0x02 0x28 0x02>;
			clock-names = "fck";
			assigned-clocks = <0x02 0x28 0x02>;
			assigned-clock-parents = <0x02 0x28 0x03>;
			power-domains = <0x03 0x28 0x01>;
			ti,timer-pwm;
			phandle = <0x53>;
		};

		timer@2450000 {
			compatible = "ti,am654-timer";
			reg = <0x00 0x2450000 0x00 0x400>;
			interrupts = <0x00 0x7d 0x04>;
			clocks = <0x02 0x29 0x02>;
			clock-names = "fck";
			assigned-clocks = <0x02 0x29 0x02>;
			assigned-clock-parents = <0x02 0x29 0x03>;
			power-domains = <0x03 0x29 0x01>;
			ti,timer-pwm;
			phandle = <0x54>;
		};

		timer@2460000 {
			compatible = "ti,am654-timer";
			reg = <0x00 0x2460000 0x00 0x400>;
			interrupts = <0x00 0x7e 0x04>;
			clocks = <0x02 0x2a 0x02>;
			clock-names = "fck";
			assigned-clocks = <0x02 0x2a 0x02>;
			assigned-clock-parents = <0x02 0x2a 0x03>;
			power-domains = <0x03 0x2a 0x01>;
			ti,timer-pwm;
			phandle = <0x55>;
		};

		timer@2470000 {
			compatible = "ti,am654-timer";
			reg = <0x00 0x2470000 0x00 0x400>;
			interrupts = <0x00 0x7f 0x04>;
			clocks = <0x02 0x2b 0x02>;
			clock-names = "fck";
			assigned-clocks = <0x02 0x2b 0x02>;
			assigned-clock-parents = <0x02 0x2b 0x03>;
			power-domains = <0x03 0x2b 0x01>;
			ti,timer-pwm;
			phandle = <0x56>;
		};

		serial@2800000 {
			compatible = "ti,am64-uart\0ti,am654-uart";
			reg = <0x00 0x2800000 0x00 0x100>;
			interrupts = <0x00 0xb2 0x04>;
			power-domains = <0x03 0x92 0x01>;
			clocks = <0x02 0x92 0x00>;
			clock-names = "fclk";
			status = "okay";
			pinctrl-names = "default";
			pinctrl-0 = <0x16>;
			phandle = <0x57>;
		};

		i2c@20000000 {
			compatible = "ti,am64-i2c\0ti,omap4-i2c";
			reg = <0x00 0x20000000 0x00 0x100>;
			interrupts = <0x00 0xa1 0x04>;
			#address-cells = <0x01>;
			#size-cells = <0x00>;
			power-domains = <0x03 0x66 0x01>;
			clocks = <0x02 0x66 0x02>;
			clock-names = "fck";
			status = "okay";
			pinctrl-names = "default";
			pinctrl-0 = <0x17>;
			clock-frequency = <0x61a80>;
			phandle = <0x58>;

			pmic@48 {
				compatible = "ti,tps6593-q1";
				reg = <0x48>;
				ti,primary-pmic;
				system-power-controller;
				gpio-controller;
				#gpio-cells = <0x02>;
				pinctrl-names = "default";
				pinctrl-0 = <0x18>;
				interrupt-parent = <0x19>;
				interrupts = <0x00 0x02>;
				buck123-supply = <0x1a>;
				buck4-supply = <0x1a>;
				buck5-supply = <0x1a>;
				ldo1-supply = <0x1a>;
				ldo2-supply = <0x1a>;
				ldo3-supply = <0x1b>;
				ldo4-supply = <0x1a>;
				phandle = <0x59>;

				regulators {

					buck123 {
						regulator-name = "vcc_core";
						regulator-min-microvolt = <0xae8f8>;
						regulator-max-microvolt = <0xda818>;
						regulator-boot-on;
						regulator-always-on;
						phandle = <0x5a>;
					};

					buck4 {
						regulator-name = "vcc_1v1";
						regulator-min-microvolt = <0x10c8e0>;
						regulator-max-microvolt = <0x10c8e0>;
						regulator-boot-on;
						regulator-always-on;
						phandle = <0x5b>;
					};

					buck5 {
						regulator-name = "vcc_1v8_sys";
						regulator-min-microvolt = <0x1b7740>;
						regulator-max-microvolt = <0x1b7740>;
						regulator-boot-on;
						regulator-always-on;
						phandle = <0x1b>;
					};

					ldo1 {
						regulator-name = "vddshv5_sdio";
						regulator-min-microvolt = <0x325aa0>;
						regulator-max-microvolt = <0x325aa0>;
						regulator-boot-on;
						regulator-always-on;
						phandle = <0x34>;
					};

					ldo2 {
						regulator-name = "vpp_1v8";
						regulator-min-microvolt = <0x1b7740>;
						regulator-max-microvolt = <0x1b7740>;
						regulator-boot-on;
						regulator-always-on;
						phandle = <0x5c>;
					};

					ldo3 {
						regulator-name = "vcc_0v85";
						regulator-min-microvolt = <0xcf850>;
						regulator-max-microvolt = <0xcf850>;
						regulator-boot-on;
						regulator-always-on;
						phandle = <0x5d>;
					};

					ldo4 {
						regulator-name = "vdda_1v8";
						regulator-min-microvolt = <0x1b7740>;
						regulator-max-microvolt = <0x1b7740>;
						regulator-boot-on;
						regulator-always-on;
						phandle = <0x5e>;
					};
				};
			};
		};

		i2c@20010000 {
			compatible = "ti,am64-i2c\0ti,omap4-i2c";
			reg = <0x00 0x20010000 0x00 0x100>;
			interrupts = <0x00 0xa2 0x04>;
			#address-cells = <0x01>;
			#size-cells = <0x00>;
			power-domains = <0x03 0x67 0x01>;
			clocks = <0x02 0x67 0x02>;
			clock-names = "fck";
			status = "okay";
			pinctrl-names = "default";
			pinctrl-0 = <0x1c>;
			clock-frequency = <0x186a0>;
			phandle = <0x5f>;

			gpio@22 {
				compatible = "ti,tca6424";
				reg = <0x22>;
				gpio-controller;
				#gpio-cells = <0x02>;
				interrupt-parent = <0x1d>;
				interrupts = <0x17 0x02>;
				interrupt-controller;
				#interrupt-cells = <0x02>;
				gpio-line-names = "GPIO_CPSW2_RST\0GPIO_CPSW1_RST\0BT_EN_SOC\0MMC1_SD_EN\0VPP_EN\0EXP_PS_3V3_En\0EXP_PS_5V0_En\0EXP_HAT_DETECT\0GPIO_AUD_RSTn\0GPIO_eMMC_RSTn\0UART1_FET_BUF_EN\0BT_UART_WAKE_SOC\0GPIO_HDMI_RSTn\0CSI_GPIO0\0CSI_GPIO1\0WLAN_ALERTn\0HDMI_INTn\0TEST_GPIO2\0MCASP1_FET_EN\0MCASP1_BUF_BT_EN\0MCASP1_FET_SEL\0UART1_FET_SEL\0PD_I2C_IRQ\0IO_EXP_TEST_LED";
				pinctrl-names = "default";
				pinctrl-0 = <0x1e>;
				phandle = <0x31>;
			};

			gpio@23 {
				compatible = "ti,tca6424";
				reg = <0x23>;
				gpio-controller;
				#gpio-cells = <0x02>;
				gpio-line-names = "\0\0\0\0\0\0\0\0WL_LT_EN\0CSI_RSTz\0\0\0\0\0\0\0SPI0_FET_SEL\0SPI0_FET_OE\0RGMII2_BRD_CONN_DET\0CSI_SEL2\0CSI_EN\0AUTO_100M_1000M_CONFIG\0CSI_VLDO_SEL\0SoC_WLAN_SDIO_RST";
				phandle = <0x60>;
			};
		};

		i2c@20020000 {
			compatible = "ti,am64-i2c\0ti,omap4-i2c";
			reg = <0x00 0x20020000 0x00 0x100>;
			interrupts = <0x00 0xa3 0x04>;
			#address-cells = <0x01>;
			#size-cells = <0x00>;
			power-domains = <0x03 0x68 0x01>;
			clocks = <0x02 0x68 0x02>;
			clock-names = "fck";
			status = "okay";
			pinctrl-names = "default";
			pinctrl-0 = <0x1f>;
			clock-frequency = <0x61a80>;
			phandle = <0x61>;
		};

		interrupt-controller@a00000 {
			compatible = "ti,sci-intr";
			reg = <0x00 0xa00000 0x00 0x800>;
			ti,intr-trigger-type = <0x01>;
			interrupt-controller;
			interrupt-parent = <0x01>;
			#interrupt-cells = <0x01>;
			ti,sci = <0x04>;
			ti,sci-dev-id = <0x03>;
			ti,interrupt-ranges = <0x00 0x20 0x10>;
			status = "okay";
			phandle = <0x20>;
		};

		gpio@600000 {
			compatible = "ti,am64-gpio\0ti,keystone-gpio";
			reg = <0x00 0x600000 0x00 0x100>;
			gpio-controller;
			#gpio-cells = <0x02>;
			interrupt-parent = <0x20>;
			interrupts = <0xbe 0xbf 0xc0 0xc1 0xc2 0xc3>;
			interrupt-controller;
			#interrupt-cells = <0x02>;
			ti,ngpio = <0x5c>;
			ti,davinci-gpio-unbanked = <0x00>;
			power-domains = <0x03 0x4d 0x01>;
			clocks = <0x02 0x4d 0x00>;
			clock-names = "gpio";
			status = "okay";
			phandle = <0x35>;
		};

		gpio@601000 {
			compatible = "ti,am64-gpio\0ti,keystone-gpio";
			reg = <0x00 0x601000 0x00 0x100>;
			gpio-controller;
			#gpio-cells = <0x02>;
			interrupt-parent = <0x20>;
			interrupts = <0xb4 0xb5 0xb6 0xb7 0xb8 0xb9>;
			interrupt-controller;
			#interrupt-cells = <0x02>;
			ti,ngpio = <0x34>;
			ti,davinci-gpio-unbanked = <0x00>;
			power-domains = <0x03 0x4e 0x01>;
			clocks = <0x02 0x4e 0x00>;
			clock-names = "gpio";
			status = "okay";
			phandle = <0x1d>;
		};

		mmc@fa10000 {
			compatible = "ti,am62-sdhci";
			reg = <0x00 0xfa10000 0x00 0x260 0x00 0xfa18000 0x00 0x134>;
			interrupts = <0x00 0x85 0x04>;
			power-domains = <0x03 0x39 0x01>;
			clocks = <0x02 0x39 0x05 0x02 0x39 0x06>;
			clock-names = "clk_ahb\0clk_xin";
			assigned-clocks = <0x02 0x39 0x06>;
			assigned-clock-parents = <0x02 0x39 0x08>;
			mmc-hs200-1_8v;
			ti,trm-icp = <0x02>;
			bus-width = <0x08>;
			ti,clkbuf-sel = <0x07>;
			ti,otap-del-sel-legacy = <0x00>;
			ti,otap-del-sel-mmc-hs = <0x00>;
			ti,otap-del-sel-hs200 = <0x06>;
			status = "okay";
			pinctrl-names = "default";
			pinctrl-0 = <0x21>;
			ti,driver-strength-ohm = <0x32>;
			disable-wp;
			phandle = <0x62>;
		};

		mmc@fa00000 {
			compatible = "ti,am62-sdhci";
			reg = <0x00 0xfa00000 0x00 0x260 0x00 0xfa08000 0x00 0x134>;
			interrupts = <0x00 0x53 0x04>;
			power-domains = <0x03 0x3a 0x01>;
			clocks = <0x02 0x3a 0x05 0x02 0x3a 0x06>;
			clock-names = "clk_ahb\0clk_xin";
			ti,trm-icp = <0x02>;
			ti,otap-del-sel-legacy = <0x08>;
			ti,otap-del-sel-sd-hs = <0x00>;
			ti,otap-del-sel-sdr12 = <0x0f>;
			ti,otap-del-sel-sdr25 = <0x0f>;
			ti,otap-del-sel-sdr50 = <0x0c>;
			ti,otap-del-sel-sdr104 = <0x06>;
			ti,otap-del-sel-ddr50 = <0x09>;
			ti,itap-del-sel-legacy = <0x00>;
			ti,itap-del-sel-sd-hs = <0x00>;
			ti,itap-del-sel-sdr12 = <0x00>;
			ti,itap-del-sel-sdr25 = <0x00>;
			ti,clkbuf-sel = <0x07>;
			bus-width = <0x04>;
			status = "okay";
			vmmc-supply = <0x22>;
			vqmmc-supply = <0x23>;
			pinctrl-names = "default";
			pinctrl-0 = <0x24>;
			ti,driver-strength-ohm = <0x32>;
			disable-wp;
			phandle = <0x63>;
		};

		ethernet@8000000 {
			compatible = "ti,am642-cpsw-nuss";
			#address-cells = <0x02>;
			#size-cells = <0x02>;
			reg = <0x00 0x8000000 0x00 0x200000>;
			reg-names = "cpsw_nuss";
			ranges = <0x00 0x00 0x00 0x8000000 0x00 0x200000>;
			clocks = <0x02 0x0d 0x00>;
			assigned-clocks = <0x02 0x0d 0x03>;
			assigned-clock-parents = <0x02 0x0d 0x0b>;
			clock-names = "fck";
			power-domains = <0x03 0x0d 0x01>;
			status = "okay";
			dmas = <0x11 0xc600 0x0f 0x11 0xc601 0x0f 0x11 0xc602 0x0f 0x11 0xc603 0x0f 0x11 0xc604 0x0f 0x11 0xc605 0x0f 0x11 0xc606 0x0f 0x11 0xc607 0x0f 0x11 0x4600 0x0f>;
			dma-names = "tx0\0tx1\0tx2\0tx3\0tx4\0tx5\0tx6\0tx7\0rx";
			pinctrl-names = "default";
			pinctrl-0 = <0x25>;
			phandle = <0x64>;

			ethernet-ports {
				#address-cells = <0x01>;
				#size-cells = <0x00>;

				port@1 {
					reg = <0x01>;
					ti,mac-only;
					label = "port1";
					phys = <0x26 0x01>;
					mac-address = [00 00 00 00 00 00];
					ti,syscon-efuse = <0x27 0x200>;
					status = "okay";
					phy-mode = "rgmii-rxid";
					phy-handle = <0x28>;
					phandle = <0x65>;
				};

				port@2 {
					reg = <0x02>;
					ti,mac-only;
					label = "port2";
					phys = <0x26 0x02>;
					mac-address = [00 00 00 00 00 00];
					status = "disabled";
					phandle = <0x66>;
				};
			};

			mdio@f00 {
				compatible = "ti,cpsw-mdio\0ti,davinci_mdio";
				reg = <0x00 0xf00 0x00 0x100>;
				#address-cells = <0x01>;
				#size-cells = <0x00>;
				clocks = <0x02 0x0d 0x00>;
				clock-names = "fck";
				bus_freq = <0xf4240>;
				status = "okay";
				pinctrl-names = "default";
				pinctrl-0 = <0x29>;
				phandle = <0x67>;

				ethernet-phy@0 {
					reg = <0x00>;
					ti,rx-internal-delay = <0x07>;
					ti,fifo-depth = <0x01>;
					ti,min-output-impedance;
					phandle = <0x28>;
				};
			};

			cpts@3d000 {
				compatible = "ti,j721e-cpts";
				reg = <0x00 0x3d000 0x00 0x400>;
				clocks = <0x02 0x0d 0x03>;
				clock-names = "cpts";
				interrupts-extended = <0x01 0x00 0x66 0x04>;
				interrupt-names = "cpts";
				ti,cpts-ext-ts-inputs = <0x04>;
				ti,cpts-periodic-outputs = <0x02>;
			};
		};

		pinctrl@a40000 {
			compatible = "pinctrl-single";
			reg = <0x00 0xa40000 0x00 0x800>;
			#pinctrl-cells = <0x01>;
			pinctrl-single,register-width = <0x20>;
			pinctrl-single,function-mask = <0x107ff>;
			status = "okay";
			pinctrl-names = "default";
			pinctrl-0 = <0x2a>;
			phandle = <0x68>;

			cpsw-cpts {
				pinctrl-single,pins = <0x34 0x10011>;
				phandle = <0x2a>;
			};
		};

		spinlock@2a000000 {
			compatible = "ti,am64-hwspinlock";
			reg = <0x00 0x2a000000 0x00 0x1000>;
			#hwlock-cells = <0x01>;
			phandle = <0x69>;
		};

		mailbox@29000000 {
			compatible = "ti,am64-mailbox";
			reg = <0x00 0x29000000 0x00 0x200>;
			interrupts = <0x00 0x4c 0x04>;
			#mbox-cells = <0x01>;
			ti,mbox-num-users = <0x04>;
			ti,mbox-num-fifos = <0x10>;
			phandle = <0x0c>;

			mbox-r5-0 {
				ti,mbox-rx = <0x00 0x00 0x00>;
				ti,mbox-tx = <0x01 0x00 0x00>;
				phandle = <0x0d>;
			};
		};

		mailbox@29020000 {
			compatible = "ti,am64-mailbox";
			reg = <0x00 0x29020000 0x00 0x200>;
			interrupts = <0x00 0x6c 0x04>;
			#mbox-cells = <0x01>;
			ti,mbox-num-users = <0x04>;
			ti,mbox-num-fifos = <0x10>;
			phandle = <0x08>;

			mbox-mcu_r5-0 {
				ti,mbox-rx = <0x00 0x00 0x00>;
				ti,mbox-tx = <0x01 0x00 0x00>;
				phandle = <0x09>;
			};
		};

		ticsi2rx@30102000 {
			compatible = "ti,j721e-csi2rx";
			dmas = <0x13 0x00 0x5000 0x00 0x13 0x00 0x5001 0x00 0x13 0x00 0x5002 0x00 0x13 0x00 0x5003 0x00 0x13 0x00 0x5004 0x00 0x13 0x00 0x5005 0x00>;
			dma-names = "rx0\0rx1\0rx2\0rx3\0rx4\0rx5";
			reg = <0x00 0x30102000 0x00 0x1000>;
			power-domains = <0x03 0xb6 0x01>;
			#address-cells = <0x02>;
			#size-cells = <0x02>;
			ranges;
			status = "okay";
			phandle = <0x6a>;

			csi-bridge@30101000 {
				compatible = "cdns,csi2rx";
				reg = <0x00 0x30101000 0x00 0x1000>;
				clocks = <0x02 0xb6 0x00 0x02 0xb6 0x03 0x02 0xb6 0x00 0x02 0xb6 0x00 0x02 0xb6 0x04 0x02 0xb6 0x04>;
				clock-names = "sys_clk\0p_clk\0pixel_if0_clk\0pixel_if1_clk\0pixel_if2_clk\0pixel_if3_clk";
				phys = <0x2b>;
				phy-names = "dphy";
				power-domains = <0x03 0xb6 0x01>;
				phandle = <0x6b>;

				ports {
					#address-cells = <0x01>;
					#size-cells = <0x00>;

					port@0 {
						reg = <0x00>;
						status = "disabled";
						phandle = <0x6c>;
					};

					port@1 {
						reg = <0x01>;
						status = "disabled";
						phandle = <0x6d>;
					};

					port@2 {
						reg = <0x02>;
						status = "disabled";
						phandle = <0x6e>;
					};

					port@3 {
						reg = <0x03>;
						status = "disabled";
						phandle = <0x6f>;
					};

					port@4 {
						reg = <0x04>;
						status = "disabled";
						phandle = <0x70>;
					};
				};
			};
		};

		phy@30110000 {
			compatible = "cdns,dphy-rx";
			reg = <0x00 0x30110000 0x00 0x1100>;
			#phy-cells = <0x00>;
			power-domains = <0x03 0xb9 0x01>;
			status = "okay";
			phandle = <0x2b>;
		};

		video-codec@30210000 {
			compatible = "cnm,cm521c-vpu";
			reg = <0x00 0x30210000 0x00 0x10000>;
			clocks = <0x02 0xcc 0x02>;
			clock-names = "vcodec";
			power-domains = <0x03 0xcc 0x01>;
			sram = <0x2c>;
			sram-size = <0xf800>;
			phandle = <0x71>;
		};

		e5010@fd20000 {
			compatible = "img,e5010-jpeg-enc";
			reg = <0x00 0xfd20000 0x00 0x100 0x00 0xfd20200 0x00 0x200>;
			reg-names = "regjasper\0regmmu";
			clocks = <0x02 0xc9 0x00>;
			clock-names = "core_clk";
			power-domains = <0x03 0xc9 0x01>;
			interrupts = <0x00 0x62 0x04>;
			phandle = <0x72>;
		};
	};

	cpus {
		#address-cells = <0x01>;
		#size-cells = <0x00>;

		cpu-map {

			cluster0 {
				phandle = <0x73>;

				core0 {
					cpu = <0x2d>;
				};
			};
		};

		cpu@0 {
			compatible = "arm,cortex-a53";
			reg = <0x00>;
			device_type = "cpu";
			enable-method = "psci";
			i-cache-size = <0x8000>;
			i-cache-line-size = <0x40>;
			i-cache-sets = <0x100>;
			d-cache-size = <0x8000>;
			d-cache-line-size = <0x40>;
			d-cache-sets = <0x80>;
			next-level-cache = <0x2e>;
			operating-points-v2 = <0x2f>;
			clocks = <0x02 0x87 0x00>;
			phandle = <0x2d>;
		};
	};

	opp-table {
		compatible = "operating-points-v2-ti-cpu";
		opp-shared;
		syscon = <0x27>;
		phandle = <0x2f>;

		opp-200000000 {
			opp-hz = <0x00 0xbebc200>;
			opp-supported-hw = <0x01 0x07>;
			clock-latency-ns = <0x5b8d80>;
		};

		opp-400000000 {
			opp-hz = <0x00 0x17d78400>;
			opp-supported-hw = <0x01 0x07>;
			clock-latency-ns = <0x5b8d80>;
		};

		opp-600000000 {
			opp-hz = <0x00 0x23c34600>;
			opp-supported-hw = <0x01 0x07>;
			clock-latency-ns = <0x5b8d80>;
		};

		opp-800000000 {
			opp-hz = <0x00 0x2faf0800>;
			opp-supported-hw = <0x01 0x07>;
			clock-latency-ns = <0x5b8d80>;
		};

		opp-1000000000 {
			opp-hz = <0x00 0x3b9aca00>;
			opp-supported-hw = <0x01 0x06>;
			clock-latency-ns = <0x5b8d80>;
		};

		opp-1250000000 {
			opp-hz = <0x00 0x4a817c80>;
			opp-supported-hw = <0x01 0x04>;
			clock-latency-ns = <0x5b8d80>;
			opp-suspend;
		};
	};

	l2-cache0 {
		compatible = "cache";
		cache-unified;
		cache-level = <0x02>;
		cache-size = <0x80000>;
		cache-line-size = <0x40>;
		cache-sets = <0x200>;
		phandle = <0x2e>;
	};

	aliases {
		serial2 = "/bus@f0000/serial@2800000";
		mmc0 = "/bus@f0000/mmc@fa10000";
		mmc1 = "/bus@f0000/mmc@fa00000";
		ethernet0 = "/bus@f0000/ethernet@8000000/ethernet-ports/port@1";
	};

	memory@80000000 {
		device_type = "memory";
		reg = <0x00 0x80000000 0x00 0x80000000 0x08 0x80000000 0x00 0x80000000>;
	};

	dma_buf_phys {
		compatible = "ti,dma-buf-phys";
	};

	reserved-memory {
		#address-cells = <0x02>;
		#size-cells = <0x02>;
		ranges;

		linux,cma {
			compatible = "shared-dma-pool";
			reusable;
			size = <0x00 0x24000000>;
			alloc-ranges = <0x00 0xc0000000 0x00 0x24000000>;
			linux,cma-default;
		};

		tfa@9e780000 {
			reg = <0x00 0x9e780000 0x00 0x80000>;
			alignment = <0x1000>;
			no-map;
			phandle = <0x74>;
		};

		optee@9e800000 {
			reg = <0x00 0x9e800000 0x00 0x1800000>;
			alignment = <0x1000>;
			no-map;
			phandle = <0x75>;
		};

		r5f-dma-memory@9c800000 {
			compatible = "shared-dma-pool";
			reg = <0x00 0x9c800000 0x00 0x100000>;
			no-map;
			phandle = <0x0e>;
		};

		r5f-dma-memory@9c900000 {
			compatible = "shared-dma-pool";
			reg = <0x00 0x9c900000 0x00 0x1e00000>;
			no-map;
			phandle = <0x0f>;
		};

		r5f-dma-memory@9b800000 {
			compatible = "shared-dma-pool";
			reg = <0x00 0x9b800000 0x00 0x100000>;
			no-map;
			phandle = <0x0a>;
		};

		r5f-dma-memory@9b900000 {
			compatible = "shared-dma-pool";
			reg = <0x00 0x9b900000 0x00 0xf00000>;
			no-map;
			phandle = <0x0b>;
		};

		edgeai-rtos-ipc-memory-region {
			reg = <0x00 0xa0000000 0x00 0x1000000>;
			no-map;
			phandle = <0x76>;
		};

		edgeai-dma-memory@a1000000 {
			compatible = "shared-dma-pool";
			reg = <0x00 0xa1000000 0x00 0x2000000>;
			no-map;
			phandle = <0x77>;
		};

		edgeai_shared-memories {
			compatible = "dma-heap-carveout";
			reg = <0x00 0xa3000000 0x00 0xb000000>;
			phandle = <0x78>;
		};

		edgeai-core-heap-memory@ae000000 {
			compatible = "shared-dma-pool";
			reg = <0x00 0xae000000 0x00 0x12000000>;
			no-map;
			phandle = <0x79>;
		};
	};

	regulator-0 {
		compatible = "regulator-fixed";
		regulator-name = "vmain_pd";
		regulator-min-microvolt = <0x4c4b40>;
		regulator-max-microvolt = <0x4c4b40>;
		regulator-always-on;
		regulator-boot-on;
		phandle = <0x30>;
	};

	regulator-1 {
		compatible = "regulator-fixed";
		regulator-name = "vcc_5v0";
		regulator-min-microvolt = <0x4c4b40>;
		regulator-max-microvolt = <0x4c4b40>;
		vin-supply = <0x30>;
		regulator-always-on;
		regulator-boot-on;
		phandle = <0x7a>;
	};

	regulator-2 {
		compatible = "regulator-fixed";
		regulator-name = "vcc_3v3_main";
		regulator-min-microvolt = <0x325aa0>;
		regulator-max-microvolt = <0x325aa0>;
		vin-supply = <0x30>;
		regulator-always-on;
		regulator-boot-on;
		phandle = <0x32>;
	};

	regulator-3 {
		compatible = "regulator-fixed";
		regulator-name = "vdd_mmc1";
		regulator-min-microvolt = <0x325aa0>;
		regulator-max-microvolt = <0x325aa0>;
		regulator-boot-on;
		enable-active-high;
		gpio = <0x31 0x03 0x00>;
		phandle = <0x22>;
	};

	regulator-4 {
		compatible = "regulator-fixed";
		regulator-name = "vcc_3v3_sys";
		regulator-min-microvolt = <0x325aa0>;
		regulator-max-microvolt = <0x325aa0>;
		vin-supply = <0x32>;
		regulator-always-on;
		regulator-boot-on;
		phandle = <0x1a>;
	};

	regulator-5 {
		compatible = "regulator-gpio";
		regulator-name = "vddshv_sdio";
		pinctrl-names = "default";
		pinctrl-0 = <0x33>;
		regulator-min-microvolt = <0x1b7740>;
		regulator-max-microvolt = <0x325aa0>;
		regulator-boot-on;
		vin-supply = <0x34>;
		gpios = <0x35 0x1f 0x00>;
		states = <0x1b7740 0x00 0x325aa0 0x01>;
		phandle = <0x23>;
	};

	leds {
		compatible = "gpio-leds";
		pinctrl-names = "default";
		pinctrl-0 = <0x36>;

		led-0 {
			label = "am62a-sk:green:heartbeat";
			gpios = <0x1d 0x31 0x00>;
			linux,default-trigger = "heartbeat";
			function = "heartbeat";
			default-state = "off";
		};
	};

	__symbols__ {
		psci = "/firmware/psci";
		a53_timer0 = "/timer-cl0-cpu0";
		pmu = "/pmu";
		cbass_main = "/bus@f0000";
		cbass_mcu = "/bus@f0000/bus@4000000";
		mcu_ram = "/bus@f0000/bus@4000000/sram@79100000";
		mcu_pmx0 = "/bus@f0000/bus@4000000/pinctrl@4084000";
		pmic_irq_pins_default = "/bus@f0000/bus@4000000/pinctrl@4084000/pmic-irq-pins-default";
		mcu_timer0 = "/bus@f0000/bus@4000000/timer@4800000";
		mcu_timer1 = "/bus@f0000/bus@4000000/timer@4810000";
		mcu_timer2 = "/bus@f0000/bus@4000000/timer@4820000";
		mcu_timer3 = "/bus@f0000/bus@4000000/timer@4830000";
		mcu_gpio_intr = "/bus@f0000/bus@4000000/interrupt-controller@4210000";
		mcu_gpio0 = "/bus@f0000/bus@4000000/gpio@4201000";
		mcu_r5fss0 = "/bus@f0000/bus@4000000/r5fss@79000000";
		mcu_r5fss0_core0 = "/bus@f0000/bus@4000000/r5fss@79000000/r5f@79000000";
		cbass_wakeup = "/bus@f0000/bus@b00000";
		wkup_conf = "/bus@f0000/bus@b00000/syscon@43000000";
		chipid = "/bus@f0000/bus@b00000/syscon@43000000/chipid@14";
		wkup_r5fss0 = "/bus@f0000/bus@b00000/r5fss@78000000";
		wkup_r5fss0_core0 = "/bus@f0000/bus@b00000/r5fss@78000000/r5f@78000000";
		wkup_vtm0 = "/bus@f0000/bus@b00000/temperature-sensor@b00000";
		oc_sram = "/bus@f0000/sram@70000000";
		gic500 = "/bus@f0000/interrupt-controller@1800000";
		gic_its = "/bus@f0000/interrupt-controller@1800000/msi-controller@1820000";
		main_conf = "/bus@f0000/syscon@100000";
		phy_gmii_sel = "/bus@f0000/syscon@100000/phy@4044";
		audio_refclk0 = "/bus@f0000/syscon@100000/clock@82e0";
		audio_refclk1 = "/bus@f0000/syscon@100000/clock@82e4";
		dmss = "/bus@f0000/bus@48000000";
		secure_proxy_main = "/bus@f0000/bus@48000000/mailbox@4d000000";
		inta_main_dmss = "/bus@f0000/bus@48000000/interrupt-controller@48000000";
		main_bcdma = "/bus@f0000/bus@48000000/dma-controller@485c0100";
		main_pktdma = "/bus@f0000/bus@48000000/dma-controller@485c0000";
		dmss_csi = "/bus@f0000/bus@4e000000";
		inta_main_dmss_csi = "/bus@f0000/bus@4e000000/interrupt-controller@4e0a0000";
		main_bcdma_csi = "/bus@f0000/bus@4e000000/dma-controller@4e230000";
		dmsc = "/bus@f0000/system-controller@44043000";
		k3_pds = "/bus@f0000/system-controller@44043000/power-controller";
		k3_clks = "/bus@f0000/system-controller@44043000/clock-controller";
		k3_reset = "/bus@f0000/system-controller@44043000/reset-controller";
		main_pmx0 = "/bus@f0000/pinctrl@f4000";
		main_uart0_pins_default = "/bus@f0000/pinctrl@f4000/main-uart0-pins-default";
		main_mmc0_pins_default = "/bus@f0000/pinctrl@f4000/main-mmc0-pins-default";
		main_mmc1_pins_default = "/bus@f0000/pinctrl@f4000/main-mmc1-pins-default";
		main_mdio1_pins_default = "/bus@f0000/pinctrl@f4000/main-mdio1-pins-default";
		main_rgmii1_pins_default = "/bus@f0000/pinctrl@f4000/main-rgmii1-pins-default";
		main_i2c2_pins_default = "/bus@f0000/pinctrl@f4000/main-i2c2-pins-default";
		main_i2c0_pins_default = "/bus@f0000/pinctrl@f4000/main-i2c0-pins-default";
		main_i2c1_pins_default = "/bus@f0000/pinctrl@f4000/main-i2c1-pins-default";
		main_gpio1_ioexp_intr_pins_default = "/bus@f0000/pinctrl@f4000/main-gpio1-ioexp-intr-pins-default";
		usr_led_pins_default = "/bus@f0000/pinctrl@f4000/usr-led-pins-default";
		vddshv_sdio_pins_default = "/bus@f0000/pinctrl@f4000/vddshv-sdio-pins-default";
		main_timer0 = "/bus@f0000/timer@2400000";
		main_timer1 = "/bus@f0000/timer@2410000";
		main_timer2 = "/bus@f0000/timer@2420000";
		main_timer3 = "/bus@f0000/timer@2430000";
		main_timer4 = "/bus@f0000/timer@2440000";
		main_timer5 = "/bus@f0000/timer@2450000";
		main_timer6 = "/bus@f0000/timer@2460000";
		main_timer7 = "/bus@f0000/timer@2470000";
		main_uart0 = "/bus@f0000/serial@2800000";
		main_i2c0 = "/bus@f0000/i2c@20000000";
		tps659312 = "/bus@f0000/i2c@20000000/pmic@48";
		buck123 = "/bus@f0000/i2c@20000000/pmic@48/regulators/buck123";
		buck4 = "/bus@f0000/i2c@20000000/pmic@48/regulators/buck4";
		buck5 = "/bus@f0000/i2c@20000000/pmic@48/regulators/buck5";
		ldo1 = "/bus@f0000/i2c@20000000/pmic@48/regulators/ldo1";
		ldo2 = "/bus@f0000/i2c@20000000/pmic@48/regulators/ldo2";
		ldo3 = "/bus@f0000/i2c@20000000/pmic@48/regulators/ldo3";
		ldo4 = "/bus@f0000/i2c@20000000/pmic@48/regulators/ldo4";
		main_i2c1 = "/bus@f0000/i2c@20010000";
		exp1 = "/bus@f0000/i2c@20010000/gpio@22";
		exp2 = "/bus@f0000/i2c@20010000/gpio@23";
		main_i2c2 = "/bus@f0000/i2c@20020000";
		main_gpio_intr = "/bus@f0000/interrupt-controller@a00000";
		main_gpio0 = "/bus@f0000/gpio@600000";
		main_gpio1 = "/bus@f0000/gpio@601000";
		sdhci0 = "/bus@f0000/mmc@fa10000";
		sdhci1 = "/bus@f0000/mmc@fa00000";
		cpsw3g = "/bus@f0000/ethernet@8000000";
		cpsw_port1 = "/bus@f0000/ethernet@8000000/ethernet-ports/port@1";
		cpsw_port2 = "/bus@f0000/ethernet@8000000/ethernet-ports/port@2";
		cpsw3g_mdio = "/bus@f0000/ethernet@8000000/mdio@f00";
		cpsw3g_phy0 = "/bus@f0000/ethernet@8000000/mdio@f00/ethernet-phy@0";
		timesync_router = "/bus@f0000/pinctrl@a40000";
		cpsw_cpts = "/bus@f0000/pinctrl@a40000/cpsw-cpts";
		hwspinlock = "/bus@f0000/spinlock@2a000000";
		mailbox0_cluster0 = "/bus@f0000/mailbox@29000000";
		mbox_r5_0 = "/bus@f0000/mailbox@29000000/mbox-r5-0";
		mailbox0_cluster2 = "/bus@f0000/mailbox@29020000";
		mbox_mcu_r5_0 = "/bus@f0000/mailbox@29020000/mbox-mcu_r5-0";
		ti_csi2rx0 = "/bus@f0000/ticsi2rx@30102000";
		cdns_csi2rx0 = "/bus@f0000/ticsi2rx@30102000/csi-bridge@30101000";
		csi0_port0 = "/bus@f0000/ticsi2rx@30102000/csi-bridge@30101000/ports/port@0";
		csi0_port1 = "/bus@f0000/ticsi2rx@30102000/csi-bridge@30101000/ports/port@1";
		csi0_port2 = "/bus@f0000/ticsi2rx@30102000/csi-bridge@30101000/ports/port@2";
		csi0_port3 = "/bus@f0000/ticsi2rx@30102000/csi-bridge@30101000/ports/port@3";
		csi0_port4 = "/bus@f0000/ticsi2rx@30102000/csi-bridge@30101000/ports/port@4";
		dphy0 = "/bus@f0000/phy@30110000";
		vpu = "/bus@f0000/video-codec@30210000";
		e5010 = "/bus@f0000/e5010@fd20000";
		cluster0 = "/cpus/cpu-map/cluster0";
		cpu0 = "/cpus/cpu@0";
		a53_opp_table = "/opp-table";
		L2_0 = "/l2-cache0";
		secure_tfa_ddr = "/reserved-memory/tfa@9e780000";
		secure_ddr = "/reserved-memory/optee@9e800000";
		wkup_r5fss0_core0_dma_memory_region = "/reserved-memory/r5f-dma-memory@9c800000";
		wkup_r5fss0_core0_memory_region = "/reserved-memory/r5f-dma-memory@9c900000";
		mcu_r5fss0_core0_dma_memory_region = "/reserved-memory/r5f-dma-memory@9b800000";
		mcu_r5fss0_core0_memory_region = "/reserved-memory/r5f-dma-memory@9b900000";
		edgeai_rtos_ipc_memory_region = "/reserved-memory/edgeai-rtos-ipc-memory-region";
		edgeai_memory_region = "/reserved-memory/edgeai-dma-memory@a1000000";
		edgeai_shared_region = "/reserved-memory/edgeai_shared-memories";
		edgeai_core_heaps = "/reserved-memory/edgeai-core-heap-memory@ae000000";
		vmain_pd = "/regulator-0";
		vcc_5v0 = "/regulator-1";
		vcc_3v3_main = "/regulator-2";
		vdd_mmc1 = "/regulator-3";
		vcc_3v3_sys = "/regulator-4";
		vddshv_sdio = "/regulator-5";
	};
};

The DPHY node is there so I'm at a loss for what else could be causing the error after trying different things all day long (including adding in the MCU R5FSS related nodes, which I don't think are necessary).

I also don't understand why it complains about wkup_r5fss until I duplicated the "&cbass_wakeup" node but it looks like it should come from an include at the end of the k3-am62a.dtsi file.

Seems like I'm close but hoping someone with a sharper eye and more knowledge can help me get it fully working.

Thank you,

Steve T

  • Hello Steve,

    Have you started with the k3-am62a7-hello-world.dts, adding one peripheral at a time iteratively?

    I was able to successfully create a custom dtb using SDK 8.6 previously.

    Which peripherals were included in that custom dtb using SDK 8.6?

    Regards,

    Jianzhong

  • Hello Jianzhong,

    Thank you for the response. Yes I did attempt to systematically add peripherals starting with the hello-world dts. It seems that I did need to do some more debugging on my end because I've found that my my 8.6 dtb wasn't quite streaming encoded video either. Here is what I have now for my 8.6 dts that successfully streams:

    // SPDX-License-Identifier: GPL-2.0
    /*
     * AM62A SK: https://www.ti.com/lit/zip/sprr459
     *
     * Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/
     */
    
    /dts-v1/;
    
    #include <dt-bindings/leds/common.h>
    #include <dt-bindings/gpio/gpio.h>
    #include <dt-bindings/net/ti-dp83867.h>
    #include "k3-am62a7.dtsi"
    
    / {
    	compatible =  "ti,am62a7";
    	model = "Texas Instruments AM62A7";
    
    	aliases {
    		serial2 = &main_uart0;
    		mmc1 = &sdhci1;
    		ethernet0 = "/bus@f0000/ethernet@8000000/ethernet-ports/port@1";
    	};
    
    	chosen {
    		stdout-path = "serial2:115200n8";
    		bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
    	};
    
    	cpus {
    		/delete-node/ cpu@1;
    		/delete-node/ cpu@2;
    		/delete-node/ cpu@3;
    	};
    
    //	memory@80000000 {
    //		device_type = "memory";
    //		/* 2G RAM */
    //		reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
    //	};
    
    
    	memory@80000000 {
    		device_type = "memory";
    		/* 4G RAM */
    		reg = <0x00000000 0x80000000 0x00000000 0x80000000>,
    		      <0x00000008 0x80000000 0x00000000 0x80000000>;
    	};
    
    	dma_buf_phys {
    		compatible = "ti,dma-buf-phys";
    	};
    
    	reserved-memory {
    		#address-cells = <2>;
    		#size-cells = <2>;
    		ranges;
    
    		secure_tfa_ddr: tfa@9e780000 {
    			reg = <0x00 0x9e780000 0x00 0x80000>;
    			alignment = <0x1000>;
    			no-map;
    		};
    
    		secure_ddr: optee@9e800000 {
    			reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
    			alignment = <0x1000>;
    			no-map;
    		};
    
    		wkup_r5fss0_core0_dma_memory_region: r5f-dma-memory@9c800000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9c800000 0x00 0x100000>;
    			no-map;
    		};
    
    		wkup_r5fss0_core0_memory_region: r5f-dma-memory@9c900000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9c900000 0x00 0x01e00000>;
    			no-map;
    		};
    
    		mcu_r5fss0_core0_dma_memory_region: r5f-dma-memory@9b800000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9b800000 0x00 0x100000>;
    			no-map;
    		};
    
    		mcu_r5fss0_core0_memory_region: r5f-dma-memory@9b900000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9b900000 0x00 0x0f00000>;
    			no-map;
    		};
    
    		c7x_0_dma_memory_region: c7x-dma-memory@99800000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x99800000 0x00 0x100000>;
    			no-map;
    		};
    
    		c7x_0_memory_region: c7x-memory@99900000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x99900000 0x00 0x01efffff>;
    			no-map;
    		};
    
    		edgeai_rtos_ipc_memory_region: edgeai-rtos-ipc-memory-region {
    			reg = <0x00 0xa0000000 0x00 0x01000000>;
    			no-map;
    		};
    
    		edgeai_memory_region: edgeai-dma-memory@a1000000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0xa1000000 0x00 0x02000000>;
    			no-map;
    		};
    
    		edgeai_shared_region: edgeai_shared-memories {
    			compatible = "dma-heap-carveout";
    			reg = <0x00 0xa3000000 0x00 0x0b000000>;
    		};
    
    		edgeai_core_heaps: edgeai-core-heap-memory@ae000000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0xae000000 0x00 0x12000000>;
    			no-map;
    		};
    	};
    
    	vmain_pd: regulator-0 {
    		/* TPS25750 PD CONTROLLER OUTPUT */
    		compatible = "regulator-fixed";
    		regulator-name = "vmain_pd";
    		regulator-min-microvolt = <5000000>;
    		regulator-max-microvolt = <5000000>;
    		regulator-always-on;
    		regulator-boot-on;
    	};
    
    	vcc_5v0: regulator-1 {
    		/* Output of TPS63070 */
    		compatible = "regulator-fixed";
    		regulator-name = "vcc_5v0";
    		regulator-min-microvolt = <5000000>;
    		regulator-max-microvolt = <5000000>;
    		vin-supply = <&vmain_pd>;
    		regulator-always-on;
    		regulator-boot-on;
    	};
    
    	vcc_3v3_sys: regulator-2 {
    		/* output of LM5141-Q1 */
    		compatible = "regulator-fixed";
    		regulator-name = "vcc_3v3_sys";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		vin-supply = <&vmain_pd>;
    		regulator-always-on;
    		regulator-boot-on;
    	};
    
    	vdd_mmc1: regulator-3 {
    		/* TPS22918DBVR */
    		compatible = "regulator-fixed";
    		regulator-name = "vdd_mmc1";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		regulator-boot-on;
    		enable-active-high;
    		gpio = <&exp1 3 GPIO_ACTIVE_HIGH>;
    	};
    
    	leds {
    		compatible = "gpio-leds";
    		pinctrl-names = "default";
    		pinctrl-0 = <&usr_led_pins_default>;
    
    		led-0 {
    			label = "am62a-sk:green:heartbeat";
    			gpios = <&main_gpio1 49 GPIO_ACTIVE_HIGH>;
    			linux,default-trigger = "heartbeat";
    			function = LED_FUNCTION_HEARTBEAT;
    			default-state = "off";
    		};
    	};
    };
    
    	
    
    &main_pmx0 {
    	main_uart0_pins_default: main-uart0-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14) UART0_RXD */
    			AM62AX_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (E14) UART0_TXD */
    		>;
    	};
    
    	main_mmc1_pins_default: main-mmc1-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x23c, PIN_INPUT, 0) /* (A21) MMC1_CMD */
    			AM62AX_IOPAD(0x234, PIN_INPUT, 0) /* (B22) MMC1_CLK */
    			AM62AX_IOPAD(0x230, PIN_INPUT, 0) /* (A22) MMC1_DAT0 */
    			AM62AX_IOPAD(0x22c, PIN_INPUT, 0) /* (B21) MMC1_DAT1 */
    			AM62AX_IOPAD(0x228, PIN_INPUT, 0) /* (C21) MMC1_DAT2 */
    			AM62AX_IOPAD(0x224, PIN_INPUT, 0) /* (D22) MMC1_DAT3 */
    			AM62AX_IOPAD(0x240, PIN_INPUT, 0) /* (D17) MMC1_SDCD */
    		>;
    	};
    
    	main_mdio1_pins_default: main-mdio1-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x160, PIN_OUTPUT, 0) /* (V12) MDIO0_MDC */
    			AM62AX_IOPAD(0x15c, PIN_INPUT, 0) /* (V13) MDIO0_MDIO */
    		>;
    	};
    
    	main_rgmii1_pins_default: main-rgmii1-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x14c, PIN_INPUT, 0) /* (AB16) RGMII1_RD0 */
    			AM62AX_IOPAD(0x150, PIN_INPUT, 0) /* (V15) RGMII1_RD1 */
    			AM62AX_IOPAD(0x154, PIN_INPUT, 0) /* (W15) RGMII1_RD2 */
    			AM62AX_IOPAD(0x158, PIN_INPUT, 0) /* (V14) RGMII1_RD3 */
    			AM62AX_IOPAD(0x148, PIN_INPUT, 0) /* (AA16) RGMII1_RXC */
    			AM62AX_IOPAD(0x144, PIN_INPUT, 0) /* (AA15) RGMII1_RX_CTL */
    			AM62AX_IOPAD(0x134, PIN_INPUT, 0) /* (Y17) RGMII1_TD0 */
    			AM62AX_IOPAD(0x138, PIN_INPUT, 0) /* (V16) RGMII1_TD1 */
    			AM62AX_IOPAD(0x13c, PIN_INPUT, 0) /* (Y16) RGMII1_TD2 */
    			AM62AX_IOPAD(0x140, PIN_INPUT, 0) /* (AA17) RGMII1_TD3 */
    			AM62AX_IOPAD(0x130, PIN_INPUT, 0) /* (AB17) RGMII1_TXC */
    			AM62AX_IOPAD(0x12c, PIN_INPUT, 0) /* (W16) RGMII1_TX_CTL */
    		>;
    	};
    
    	main_i2c2_pins_default: main-i2c2-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x0b0, PIN_INPUT_PULLUP, 1) /* (K22) To I2C Switch 0x71 for CSI, also Dev Board GPMC0_CSn2.I2C2_SCL */
    			AM62AX_IOPAD(0x0b4, PIN_INPUT_PULLUP, 1) /* (K24) To I2C Switch 0x71 for CSI, also Dev Board GPMC0_CSn3.I2C2_SDA */
    		>;
    	};
    
    //	main_mcasp1_pins_default: main-mcasp1-pins-default {
    //		pinctrl-single,pins = <
    //			AM62AX_IOPAD(0x090, PIN_INPUT, 2) /* (L19) GPMC0_BE0n_CLE.MCASP1_ACLKX */
    //			AM62AX_IOPAD(0x098, PIN_INPUT, 2) /* (R18) GPMC0_WAIT0.MCASP1_AFSX */
    //			AM62AX_IOPAD(0x08c, PIN_OUTPUT, 2) /* (K19) GPMC0_WEn.MCASP1_AXR0 */
    //			AM62AX_IOPAD(0x084, PIN_INPUT, 2) /* (L18) GPMC0_ADVn_ALE.MCASP1_AXR2 */
    //		>;
    //	};
    
    	/* TI SK Dev Board specific */
    	/* This I2C bus is used for Voltage Module enable and the BootMode GPIO expander on the TI SK Dev Board */
    	main_i2c1_pins_default: main-i2c1-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x1e8, PIN_INPUT_PULLUP, 0) /* (B17) I2C1_SCL */
    			AM62AX_IOPAD(0x1ec, PIN_INPUT_PULLUP, 0) /* (A17) I2C1_SDA */
    		>;
    	};
    
    	main_gpio1_ioexp_intr_pins_default: main-gpio1-ioexp-intr-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x01d4, PIN_INPUT, 7) /* (C15) UART0_RTSn.GPIO1_23 */
    
    		>;
    	};
    
    	usr_led_pins_default: usr-led-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x244, PIN_OUTPUT, 7) /* (D18) MMC1_SDWP.GPIO1_49 */
    		>;
    	};
    
    
    
    };
    
    
    /delete-node/ &mcu_uart0;
    /delete-node/ &mcu_i2c0;
    // /delete-node/ &mcu_r5fss0_core0;
    // /delete-node/ &mcu_r5fss0;
    
    /delete-node/ &mcu_spi0;
    /delete-node/ &mcu_spi1;
    /delete-node/ &mcu_gpio0;
    /delete-node/ &mcu_pmx0;
    // /delete-node/ &cbass_mcu;
    
    /delete-node/ &wkup_uart0;
    /delete-node/ &wkup_i2c0;
    /delete-node/ &wkup_rtc0;
    // /delete-node/ &wkup_r5fss0_core0;
    // /delete-node/ &wkup_r5fss0;
    // /delete-node/ &wkup_conf;
    
    
    &cbass_mcu {
    
    	mcu_ram: sram@79100000 {
    		compatible = "mmio-sram";
    		reg = <0x00 0x79100000 0x00 0x80000>;
    		ranges = <0x00 0x00 0x79100000 0x80000>;
    		#address-cells = <1>;
    		#size-cells = <1>;
    
    		mcu_sram1@0 {
    			reg = <0x0 0x80000>;
    		};
    	};
    
    	mcu_r5fss0: r5fss@79000000 {
    		compatible = "ti,am62-r5fss";
    		#address-cells = <1>;
    		#size-cells = <1>;
    		ranges = <0x79000000 0x00 0x79000000 0x8000>,
    			 <0x79020000 0x00 0x79020000 0x8000>;
    		power-domains = <&k3_pds 7 TI_SCI_PD_EXCLUSIVE>;
    		mcu_r5fss0_core0: r5f@79000000 {
    			compatible = "ti,am62-r5f";
    			reg = <0x79000000 0x00008000>,
    				<0x79020000 0x00008000>;
    			reg-names = "atcm", "btcm";
    			ti,sci = <&dmsc>;
    			ti,sci-dev-id = <9>;
    			ti,sci-proc-ids = <0x03 0xff>;
    			resets = <&k3_reset 9 1>;
    			firmware-name = "am62a-mcu-r5f0_0-fw";
    			ti,atcm-enable = <0>;
    			ti,btcm-enable = <1>;
    			ti,loczrama = <0>;
    			sram = <&mcu_ram>;
    		};
    	};
    };
    
    /delete-node/ &epwm_tbclk;
    
    /delete-node/ &crypto;
    /delete-node/ &main_i2c0;
    
    /* TI SK Dev Board specific */
    &main_i2c1 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_i2c1_pins_default>;
    	clock-frequency = <100000>;
    
    	exp1: gpio@22 {
    		compatible = "ti,tca6424";
    		reg = <0x22>;
    		gpio-controller;
    		#gpio-cells = <2>;
    
    		interrupt-parent = <&main_gpio1>;
    		interrupts = <23 IRQ_TYPE_EDGE_FALLING>;
    		interrupt-controller;
    		#interrupt-cells = <2>;
    		gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST",
    				   "BT_EN_SOC", "MMC1_SD_EN",
    				   "VPP_EN", "EXP_PS_3V3_En",
    				   "EXP_PS_5V0_En", "EXP_HAT_DETECT",
    				   "GPIO_AUD_RSTn", "GPIO_eMMC_RSTn",
    				   "UART1_FET_BUF_EN", "BT_UART_WAKE_SOC",
    				   "GPIO_HDMI_RSTn", "CSI_GPIO0",
    				   "CSI_GPIO1", "WLAN_ALERTn",
    				   "HDMI_INTn", "TEST_GPIO2",
    				   "MCASP1_FET_EN", "MCASP1_BUF_BT_EN",
    				   "MCASP1_FET_SEL", "UART1_FET_SEL",
    				   "PD_I2C_IRQ", "IO_EXP_TEST_LED";
    
    		pinctrl-names = "default";
    		pinctrl-0 = <&main_gpio1_ioexp_intr_pins_default>;
    	};
    
    	/* BootMode GPIO expander */
    	exp2: gpio@23 {
    		compatible = "ti,tca6424";
    		reg = <0x23>;
    		gpio-controller;
    		#gpio-cells = <2>;
    	};
    
    	tlv320aic3106: audio-codec@1b {
    		#sound-dai-cells = <0>;
    		compatible = "ti,tlv320aic3106";
    		reg = <0x1b>;
    		ai3x-micbias-vg = <1>;		/* 2.0V */
    		status = "okay";
    
    		/* Regulators */
    		AVDD-supply = <&vcc_3v3_sys>;
    		IOVDD-supply = <&vcc_3v3_sys>;
    		DRVDD-supply = <&vcc_3v3_sys>;
    	};
    };
    
    &main_i2c2 {
    	status = "disabled";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_i2c2_pins_default>;
    	clock-frequency = <400000>;
    };
    
    /delete-node/ &main_i2c3;
    /delete-node/ &main_spi0;
    /delete-node/ &main_spi1;
    /delete-node/ &main_spi2;
    
    /delete-node/ &sdhci0;
    /delete-node/ &sdhci2;
    
    
    &sdhci1 {
    	/* SD/MMC */
    	status = "okay";
    	vmmc-supply = <&vdd_mmc1>;
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_mmc1_pins_default>;
    	ti,driver-strength-ohm = <50>;
    	disable-wp;
    };
    
    &main_gpio0 {
    	status = "okay";
    };
    
    &main_gpio1 {
    	status = "okay";
    };
    
    &main_gpio_intr {
    	status = "okay";
    };
    
    
    &main_uart0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_uart0_pins_default>;
    };
    
    &cbass_wakeup {
    	wkup_conf: syscon@43000000 {
    		compatible = "ti,j721e-system-controller", "syscon", "simple-mfd";
    		reg = <0x00 0x43000000 0x00 0x20000>;
    		#address-cells = <1>;
    		#size-cells = <1>;
    		ranges = <0x00 0x00 0x43000000 0x20000>;
    
    		chipid: chipid@14 {
    			compatible = "ti,am654-chipid";
    			reg = <0x14 0x4>;
    		};
    	};
    };
    
    /delete-node/ &main_uart1;
    /delete-node/ &main_uart2;
    /delete-node/ &main_uart3;
    /delete-node/ &main_uart4;
    /delete-node/ &main_uart5;
    /delete-node/ &main_uart6;
    // /delete-node/ &vpu;
    /delete-node/ &dss_ports;
    /delete-node/ &dss;
    /delete-node/ &usb1;
    /delete-node/ &usbss1;
    
    
    &cpsw3g {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_rgmii1_pins_default>;
    };
    
    &cpsw_port1 {
    	status = "okay";
    	phy-mode = "rgmii-rxid";
    	phy-handle = <&cpsw3g_phy0>;
    };
    
    &cpsw_port2 {
    	status = "disabled";
    };
    
    &cpsw3g_mdio {
    
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_mdio1_pins_default>;
    
    	cpsw3g_phy0: ethernet-phy@0 {
    		reg = <0>;
    		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
    		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
    		ti,min-output-impedance;
    	};
    };
    
    
    /delete-node/ &usb0;
    /delete-node/ &usbss0;
    // /delete-node/ &mailbox0_cluster0;
    // /delete-node/ &mailbox0_cluster1;
    // /delete-node/ &mailbox0_cluster2;
    /delete-node/ &mailbox0_cluster3;
    // /delete-node/ &c7x_0;
    
    &mailbox0_cluster0 {
    	mbox_r5_0: mbox-r5-0 {
    		ti,mbox-rx = <0 0 0>;
    		ti,mbox-tx = <1 0 0>;
    	};
    };
    
    &mailbox0_cluster1 {
    	mbox_c7x_0: mbox-c7x-0 {
    		ti,mbox-rx = <0 0 0>;
    		ti,mbox-tx = <1 0 0>;
    	};
    };
    
    &mailbox0_cluster2 {
    	mbox_mcu_r5_0: mbox-mcu_r5-0 {
    		ti,mbox-rx = <0 0 0>;
    		ti,mbox-tx = <1 0 0>;
    	};
    };
    
    &c7x_0 {
    	mboxes = <&mailbox0_cluster1 &mbox_c7x_0>;
    	memory-region = <&c7x_0_dma_memory_region>,
    			<&c7x_0_memory_region>;
    };
    
    &wkup_r5fss0_core0 {
    	mboxes = <&mailbox0_cluster0 &mbox_r5_0>;
    	memory-region = <&wkup_r5fss0_core0_dma_memory_region>,
    		<&wkup_r5fss0_core0_memory_region>;
    };
    
    &mcu_r5fss0_core0 {
    	mboxes = <&mailbox0_cluster2 &mbox_mcu_r5_0>;
    	memory-region = <&mcu_r5fss0_core0_dma_memory_region>,
    			<&mcu_r5fss0_core0_memory_region>;
    };
    
    
    &csi0_port0 {
    	status = "disabled";
    };
    
    &csi0_port1 {
    	status = "disabled";
    };
    
    &csi0_port2 {
    	status = "disabled";
    };
    
    &csi0_port3 {
    	status = "disabled";
    };
    
    &csi0_port4 {
    	status = "disabled";
    };
    
    
    /delete-node/ &ospi0;
    /delete-node/ &fss;
    /delete-node/ &main_mcan0;
    /delete-node/ &epwm0;
    /delete-node/ &epwm1;
    /delete-node/ &epwm2;
    /delete-node/ &ecap0;
    /delete-node/ &ecap1;
    /delete-node/ &ecap2;
    /delete-node/ &mcasp0;
    /delete-node/ &mcasp1;
    
    // &mcasp1 {
    // 	status = "okay";
    // 	#sound-dai-cells = <0>;
    // 
    // 	pinctrl-names = "default";
    // 	pinctrl-0 = <&main_mcasp1_pins_default>;
    // 
    // 	op-mode = <0>;          /* MCASP_IIS_MODE */
    // 	tdm-slots = <2>;
    // 
    // 	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
    // 	       1 0 2 0
    // 	       0 0 0 0
    // 	       0 0 0 0
    // 	       0 0 0 0
    // 	>;
    // 	tx-num-evt = <32>;
    // 	rx-num-evt = <32>;
    // };
    
    /delete-node/ &mcasp2;
    
    /delete-node/ &main0_thermal;
    /delete-node/ &main1_thermal;
    /delete-node/ &main2_thermal;
    /delete-node/ &wkup_vtm0;
    /delete-node/ &thermal_zones;
    
    
    &cluster0 {
    	/delete-node/ core1;
    	/delete-node/ core2;
    	/delete-node/ core3;
    };
    

    I've applied similar changes to my 9.0 SDK dts file and this is what I have currently:

    // SPDX-License-Identifier: GPL-2.0
    /*
     * AM62A SK: https://www.ti.com/lit/zip/sprr459
     *
     * Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/
     */
    
    /dts-v1/;
    
    #include <dt-bindings/leds/common.h>
    #include <dt-bindings/gpio/gpio.h>
    #include <dt-bindings/net/ti-dp83867.h>
    #include "k3-am62a7.dtsi"
    
    / {
    	compatible =  "ti,am62a7";
    	model = "Texas Instruments AM62A7";
    
    	aliases {
    		serial2 = &main_uart0;
    		mmc1 = &sdhci1;
    		ethernet0 = "/bus@f0000/ethernet@8000000/ethernet-ports/port@1";
    	};
    
    	chosen {
    		stdout-path = "serial2:115200n8";
    		bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
    	};
    
    	cpus {
    		/delete-node/ cpu@1;
    		/delete-node/ cpu@2;
    		/delete-node/ cpu@3;
    	};
    
    //	memory@80000000 {
    //		device_type = "memory";
    //		/* 2G RAM */
    //		reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
    //	};
    
    
    	memory@80000000 {
    		device_type = "memory";
    		/* 4G RAM */
    		reg = <0x00000000 0x80000000 0x00000000 0x80000000>,
    		      <0x00000008 0x80000000 0x00000000 0x80000000>;
    	};
    
    	dma_buf_phys {
    		compatible = "ti,dma-buf-phys";
    	};
    
    	reserved-memory {
    		#address-cells = <2>;
    		#size-cells = <2>;
    		ranges;
    
    		secure_tfa_ddr: tfa@9e780000 {
    			reg = <0x00 0x9e780000 0x00 0x80000>;
    			alignment = <0x1000>;
    			no-map;
    		};
    
    		secure_ddr: optee@9e800000 {
    			reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
    			alignment = <0x1000>;
    			no-map;
    		};
    
    		wkup_r5fss0_core0_dma_memory_region: r5f-dma-memory@9c800000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9c800000 0x00 0x100000>;
    			no-map;
    		};
    
    		wkup_r5fss0_core0_memory_region: r5f-dma-memory@9c900000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9c900000 0x00 0x01e00000>;
    			no-map;
    		};
    
    		mcu_r5fss0_core0_dma_memory_region: r5f-dma-memory@9b800000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9b800000 0x00 0x100000>;
    			no-map;
    		};
    
    		mcu_r5fss0_core0_memory_region: r5f-dma-memory@9b900000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9b900000 0x00 0x0f00000>;
    			no-map;
    		};
    
    		c7x_0_dma_memory_region: c7x-dma-memory@99800000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x99800000 0x00 0x100000>;
    			no-map;
    		};
    
    		c7x_0_memory_region: c7x-memory@99900000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x99900000 0x00 0x01efffff>;
    			no-map;
    		};
    
    		edgeai_rtos_ipc_memory_region: edgeai-rtos-ipc-memory-region {
    			reg = <0x00 0xa0000000 0x00 0x01000000>;
    			no-map;
    		};
    
    		edgeai_memory_region: edgeai-dma-memory@a1000000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0xa1000000 0x00 0x02000000>;
    			no-map;
    		};
    
    		edgeai_shared_region: edgeai_shared-memories {
    			compatible = "dma-heap-carveout";
    			reg = <0x00 0xa3000000 0x00 0x0b000000>;
    		};
    
    		edgeai_core_heaps: edgeai-core-heap-memory@ae000000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0xae000000 0x00 0x12000000>;
    			no-map;
    		};
    	};
    
    	vmain_pd: regulator-0 {
    		/* TPS25750 PD CONTROLLER OUTPUT */
    		compatible = "regulator-fixed";
    		regulator-name = "vmain_pd";
    		regulator-min-microvolt = <5000000>;
    		regulator-max-microvolt = <5000000>;
    		regulator-always-on;
    		regulator-boot-on;
    	};
    
    	vcc_5v0: regulator-1 {
    		/* Output of TPS63070 */
    		compatible = "regulator-fixed";
    		regulator-name = "vcc_5v0";
    		regulator-min-microvolt = <5000000>;
    		regulator-max-microvolt = <5000000>;
    		vin-supply = <&vmain_pd>;
    		regulator-always-on;
    		regulator-boot-on;
    	};
    
    	vcc_3v3_sys: regulator-2 {
    		/* output of LM5141-Q1 */
    		compatible = "regulator-fixed";
    		regulator-name = "vcc_3v3_sys";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		vin-supply = <&vmain_pd>;
    		regulator-always-on;
    		regulator-boot-on;
    	};
    
    	vdd_mmc1: regulator-3 {
    		/* TPS22918DBVR */
    		compatible = "regulator-fixed";
    		regulator-name = "vdd_mmc1";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		regulator-boot-on;
    		enable-active-high;
    		gpio = <&exp1 3 GPIO_ACTIVE_HIGH>;
    	};
    
    	leds {
    		compatible = "gpio-leds";
    		pinctrl-names = "default";
    		pinctrl-0 = <&usr_led_pins_default>;
    
    		led-0 {
    			label = "am62a-sk:green:heartbeat";
    			gpios = <&main_gpio1 49 GPIO_ACTIVE_HIGH>;
    			linux,default-trigger = "heartbeat";
    			function = LED_FUNCTION_HEARTBEAT;
    			default-state = "off";
    		};
    	};
    };
    
    	
    
    &main_pmx0 {
    	main_uart0_pins_default: main-uart0-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14) UART0_RXD */
    			AM62AX_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (E14) UART0_TXD */
    		>;
    	};
    
    	main_mmc1_pins_default: main-mmc1-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x23c, PIN_INPUT, 0) /* (A21) MMC1_CMD */
    			AM62AX_IOPAD(0x234, PIN_INPUT, 0) /* (B22) MMC1_CLK */
    			AM62AX_IOPAD(0x230, PIN_INPUT, 0) /* (A22) MMC1_DAT0 */
    			AM62AX_IOPAD(0x22c, PIN_INPUT, 0) /* (B21) MMC1_DAT1 */
    			AM62AX_IOPAD(0x228, PIN_INPUT, 0) /* (C21) MMC1_DAT2 */
    			AM62AX_IOPAD(0x224, PIN_INPUT, 0) /* (D22) MMC1_DAT3 */
    			AM62AX_IOPAD(0x240, PIN_INPUT, 0) /* (D17) MMC1_SDCD */
    		>;
    	};
    
    	main_mdio1_pins_default: main-mdio1-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x160, PIN_OUTPUT, 0) /* (V12) MDIO0_MDC */
    			AM62AX_IOPAD(0x15c, PIN_INPUT, 0) /* (V13) MDIO0_MDIO */
    		>;
    	};
    
    	main_rgmii1_pins_default: main-rgmii1-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x14c, PIN_INPUT, 0) /* (AB16) RGMII1_RD0 */
    			AM62AX_IOPAD(0x150, PIN_INPUT, 0) /* (V15) RGMII1_RD1 */
    			AM62AX_IOPAD(0x154, PIN_INPUT, 0) /* (W15) RGMII1_RD2 */
    			AM62AX_IOPAD(0x158, PIN_INPUT, 0) /* (V14) RGMII1_RD3 */
    			AM62AX_IOPAD(0x148, PIN_INPUT, 0) /* (AA16) RGMII1_RXC */
    			AM62AX_IOPAD(0x144, PIN_INPUT, 0) /* (AA15) RGMII1_RX_CTL */
    			AM62AX_IOPAD(0x134, PIN_INPUT, 0) /* (Y17) RGMII1_TD0 */
    			AM62AX_IOPAD(0x138, PIN_INPUT, 0) /* (V16) RGMII1_TD1 */
    			AM62AX_IOPAD(0x13c, PIN_INPUT, 0) /* (Y16) RGMII1_TD2 */
    			AM62AX_IOPAD(0x140, PIN_INPUT, 0) /* (AA17) RGMII1_TD3 */
    			AM62AX_IOPAD(0x130, PIN_INPUT, 0) /* (AB17) RGMII1_TXC */
    			AM62AX_IOPAD(0x12c, PIN_INPUT, 0) /* (W16) RGMII1_TX_CTL */
    		>;
    	};
    
    	main_i2c2_pins_default: main-i2c2-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x0b0, PIN_INPUT_PULLUP, 1) /* (K22) To I2C Switch 0x71 for CSI, also Dev Board GPMC0_CSn2.I2C2_SCL */
    			AM62AX_IOPAD(0x0b4, PIN_INPUT_PULLUP, 1) /* (K24) To I2C Switch 0x71 for CSI, also Dev Board GPMC0_CSn3.I2C2_SDA */
    		>;
    	};
    
    //	main_mcasp1_pins_default: main-mcasp1-pins-default {
    //		pinctrl-single,pins = <
    //			AM62AX_IOPAD(0x090, PIN_INPUT, 2) /* (L19) GPMC0_BE0n_CLE.MCASP1_ACLKX */
    //			AM62AX_IOPAD(0x098, PIN_INPUT, 2) /* (R18) GPMC0_WAIT0.MCASP1_AFSX */
    //			AM62AX_IOPAD(0x08c, PIN_OUTPUT, 2) /* (K19) GPMC0_WEn.MCASP1_AXR0 */
    //			AM62AX_IOPAD(0x084, PIN_INPUT, 2) /* (L18) GPMC0_ADVn_ALE.MCASP1_AXR2 */
    //		>;
    //	};
    
    	/* TI SK Dev Board specific */
    	/* This I2C bus is used for Voltage Module enable and the BootMode GPIO expander on the TI SK Dev Board */
    	main_i2c1_pins_default: main-i2c1-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x1e8, PIN_INPUT_PULLUP, 0) /* (B17) I2C1_SCL */
    			AM62AX_IOPAD(0x1ec, PIN_INPUT_PULLUP, 0) /* (A17) I2C1_SDA */
    		>;
    	};
    
    	main_gpio1_ioexp_intr_pins_default: main-gpio1-ioexp-intr-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x01d4, PIN_INPUT, 7) /* (C15) UART0_RTSn.GPIO1_23 */
    
    		>;
    	};
    
    	usr_led_pins_default: usr-led-pins-default {
    		pinctrl-single,pins = <
    			AM62AX_IOPAD(0x244, PIN_OUTPUT, 7) /* (D18) MMC1_SDWP.GPIO1_49 */
    		>;
    	};
    
    
    
    };
    
    
    /delete-node/ &mcu_uart0;
    /delete-node/ &mcu_i2c0;
    // /delete-node/ &mcu_r5fss0_core0;
    // /delete-node/ &mcu_r5fss0;
    
    /delete-node/ &mcu_spi0;
    /delete-node/ &mcu_spi1;
    /delete-node/ &mcu_gpio0;
    /delete-node/ &mcu_pmx0;
    // /delete-node/ &cbass_mcu;
    
    /delete-node/ &wkup_uart0;
    /delete-node/ &wkup_i2c0;
    /delete-node/ &wkup_rtc0;
    // /delete-node/ &wkup_r5fss0_core0;
    // /delete-node/ &wkup_r5fss0;
    // /delete-node/ &wkup_conf;
    
    
    &cbass_mcu {
    
    	mcu_ram: sram@79100000 {
    		compatible = "mmio-sram";
    		reg = <0x00 0x79100000 0x00 0x80000>;
    		ranges = <0x00 0x00 0x79100000 0x80000>;
    		#address-cells = <1>;
    		#size-cells = <1>;
    
    		mcu_sram1@0 {
    			reg = <0x0 0x80000>;
    		};
    	};
    
    	mcu_r5fss0: r5fss@79000000 {
    		compatible = "ti,am62-r5fss";
    		#address-cells = <1>;
    		#size-cells = <1>;
    		ranges = <0x79000000 0x00 0x79000000 0x8000>,
    			 <0x79020000 0x00 0x79020000 0x8000>;
    		power-domains = <&k3_pds 7 TI_SCI_PD_EXCLUSIVE>;
    		mcu_r5fss0_core0: r5f@79000000 {
    			compatible = "ti,am62-r5f";
    			reg = <0x79000000 0x00008000>,
    				<0x79020000 0x00008000>;
    			reg-names = "atcm", "btcm";
    			ti,sci = <&dmsc>;
    			ti,sci-dev-id = <9>;
    			ti,sci-proc-ids = <0x03 0xff>;
    			resets = <&k3_reset 9 1>;
    			firmware-name = "am62a-mcu-r5f0_0-fw";
    			ti,atcm-enable = <0>;
    			ti,btcm-enable = <1>;
    			ti,loczrama = <0>;
    			sram = <&mcu_ram>;
    		};
    	};
    };
    
    /delete-node/ &epwm_tbclk;
    
    /delete-node/ &crypto;
    /delete-node/ &main_i2c0;
    
    /* TI SK Dev Board specific */
    &main_i2c1 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_i2c1_pins_default>;
    	clock-frequency = <100000>;
    
    	exp1: gpio@22 {
    		compatible = "ti,tca6424";
    		reg = <0x22>;
    		gpio-controller;
    		#gpio-cells = <2>;
    
    		interrupt-parent = <&main_gpio1>;
    		interrupts = <23 IRQ_TYPE_EDGE_FALLING>;
    		interrupt-controller;
    		#interrupt-cells = <2>;
    		gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST",
    				   "BT_EN_SOC", "MMC1_SD_EN",
    				   "VPP_EN", "EXP_PS_3V3_En",
    				   "EXP_PS_5V0_En", "EXP_HAT_DETECT",
    				   "GPIO_AUD_RSTn", "GPIO_eMMC_RSTn",
    				   "UART1_FET_BUF_EN", "BT_UART_WAKE_SOC",
    				   "GPIO_HDMI_RSTn", "CSI_GPIO0",
    				   "CSI_GPIO1", "WLAN_ALERTn",
    				   "HDMI_INTn", "TEST_GPIO2",
    				   "MCASP1_FET_EN", "MCASP1_BUF_BT_EN",
    				   "MCASP1_FET_SEL", "UART1_FET_SEL",
    				   "PD_I2C_IRQ", "IO_EXP_TEST_LED";
    
    		pinctrl-names = "default";
    		pinctrl-0 = <&main_gpio1_ioexp_intr_pins_default>;
    	};
    
    	/* BootMode GPIO expander */
    	exp2: gpio@23 {
    		compatible = "ti,tca6424";
    		reg = <0x23>;
    		gpio-controller;
    		#gpio-cells = <2>;
    	};
    
    	tlv320aic3106: audio-codec@1b {
    		#sound-dai-cells = <0>;
    		compatible = "ti,tlv320aic3106";
    		reg = <0x1b>;
    		ai3x-micbias-vg = <1>;		/* 2.0V */
    		status = "okay";
    
    		/* Regulators */
    		AVDD-supply = <&vcc_3v3_sys>;
    		IOVDD-supply = <&vcc_3v3_sys>;
    		DRVDD-supply = <&vcc_3v3_sys>;
    	};
    };
    
    &main_i2c2 {
    	status = "disabled";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_i2c2_pins_default>;
    	clock-frequency = <400000>;
    };
    
    /delete-node/ &main_i2c3;
    /delete-node/ &main_spi0;
    /delete-node/ &main_spi1;
    /delete-node/ &main_spi2;
    
    /delete-node/ &sdhci0;
    /delete-node/ &sdhci2;
    
    
    &sdhci1 {
    	/* SD/MMC */
    	status = "okay";
    	vmmc-supply = <&vdd_mmc1>;
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_mmc1_pins_default>;
    	ti,driver-strength-ohm = <50>;
    	disable-wp;
    };
    
    &main_gpio0 {
    	status = "okay";
    };
    
    &main_gpio1 {
    	status = "okay";
    };
    
    &main_gpio_intr {
    	status = "okay";
    };
    
    
    &main_uart0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_uart0_pins_default>;
    };
    
    &cbass_wakeup {
    	wkup_conf: syscon@43000000 {
    		compatible = "ti,j721e-system-controller", "syscon", "simple-mfd";
    		reg = <0x00 0x43000000 0x00 0x20000>;
    		#address-cells = <1>;
    		#size-cells = <1>;
    		ranges = <0x00 0x00 0x43000000 0x20000>;
    
    		chipid: chipid@14 {
    			compatible = "ti,am654-chipid";
    			reg = <0x14 0x4>;
    		};
    	};
    };
    
    /delete-node/ &main_uart1;
    /delete-node/ &main_uart2;
    /delete-node/ &main_uart3;
    /delete-node/ &main_uart4;
    /delete-node/ &main_uart5;
    /delete-node/ &main_uart6;
    // /delete-node/ &vpu;
    /delete-node/ &dss_ports;
    /delete-node/ &dss;
    /delete-node/ &usb1;
    /delete-node/ &usbss1;
    
    
    &cpsw3g {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_rgmii1_pins_default>;
    };
    
    &cpsw_port1 {
    	status = "okay";
    	phy-mode = "rgmii-rxid";
    	phy-handle = <&cpsw3g_phy0>;
    };
    
    &cpsw_port2 {
    	status = "disabled";
    };
    
    &cpsw3g_mdio {
    
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_mdio1_pins_default>;
    
    	cpsw3g_phy0: ethernet-phy@0 {
    		reg = <0>;
    		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
    		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
    		ti,min-output-impedance;
    	};
    };
    
    
    /delete-node/ &usb0;
    /delete-node/ &usbss0;
    // /delete-node/ &mailbox0_cluster0;
    // /delete-node/ &mailbox0_cluster1;
    // /delete-node/ &mailbox0_cluster2;
    /delete-node/ &mailbox0_cluster3;
    // /delete-node/ &c7x_0;
    
    &mailbox0_cluster0 {
    	mbox_r5_0: mbox-r5-0 {
    		ti,mbox-rx = <0 0 0>;
    		ti,mbox-tx = <1 0 0>;
    	};
    };
    
    &mailbox0_cluster1 {
    	mbox_c7x_0: mbox-c7x-0 {
    		ti,mbox-rx = <0 0 0>;
    		ti,mbox-tx = <1 0 0>;
    	};
    };
    
    &mailbox0_cluster2 {
    	mbox_mcu_r5_0: mbox-mcu_r5-0 {
    		ti,mbox-rx = <0 0 0>;
    		ti,mbox-tx = <1 0 0>;
    	};
    };
    
    &c7x_0 {
    	mboxes = <&mailbox0_cluster1 &mbox_c7x_0>;
    	memory-region = <&c7x_0_dma_memory_region>,
    			<&c7x_0_memory_region>;
    };
    
    &wkup_r5fss0_core0 {
    	mboxes = <&mailbox0_cluster0 &mbox_r5_0>;
    	memory-region = <&wkup_r5fss0_core0_dma_memory_region>,
    		<&wkup_r5fss0_core0_memory_region>;
    };
    
    &mcu_r5fss0_core0 {
    	mboxes = <&mailbox0_cluster2 &mbox_mcu_r5_0>;
    	memory-region = <&mcu_r5fss0_core0_dma_memory_region>,
    			<&mcu_r5fss0_core0_memory_region>;
    };
    
    
    &csi0_port0 {
    	status = "disabled";
    };
    
    &csi0_port1 {
    	status = "disabled";
    };
    
    &csi0_port2 {
    	status = "disabled";
    };
    
    &csi0_port3 {
    	status = "disabled";
    };
    
    &csi0_port4 {
    	status = "disabled";
    };
    
    
    /delete-node/ &ospi0;
    /delete-node/ &fss;
    /delete-node/ &main_mcan0;
    /delete-node/ &epwm0;
    /delete-node/ &epwm1;
    /delete-node/ &epwm2;
    /delete-node/ &ecap0;
    /delete-node/ &ecap1;
    /delete-node/ &ecap2;
    /delete-node/ &mcasp0;
    /delete-node/ &mcasp1;
    
    // &mcasp1 {
    // 	status = "okay";
    // 	#sound-dai-cells = <0>;
    // 
    // 	pinctrl-names = "default";
    // 	pinctrl-0 = <&main_mcasp1_pins_default>;
    // 
    // 	op-mode = <0>;          /* MCASP_IIS_MODE */
    // 	tdm-slots = <2>;
    // 
    // 	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
    // 	       1 0 2 0
    // 	       0 0 0 0
    // 	       0 0 0 0
    // 	       0 0 0 0
    // 	>;
    // 	tx-num-evt = <32>;
    // 	rx-num-evt = <32>;
    // };
    
    /delete-node/ &mcasp2;
    
    /delete-node/ &main0_thermal;
    /delete-node/ &main1_thermal;
    /delete-node/ &main2_thermal;
    /delete-node/ &wkup_vtm0;
    /delete-node/ &thermal_zones;
    
    
    &cluster0 {
    	/delete-node/ core1;
    	/delete-node/ core2;
    	/delete-node/ core3;
    };
    

    I am still getting the same error about the D-Phy however. But... I 'm using a custom built Arago image using the tisdk Yocto build process. I didn't think this would cause an issue because the "k3-62am7-sk.dtb" file provided with the build streams from an IMX219 image sensor.
    However, using my custom dtb on an SD card flashed with the TI provided "tisdk-edgeai-image-am62axx-evm_SDK9-0.wic.xz" image works. So this appears to be something more likely related to my Yocto build Arago image and the dtb.

    My current recipe is as follows (based off of the tisdk-default-image):

    # Based off of sources meta-argo/meta-argo-distro/recipes-core/images/tisdk-default-image.bb"
    # and meta-processor-sdk/recipes-core/images/tisdk-edgeai-image.bb"
    
    require recipes-core/images/tisdk-default-image.bb
    
    #PN:adas = "tisdk-adas-image"
    
    COMPATIBLE_MACHINE = "am62axx-evm"
    
    # DISTRO_FEATURES:remove = "wayland"
    
    EDGEAI_STACK = " \
            ti-vision-apps-dev \
            ti-edgeai-firmware \
            edgeai-tiovx-kernels-dev \
            edgeai-tiovx-modules-dev \
            edgeai-tiovx-kernels-source \
            edgeai-tiovx-modules-source \
            edgeai-apps-utils-source \
    "
    
    EDGEAI_STACK:append:edgeai = " \
            edgeai-gst-plugins-dev \
            edgeai-gst-apps-source \
            edgeai-gst-plugins-source \
            ti-gpio-cpp \
            ti-gpio-py \
            ti-gpio-cpp-source \
            ti-gpio-py-source \
    "
    
    #EDGEAI_STACK:append:adas = " \
    #        ti-tidl-osrt-staticdev \
    #        edgeai-gst-plugins \
    #        edgeai-tiovx-apps-dev \
    #        edgeai-tiovx-apps-source \
    #"
    
    IMAGE_INSTALL:append = " \
        ${EDGEAI_STACK} \
        packagegroup-arago-gst-sdk-target \
        packagegroup-edgeai-tisdk-addons \
    "
    
    # disable matrix gui for PSDKLA
    IMAGE_INSTALL:remove = " \
        packagegroup-arago-tisdk-matrix \
        packagegroup-arago-tisdk-matrix-extra \
        packagegroup-arago-tisdk-qte \
        qtwebbrowser-examples \
        qtwebengine-qmlplugins \
        qtwebengine-examples \
        ti-tidl-osrt-dev \
        ti-tidl-osrt-staticdev \
        ti-tidl-osrt \
        edgeai-dl-inferer \
        edgeai-dl-inferer-staticdev \
        edgeai-dl-inferer-source \
        edgeai-tidl-models \
        edgeai-test-data \
        edgeai-gst-apps \
    "
    #    weston
    #    xwayland
    
    
    EXTRA_PACKAGES:remove:am62xx = " \
    	ti-apps-launcher \
    	ti-tidl-osrt \
    	edgeai-dl-inferer \
    "
    
    WKS_FILE = "tisdk-edgeai-sdimage.wks"
    WIC_CREATE_EXTRA_ARGS += " --no-fstab-update"
    
    do_image_wic[depends] += "edgeai-uenv:do_deploy"
    
    IMAGE_BOOT_FILES:remove = "uEnv.txt"
    IMAGE_BOOT_FILES:append:edgeai = " uEnv_edgeai-apps.txt;uEnv.txt "
    # IMAGE_BOOT_FILES:append:adas = " uEnv_vision-apps.txt;uEnv.txt "
    
    IMAGE_BASENAME:edgeai = "tisdk-edgeai-image-custom"
    # IMAGE_BASENAME:adas = "tisdk-adas-image_custom"
    export IMAGE_BASENAME
    
    WIC_CREATE_EXTRA_ARGS += " --no-fstab-update"
    
    PR:append = "_edgeai_6_custom"

    I'm trying to greatly reduce the size of the image by removing graphics/video support and Deep Learning/Machine Learning applications while retaining the image sensor and VPAC functionality. I'm a bit baffled what would cause the D-Phy message due to this but it appears to be somehow related so maybe I've removed something relevant. I do notice that my build doesn't do some of the things that the "tisdk-edgeai-image-am62axx-evm_SDK9-0.wic.xz" image does (e.g. creates a dev node /dev/video-rpi-cam0 so my camera node is /dev/video2 like in the SDK8.6, move the imaging dcc_2a and dcc_viss files to a respective linear folder, puts the device tree files to /boot/dts/ti folder)

    Best Regards,
    Steve T 

  • Hi Steve,

    So this appears to be something more likely related to my Yocto build Arago image and the dtb.

    Let me reach out to our Yocto expert for help with this.

    Regards,

    Jianzhong

  • Hi Steve,

    just to make sure I understand that correctly, the only difference between your working and non-working scenarios is the DTB file? All other items (Linux Kernel, rootfs) are the same?

    Looking over this briefly, in our default SDK image there's a device tree overlay file involved for imx219 camera support, see https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-am62a7-sk-csi2-imx219.dtso?h=ti-linux-6.1.y

    Perhaps your issues are relate to this, that this is missing/doesn't get applied?

    Regards, Andreas

  • @Andreas, can you look at Steve's Yocto recipe in his latest response and see if anything is missed there?

  • @Andreas, can you look at Steve's Yocto recipe in his latest response and see if anything is missed there?

    It's hard to say, there's customizations and a bunch of packages being removed. In case of any issues one should:

    1) Introduce one change at a time, and observe the results, and/or

    2) Debug backwards to see what the differences are, for example by reverse-compiling both working and non-working DTB files and comparing them, and then based on the differences look at the Yocto tree for an explanation.

    Regards, Andreas

  • just to make sure I understand that correctly, the only difference between your working and non-working scenarios is the DTB file? All other items (Linux Kernel, rootfs) are the same?

    Correct, that is the only difference.

    Looking over this briefly, in our default SDK image there's a device tree overlay file involved for imx219 camera suppor

    I have enabled the overlay in the uEnv.txt file. Also, I see the following in imx219 camera related prints in dmesg:

    [ 5.582217] imx219 4-0010: supply VANA not found, using dummy regulator
    [ 5.684821] imx219 4-0010: supply VDIG not found, using dummy regulator
    [ 5.780700] imx219 4-0010: supply VDDL not found, using dummy regulator

    Additionally, I'm able to stream from the imx219 camera using the original "k3-62am7-sk.dtb" file from the build.

  • Hi Steve,

    I have enabled the overlay in the uEnv.txt file. Also, I see the following in imx219 camera related prints in dmesg:

    sounds like this is working for you know?

    Also (probably stating the obvious here) but if I was building a product I'd fold the contents of the dtso file into the main dts file for a simpler overall setup (and slightly faster loading too).

    Regards, Andreas

  • No, it still isn't working. That was in reference to your first post. Sorry for the confusion and being slightly in late replying with regards to the additional posts.

    Also (probably stating the obvious here) but if I was building a product I'd fold the contents of the dtso file into the main dts file for a simpler overall setup (and slightly faster loading too).

    Ah for the imx219 image sensor dtso... That makes sense although the product will probably use another image sensor at some point so the overlay support may still be preferable.

    Best Regards,
    Steve T

  • Hi Steve,

    ah ok, thanks for the clarification, I'm not very familiar with all the camera related stuff. Anyways I think our best bet then is to 'Debug backwards to see what the differences are, for example by reverse-compiling both working and non-working DTB files and comparing them' suggested earlier. Looks like you have already mastered the reverse-compilation process.

    Regards, Andreas

  • Hello Andreas,

    I compared the original reverse compiled dtb with mine and didn't find any significant things missing/wrong.

    I also performed a couple additional builds to try add gstreamer-rtsp-sever functionality and I've found that these builds have the respective image sensor "linear" folders in the /opt/imaging/ folder and device tree overlays, etc. now in the /boot/dts/ti/ folder. I no longer get the error message about the D-PHY either when I replace the original dtb with my custom one so it seems that something was going on with the build but I unfortunately don't know what I did to make that happen. At least the problem has appeared to fix itself.

    Best Regards,

    Steve T.

  • Hello Steve,

    Thanks for the update.

    I've found that these builds have the respective image sensor "linear" folders in the /opt/imaging/ folder and device tree overlays, etc. now in the /boot/dts/ti/ folder

    That is correct for SDK 9.0. You'll need to include "ti/" in the device tree overlay path, for example, name_overlays=ti/k3-am62a7-sk-csi2-imx219.dtbo.

    Glad that your problem was fixed. I'll close this thread.

    Regards,

    Jianzhong