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.

AM625: Register "simple-audio-card" failed

Part Number: AM625
Other Parts Discussed in Thread: TAS2505

Tool/software:

Hello TI, 

I am using AM6254 with SDK 9.0.

I want to register a sound card for my audio AMP output but fail. 

May you guide the dts?

Below is my modification dts.

+tas2505_mclk: clk-0 {
+ #clock-cells = <0>;
+ compatible = "fixed-clock";
+ clock-frequency = <12288000>;
+};
+
+codec_audio: sound {
+ compatible = "simple-audio-card";
+ simple-audio-card,name = "AM62x-SKEVM";
+ simple-audio-card,widgets =
+ "Headphone", "Headphone Jack",
+ "Microphone", "Microphone Jack",
+ "Speaker", "Speaker";
+ simple-audio-card,routing =
+ "MIC1LP", "Microphone Jack",
+ "MIC1RP", "Microphone Jack",
+ "MIC1LP", "MICBIAS",
+ "MIC1RP", "MICBIAS",
+ "Headphone Jack", "HPL",
+ "Headphone Jack", "HPR",
+ "Speaker", "SPL",
+ "Speaker", "SPR";
+ simple-audio-card,format = "dsp_b";
+ simple-audio-card,bitclock-master = <&sound_master>;
+ simple-audio-card,frame-master = <&sound_master>;
+ simple-audio-card,bitclock-inversion;
+
+ simple-audio-card,cpu {
+ sound-dai = <&mcasp1>;
+ system-clock-frequency = <12000000>;
+ };
+
+ sound_master: simple-audio-card,codec {
+ sound-dai = <&tas2505>;
+ clocks = <&tas2505_mclk>;
+ };
+};

+&mcasp1 {
+ #sound-dai-cells = <0>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&main_mcasp1_pins_default>;
+ status = "okay";
+ op-mode = <0>; /* MCASP_IIS_MODE */
+ tdm-slots = <8>;
+ serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
+ 2 2 1 0
+ >;
+ tx-num-evt = <32>;
+ rx-num-evt = <32>;
+};

Please refer to kernel log and all modification patch.

diff --git a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
index 74e34b84419a..048d96cfd1a2 100644
--- a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
@@ -581,7 +581,7 @@
 		ti,itap-del-sel-sdr12 = <0xa>;
 		ti,itap-del-sel-sdr25 = <0x1>;
 		ti,clkbuf-sel = <0x7>;
-		bus-width = <4>;
+		bus-width = <1>;
 		status = "disabled";
 	};
 
diff --git a/arch/arm64/boot/dts/ti/k3-am625-sk.dts b/arch/arm64/boot/dts/ti/k3-am625-sk.dts
index b1737978103b..0880eaa986a0 100644
--- a/arch/arm64/boot/dts/ti/k3-am625-sk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am625-sk.dts
@@ -13,15 +13,25 @@
 	compatible = "ti,am625-sk", "ti,am625";
 	model = "Texas Instruments AM625 SK";
 
-	opp-table {
-		/* Add 1.4GHz OPP for am625-sk board. Requires VDD_CORE to be at 0.85V */
-		opp-1400000000 {
-			opp-hz = /bits/ 64 <1400000000>;
-			opp-supported-hw = <0x01 0x0004>;
-			clock-latency-ns = <6000000>;
-		};
+	aliases {
+		serial4 = &main_uart4;
+		serial6 = &main_uart6;
+		gpio2 = &mcu_gpio0;
 	};
 
+        transceiver2: can-phy1 {
+                compatible = "ti,tcan1042";
+                #phy-cells = <0>;
+                max-bitrate = <5000000>;
+        };
+
+        transceiver3: can-phy2 {
+                compatible = "ti,tcan1042";
+                #phy-cells = <0>;
+                max-bitrate = <5000000>;
+        };
+
+
 	memory@80000000 {
 		device_type = "memory";
 		/* 2G RAM */
@@ -68,9 +78,10 @@
 		regulator-min-microvolt = <3300000>;
 		regulator-max-microvolt = <3300000>;
 		regulator-boot-on;
-		enable-active-high;
+		/* enable-active-high; */
 		vin-supply = <&vcc_3v3_sys>;
-		gpio = <&exp1 3 GPIO_ACTIVE_HIGH>;
+		regulator-always-on; 
+		/* gpio = <&exp1 3 GPIO_ACTIVE_HIGH>; */
 	};
 
 	vdd_sd_dv: regulator-4 {
@@ -82,7 +93,8 @@
 		regulator-min-microvolt = <1800000>;
 		regulator-max-microvolt = <3300000>;
 		regulator-boot-on;
-		vin-supply = <&vcc_5v0>;
+		regulator-always-on;
+		vin-supply = <&vcc_3v3_sys>;
 		gpios = <&main_gpio0 31 GPIO_ACTIVE_HIGH>;
 		states = <1800000 0x0>,
 			 <3300000 0x1>;
@@ -105,8 +117,8 @@
 		regulator-min-microvolt = <3300000>;
 		regulator-max-microvolt = <3300000>;
 		vin-supply = <&vcc_3v3_sys>;
-		regulator-always-on;
-		gpios = <&exp1 11 GPIO_ACTIVE_LOW>;
+		/* regulator-always-on; */
+	        //gpios = <&exp1 11 GPIO_ACTIVE_LOW>;
 	};
 
 	wlan_en: regulator-7 {
@@ -120,6 +132,19 @@
 		pinctrl-names = "default";
 		pinctrl-0 = <&wlan_en_pins_default>;
 	};
+
+       btwlan_en: regulator-8 {
+               compatible = "regulator-fixed";
+               regulator-name = "btwlan_en";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+               vin-supply = <&wlan_lten>;
+               enable-active-high;
+               gpios = <&mcu_gpio0 1 GPIO_ACTIVE_HIGH>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&mcu_btwlan_en_pins_default>;
+       };
+
 };
 
 &main_pmx0 {
@@ -191,9 +216,101 @@
 			AM62X_IOPAD(0x128, PIN_INPUT, 7) /* (B23) MMC2_SDWP.GPIO0_72 */
 		>;
 	};
+
+	/* For BT/WLAN connection interface  */
+        main_uart4_pins_default: main-uart4-default-pins {
+                pinctrl-single,pins = <
+                        AM62X_IOPAD(0x00b0, PIN_INPUT, 3) /* (K22) GPMC0_CSn2.UART4_RXD */
+                        AM62X_IOPAD(0x00b4, PIN_OUTPUT, 3) /* (K24) GPMC0_CSn3.UART4_TXD */
+                >;
+        };
+
+	/* For UART6 RS232 */
+	main_uart6_pins_default: main-uart6-default-pins {
+		pinctrl-single,pins = <
+			AM62X_IOPAD(0x009c, PIN_INPUT, 3) /* (V25) GPMC0_WAIT1.UART6_RXD */
+			AM62X_IOPAD(0x00a0, PIN_OUTPUT, 3) /* (K25) GPMC0_WPn.UART6_TXD */
+		>;
+	};
+
+	/* For CAN0 , CAN2 */
+	main_mcan0_pins_default: main-mcan0-pins-default {
+                pinctrl-single,pins = <
+                        AM62X_IOPAD(0x1dc, PIN_INPUT, 0) /* (E15) MCAN0_RX */
+                        AM62X_IOPAD(0x1d8, PIN_OUTPUT, 0) /* (C15) MCAN0_TX */
+                >;
+        };
+
+
+};
+
+&mcu_gpio0 {
+        status = "okay";
 };
 
+&mcu_gpio_intr {
+	status = "okay";
+};
+
+&main_uart4 {
+       status = "okay";
+       pinctrl-names = "default";
+       //pinctrl-0 = <&main_uart4_pins_default &mcu_btwlan_en_pins_default>;
+        pinctrl-0 = <&main_uart4_pins_default>;
+
+	bluetooth {
+               enable-gpios = <&mcu_gpio0 1 GPIO_ACTIVE_HIGH>;
+       };
+
+};
+
+&main_uart6 {
+       status = "okay";
+       pinctrl-names = "default";
+       pinctrl-0 = <&main_uart6_pins_default>;
+};
+
+&mcu_pmx0 {
+	/* Enable BT/WLAN Pin */
+	mcu_btwlan_en_pins_default: mcu-btwlan-en-pins-default {
+		pinctrl-single,pins = <
+                       AM62X_MCU_IOPAD(0x0004, PIN_OUTPUT_PULLUP, 7) /* (B8) MCU_SPI0_CS1.MCU_GPIO0_1 */
+               >;
+	};
+
+	mcu_mcan1_pins_default: mcu-mcan1-pins-default {
+                pinctrl-single,pins = <
+                        AM62X_IOPAD(0x038, PIN_INPUT, 0) /* (B3) MCU_MCAN0_RX */
+                        AM62X_IOPAD(0x034, PIN_OUTPUT, 0) /* (D6) MCU_MCAN0_TX */
+                >;
+        };
+
+        mcu_mcan2_pins_default: mcu-mcan2-pins-default {
+                pinctrl-single,pins = <
+                        AM62X_IOPAD(0x040, PIN_INPUT, 0) /* (D4) MCU_MCAN1_RX */
+                        AM62X_IOPAD(0x03C, PIN_OUTPUT, 0) /* (E5) MCU_MCAN1_TX */
+                >;
+        };
+
+};
+
+&mcu_mcan1 {
+        pinctrl-names = "default";
+        pinctrl-0 = <&mcu_mcan1_pins_default>;
+        phys = <&transceiver2>;
+        status = "okay";
+};
+
+&mcu_mcan2 {
+        pinctrl-names = "default";
+        pinctrl-0 = <&mcu_mcan2_pins_default>;
+        phys = <&transceiver3>;
+        status = "okay";
+};
+
+/*
 &main_i2c1 {
+	
 	exp1: gpio@22 {
 		compatible = "ti,tca6424";
 		reg = <0x22>;
@@ -220,9 +337,12 @@
 		pinctrl-names = "default";
 		pinctrl-0 = <&main_gpio1_ioexp_intr_pins_default>;
 	};
+	
 };
+*/
 
 &sdhci1 {
+	status = "okay";
 	vmmc-supply = <&vdd_mmc1>;
 	vqmmc-supply = <&vdd_sd_dv>;
 };
@@ -345,9 +465,9 @@
 	};
 };
 
-&tlv320aic3106 {
-	DVDD-supply = <&vcc_1v8>;
-};
+//&tlv320aic3106 {
+//	DVDD-supply = <&vcc_1v8>;
+//};
 
 #define K3_TS_OFFSET(pa, val)	(0x4+(pa)*4) (0x10000 | val)
 
diff --git a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
index 07763091ab59..e7f3e88aae90 100644
--- a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
@@ -19,8 +19,9 @@
 		spi0 = &ospi0;
 		ethernet0 = &cpsw_port1;
 		ethernet1 = &cpsw_port2;
-		usb0 = &usb0;
+		//usb0 = &usb0;
 		usb1 = &usb1;
+		gpio0 = &main_gpio0;
 	};
 
 	chosen {
@@ -105,6 +106,187 @@
 		};
 	};
 
+	lcd_bl: backlight {
+                compatible = "pwm-backlight";
+                pwms = <&epwm0 0 50000 0>;
+                brightness-levels =
+                        <0 32 64 96 128 160 192 224 255>;
+                default-brightness-level = <8>;
+        };
+
+	display {
+		compatible = "edt,et070080dh6";
+		backlight = <&lcd_bl>;
+		port {
+			lcd_in: endpoint {
+				remote-endpoint = <&dpi1_out>;
+			};
+		};
+	};
+
+
+tas2505_mclk: clk-0 {
+                #clock-cells = <0>;
+                compatible = "fixed-clock";
+                clock-frequency = <12288000>;
+};
+
+codec_audio: sound {
+	compatible = "simple-audio-card";
+	simple-audio-card,name = "AM62x-SKEVM";
+	simple-audio-card,widgets =
+		"Headphone", "Headphone Jack",
+		"Microphone", "Microphone Jack",
+		"Speaker", "Speaker";
+		simple-audio-card,routing =
+		"MIC1LP", "Microphone Jack",
+		"MIC1RP", "Microphone Jack",
+		"MIC1LP", "MICBIAS",
+		"MIC1RP", "MICBIAS",
+		"Headphone Jack", "HPL",
+		"Headphone Jack", "HPR",
+		"Speaker", "SPL",
+		"Speaker", "SPR";
+		simple-audio-card,format = "dsp_b";
+		simple-audio-card,bitclock-master = <&sound_master>;
+		simple-audio-card,frame-master = <&sound_master>;
+		simple-audio-card,bitclock-inversion;
+
+		simple-audio-card,cpu {
+			sound-dai = <&mcasp1>;
+			system-clock-frequency = <12000000>;
+		};
+
+		sound_master: simple-audio-card,codec {
+			sound-dai = <&tas2505>;
+			clocks = <&tas2505_mclk>;
+		};
+};
+
+
+/*TEST*/
+/* 
+codec_test: codec_test {
+	compatible = "linux,snd-soc-dummy";
+	#sound-dai-cells = <0>;
+};
+
+snd0: sound@0 {
+	compatible = "simple-audio-card";
+	simple-audio-card,name = "DRA7xx-EVM";
+	simple-audio-card,widgets =
+	"Headphone", "Headphone Jack",
+	"Line", "Line Out",
+	"Microphone", "Mic Jack",
+	"Line", "Line In";
+	simple-audio-card,routing =
+	"Headphone Jack", "HPLOUT",
+	"Headphone Jack", "HPROUT",
+	"Line Out", "LLOUT",
+	"Line Out", "RLOUT",
+	"MIC3L", "Mic Jack",
+	"MIC3R", "Mic Jack",
+	"Mic Jack", "Mic Bias",
+	"LINE1L", "Line In",
+	"LINE1R", "Line In";
+	simple-audio-card,format = "dsp_b";
+	simple-audio-card,bitclock-master = <&sound0_master>;
+	simple-audio-card,frame-master = <&sound0_master>;
+	//simple-audio-card,bitclock-master = <&codec_test>;
+	//simple-audio-card,frame-master = <&codec_test>;
+	simple-audio-card,bitclock-inversion;
+
+	sound0_master: simple-audio-card,cpu {
+		sound-dai = <&mcasp1>;
+		system-clock-frequency = <11288000>;
+	};
+
+	simple-audio-card,codec {
+		//sound-dai = "linux,snd-soc-dummy";
+		//#sound-dai-cells = <0>;
+		//sound-dai = <&tlv320aic3106>;
+		//clocks = <&atl_clkin2_ck>;
+		sound-dai = <&tas2505>;
+		#sound-dai-cells = <0>;
+	};
+};
+*/
+
+
+        /* follow tas2505 */
+	/*
+	clk_mcasp1_fixed: clk_mcasp1_fixed {
+		#clock-cells = <0>;
+		compatible = "fixed-clock";
+		//clock-frequency = <24576000>;
+		clock-frequency = <12288000>;
+	};
+
+	clk_mcasp1: clk_mcasp1 {
+		#clock-cells = <0>;
+		compatible = "gpio-gate-clock";
+		clocks = <&clk_mcasp1_fixed>;
+		//enable-gpios = <&gpio1 27 0>; // BeagleBone Black Clk enable on GPIO1_27
+	};
+
+	sound {
+		compatible = "simple-audio-card";
+		simple-audio-card,name = "tas2505";
+		simple-audio-card,dai-link@0 {
+			format = "i2s";
+			bitclock-master = <&sound0_master>;
+			frame-master = <&sound0_master>;
+			sound0_master: cpu {
+				sound-dai = <&mcasp1>;
+				clocks = <&clk_mcasp1>;
+			};
+
+			codec {
+				sound-dai = <&tas2505>;
+			};
+		};
+	};	
+	*/
+
+        /* follow EVK  */
+	/*
+  	tas2505_mclk: clk-0 {
+                #clock-cells = <0>;
+                compatible = "fixed-clock";
+                clock-frequency = <12288000>;
+        };
+
+        codec_audio: sound {
+                compatible = "simple-audio-card";
+                simple-audio-card,name = "AM62x-SKEVM";
+                simple-audio-card,widgets =
+                        "Headphone",    "Headphone Jack",
+                        "Line",         "Line In",
+                        "Microphone",   "Microphone Jack";
+                simple-audio-card,routing =
+                        "Headphone Jack",       "HPLOUT",
+                        "Headphone Jack",       "HPROUT",
+                        "LINE1L",               "Line In",
+                        "LINE1R",               "Line In",
+                        "MIC3R",                "Microphone Jack",
+                        "Microphone Jack",      "Mic Bias";
+                simple-audio-card,format = "dsp_b";
+                simple-audio-card,bitclock-master = <&sound_master>;
+                simple-audio-card,frame-master = <&sound_master>;
+                simple-audio-card,bitclock-inversion;
+
+                simple-audio-card,cpu {
+                        sound-dai = <&mcasp1>;
+                };
+
+                sound_master: simple-audio-card,codec {
+                        sound-dai = <&tas2505>;
+                        clocks = <&tas2505_mclk>;
+                };
+        };
+	*/
+
+	/*
 	leds {
 		compatible = "gpio-leds";
 		pinctrl-names = "default";
@@ -153,7 +335,7 @@
 			clocks = <&tlv320_mclk>;
 		};
 	};
-
+	
 	hdmi: connector {
 		compatible = "hdmi-connector";
 		label = "hdmi";
@@ -164,6 +346,7 @@
 			};
 		};
 	};
+	*/
 };
 
 &main_pmx0 {
@@ -175,12 +358,12 @@
 		>;
 	};
 
-	main_i2c0_pins_default: main-i2c0-pins-default {
-		pinctrl-single,pins = <
-			AM62X_IOPAD(0x1e0, PIN_INPUT_PULLUP, 0) /* (B16/E12) I2C0_SCL */
-			AM62X_IOPAD(0x1e4, PIN_INPUT_PULLUP, 0) /* (A16/D14) I2C0_SDA */
-		>;
-	};
+	//main_i2c0_pins_default: main-i2c0-pins-default {
+	//	pinctrl-single,pins = <
+	//		AM62X_IOPAD(0x1e0, PIN_INPUT_PULLUP, 0) /* (B16/E12) I2C0_SCL */
+	//		AM62X_IOPAD(0x1e4, PIN_INPUT_PULLUP, 0) /* (A16/D14) I2C0_SDA */
+	//	>;
+	//};
 
 	main_i2c1_pins_default: main-i2c1-pins-default {
 		pinctrl-single,pins = <
@@ -188,14 +371,14 @@
 			AM62X_IOPAD(0x1ec, PIN_INPUT_PULLUP, 0) /* (A17/A16) I2C1_SDA */
 		>;
 	};
-
-	main_i2c2_pins_default: main-i2c2-pins-default {
-		pinctrl-single,pins = <
-			AM62X_IOPAD(0x0b0, PIN_INPUT_PULLUP, 1) /* (K22/H18) GPMC0_CSn2.I2C2_SCL */
-			AM62X_IOPAD(0x0b4, PIN_INPUT_PULLUP, 1) /* (K24/H19) GPMC0_CSn3.I2C2_SDA */
-		>;
-	};
-
+	
+	/* main_i2c2_pins_default: main-i2c2-pins-default { */
+	/*	pinctrl-single,pins = < */
+	/*		AM62X_IOPAD(0x0b0, PIN_INPUT_PULLUP, 1) */ /* (K22/H18) GPMC0_CSn2.I2C2_SCL */
+	/*		AM62X_IOPAD(0x0b4, PIN_INPUT_PULLUP, 1) */ /* (K24/H19) GPMC0_CSn3.I2C2_SDA */
+	/*	>;*/
+	/*};*/
+	
 	main_mmc0_pins_default: main-mmc0-pins-default {
 		pinctrl-single,pins = <
 			AM62X_IOPAD(0x220, PIN_INPUT, 0) /* (Y3/V3) MMC0_CMD */
@@ -279,7 +462,7 @@
 		pinctrl-single,pins = <
 			AM62X_IOPAD(0x090, PIN_INPUT, 2) /* (M24) GPMC0_BE0N_CLE.MCASP1_ACLKX */
 			AM62X_IOPAD(0x098, PIN_INPUT, 2) /* (U23) GPMC0_WAIT0.MCASP1_AFSX */
-			AM62X_IOPAD(0x08c, PIN_OUTPUT, 2) /* (L25) GPMC0_WEN.MCASP1_AXR0 */
+			AM62X_IOPAD(0x08c, PIN_INPUT, 2) /* (L25) GPMC0_WEN.MCASP1_AXR0 */
 			AM62X_IOPAD(0x084, PIN_INPUT, 2) /* (L23) GPMC0_ADVN_ALE.MCASP1_AXR2 */
 		>;
 	};
@@ -316,6 +499,30 @@
 			AM62X_IOPAD(0x0078, PIN_OUTPUT, 1) /* (U24) GPMC0_AD15.VOUT0_DATA23 */
 		>;
 	};
+
+	epwm0bl_pins_default: epwm0bl-default-pins {
+                pinctrl-single,pins = <
+                        AM62X_IOPAD(0x01b4, PIN_OUTPUT_PULLUP, 2) /* (A13) SPI0_CS0.EHRPWM0_A */
+                >;
+        };
+
+};
+
+&mcu_pmx0 {
+	touchscreen_pins_default: touchscreen-default-pins {
+		pinctrl-single,pins = <
+			AM62X_MCU_IOPAD(0x0024, PIN_OUTPUT, 0) /* (B4) WKUP_UART0_RXD */
+			AM62X_MCU_IOPAD(0x0028, PIN_INPUT, 0) /* (C5) WKUP_UART0_TXD */
+		>;
+	};
+
+	/* AMP reset */
+	//ampreset_pins_default: ampreset-default-pins {
+	//	pinctrl-single,pins = <
+	//		AM62X_MCU_IOPAD(0x000c, PIN_OUTPUT_PULLDOWN, 7) /* (D9) MCU_SPI0_D0.MCU_GPIO0_3 */
+	//	>;
+	//};
+	
 };
 
 &wkup_uart0 {
@@ -337,12 +544,43 @@
 	status = "reserved";
 };
 
-&main_i2c0 {
+&epwm0 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&epwm0bl_pins_default>;
+	status = "okay";
+ };
+
+&main_gpio0 {
 	status = "okay";
+};
+
+/*
+&main_i2c0 {
+	status = "disabled";
 	pinctrl-names = "default";
 	pinctrl-0 = <&main_i2c0_pins_default>;
-	clock-frequency = <400000>;
+	clock-frequency = <100000>;
 
+        //eeprom@51 {
+        //        compatible = "atmel,24c512";
+        //        reg = <0x51>;
+	//	pagesize = <64>;
+        //};
+
+        touchscreen@14 {
+                compatible = "goodix,gt911";
+                reg = <0x14>;
+                pinctrl-names = "default";
+                pinctrl-0 = <&touchscreen_pins_default>;
+                interrupt-parent = <&main_gpio0>;
+                interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
+                irq-gpios = <&main_gpio0 9 GPIO_ACTIVE_LOW>;
+                reset-gpios = <&main_gpio0 10 GPIO_ACTIVE_LOW>;
+                touchscreen-size-x = <800>;
+                touchscreen-size-y = <480>;
+        };
+
+        
 	typec_pd0: tps6598x@3f {
 		compatible = "ti,tps6598x";
 		reg = <0x3f>;
@@ -366,26 +604,45 @@
 			};
 		};
 	};
+	
 };
-
+*/
 &main_i2c1 {
 	status = "okay";
 	pinctrl-names = "default";
 	pinctrl-0 = <&main_i2c1_pins_default>;
 	clock-frequency = <100000>;
+	#address-cells = <1>;
+	#size-cells = <0>;
+
+        pcf8523_rtc: rtc@68 {
+                compatible = "nxp,pcf8523";
+                reg = <0x68>;
+		quartz-load-femtofarads = <1250>;
+	};
 
-	tlv320aic3106: audio-codec@1b {
+	tas2505: tas2505@18 {
 		#sound-dai-cells = <0>;
-		compatible = "ti,tlv320aic3106";
-		reg = <0x1b>;
-		ai3x-micbias-vg = <1>;	/* 2.0V */
+		compatible = "ti,tas2505";
+		reg = <0x18>;
+		//reset-gpios = <&mcu_gpio0 3 GPIO_ACTIVE_LOW>;
+		gpio-reset = <&mcu_gpio0 3 GPIO_ACTIVE_LOW>;
+		clock-source = <0>;/* 0: MCLK, 1: BCLK */
+		status = "ok";
+	}; 
+
+	//tlv320aic3106: audio-codec@1b {
+	//	#sound-dai-cells = <0>;
+	//	compatible = "ti,tlv320aic3106";
+	//	reg = <0x1b>;
+	//	ai3x-micbias-vg = <1>;	/* 2.0V */
 
 		/* Regulators */
-		AVDD-supply = <&vcc_3v3_sys>;
-		IOVDD-supply = <&vcc_3v3_sys>;
-		DRVDD-supply = <&vcc_3v3_sys>;
-	};
-
+	//	AVDD-supply = <&vcc_3v3_sys>;
+	//	IOVDD-supply = <&vcc_3v3_sys>;
+	//	DRVDD-supply = <&vcc_3v3_sys>;
+	//};
+        /*
 	sii9022: sii9022@3b {
 		#sound-dai-cells = <0>;
 		compatible = "sil,sii9022";
@@ -416,15 +673,17 @@
 				};
 			};
 		};
-	};
+	}; */
 };
 
+/*
 &main_i2c2 {
 	status = "okay";
 	pinctrl-names = "default";
 	pinctrl-0 = <&main_i2c2_pins_default>;
 	clock-frequency = <400000>;
 };
+*/
 
 &sdhci0 {
 	status = "okay";
@@ -500,6 +759,7 @@
 	ti,vbus-divider;
 };
 
+/*
 &usb0 {
 	#address-cells = <1>;
 	#size-cells = <0>;
@@ -512,6 +772,7 @@
 	       };
 	};
 };
+*/
 
 &usb1 {
 	dr_mode = "host";
@@ -539,6 +800,20 @@
 	rx-num-evt = <32>;
 };
 
+&mcasp1	{
+	#sound-dai-cells = <0>;
+	pinctrl-names = "default";
+	pinctrl-0 = <&main_mcasp1_pins_default>;
+	status = "okay";
+	op-mode = <0>;	/* MCASP_IIS_MODE */
+	tdm-slots = <8>;
+	serial-dir = <	/* 0: INACTIVE, 1: TX, 2: RX */
+			2 2 1 0
+		>;
+	tx-num-evt = <32>;
+	rx-num-evt = <32>;
+};
+
 &ospi0 {
 	status = "okay";
 	pinctrl-names = "default";
@@ -564,7 +839,7 @@
 		reg = <1>;
 
 		dpi1_out: endpoint {
-			remote-endpoint = <&sii9022_in>;
+			remote-endpoint = <&lcd_in>;
 		};
 	};
 };
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index e56a47228ac3..b2673a176c0e 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -1,6 +1,48 @@
 CONFIG_SYSVIPC=y
 CONFIG_POSIX_MQUEUE=y
 CONFIG_AUDIT=y
+#
+# IRQ subsystem
+#
+CONFIG_GENERIC_IRQ_PROBE=y
+CONFIG_GENERIC_IRQ_SHOW=y
+CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
+CONFIG_GENERIC_PENDING_IRQ=y
+CONFIG_GENERIC_IRQ_MIGRATION=y
+CONFIG_HARDIRQS_SW_RESEND=y
+CONFIG_GENERIC_IRQ_CHIP=y
+CONFIG_IRQ_DOMAIN=y
+CONFIG_IRQ_SIM=y
+CONFIG_IRQ_DOMAIN_HIERARCHY=y
+CONFIG_GENERIC_MSI_IRQ=y
+CONFIG_GENERIC_MSI_IRQ_DOMAIN=y
+CONFIG_IRQ_MSI_IOMMU=y
+CONFIG_GENERIC_IRQ_MATRIX_ALLOCATOR=y
+CONFIG_GENERIC_IRQ_RESERVATION_MODE=y
+CONFIG_IRQ_FORCED_THREADING=y
+CONFIG_SPARSE_IRQ=y
+# CONFIG_GENERIC_IRQ_DEBUGFS is not set
+# end of IRQ subsystem
+
+CONFIG_CLOCKSOURCE_WATCHDOG=y
+CONFIG_ARCH_CLOCKSOURCE_INIT=y
+CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y
+CONFIG_GENERIC_TIME_VSYSCALL=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
+CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y
+CONFIG_GENERIC_CMOS_UPDATE=y
+CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y
+CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y
+CONFIG_CONTEXT_TRACKING=y
+CONFIG_CONTEXT_TRACKING_IDLE=y
+
+#
+# Timers subsystem
+#
+CONFIG_TICK_ONESHOT=y
+CONFIG_NO_HZ_COMMON=y
+# CONFIG_HZ_PERIODIC is not set
 CONFIG_NO_HZ_IDLE=y
 CONFIG_HIGH_RES_TIMERS=y
 CONFIG_BPF_SYSCALL=y
@@ -218,9 +260,9 @@ CONFIG_CGROUP_NET_PRIO=y
 CONFIG_CAN=m
 CONFIG_BT=m
 CONFIG_BT_HIDP=m
-# CONFIG_BT_LE is not set
+CONFIG_BT_LE=m
 CONFIG_BT_LEDS=y
-# CONFIG_BT_DEBUGFS is not set
+CONFIG_BT_DEBUGFS=m
 CONFIG_BT_HCIBTUSB=m
 CONFIG_BT_HCIUART=m
 CONFIG_BT_HCIUART_LL=y
@@ -331,7 +373,7 @@ CONFIG_QCOM_FASTRPC=m
 CONFIG_SRAM=y
 CONFIG_SRAM_DMA_HEAP=y
 CONFIG_PCI_ENDPOINT_TEST=m
-CONFIG_EEPROM_AT24=m
+CONFIG_EEPROM_AT24=y
 CONFIG_EEPROM_AT25=m
 CONFIG_UACCE=m
 # CONFIG_SCSI_PROC_FS is not set
@@ -477,10 +519,13 @@ CONFIG_KEYBOARD_SNVS_PWRKEY=m
 CONFIG_KEYBOARD_IMX_SC_KEY=m
 CONFIG_KEYBOARD_CROS_EC=y
 CONFIG_INPUT_TOUCHSCREEN=y
-CONFIG_TOUCHSCREEN_ATMEL_MXT=m
-CONFIG_TOUCHSCREEN_GOODIX=m
-CONFIG_TOUCHSCREEN_ILI210X=m
-CONFIG_TOUCHSCREEN_EDT_FT5X06=m
+CONFIG_I2C_HID_OF_GOODIX=y 
+# CONFIG_TOUCHSCREEN_GT9XXNEW_TS=y
+# CONFIG_TOUCHSCREEN_GT9XXNEWDUP_TS=y
+# CONFIG_TOUCHSCREEN_ATMEL_MXT=m
+CONFIG_TOUCHSCREEN_GOODIX=y
+# CONFIG_TOUCHSCREEN_ILI210X=m
+# CONFIG_TOUCHSCREEN_EDT_FT5X06=m
 CONFIG_INPUT_MISC=y
 CONFIG_INPUT_PM8941_PWRKEY=y
 CONFIG_INPUT_PM8XXX_VIBRATOR=m
@@ -493,6 +538,7 @@ CONFIG_SERIO_AMBAKMI=y
 CONFIG_LEGACY_PTY_COUNT=16
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_DMA=y
 CONFIG_SERIAL_8250_EXTENDED=y
 CONFIG_SERIAL_8250_SHARE_IRQ=y
 CONFIG_SERIAL_8250_BCM2835AUX=y
@@ -526,6 +572,8 @@ CONFIG_SERIAL_FSL_LINFLEXUART_CONSOLE=y
 CONFIG_SERIAL_MVEBU_UART=y
 CONFIG_SERIAL_OWL=y
 CONFIG_SERIAL_DEV_BUS=y
+CONFIG_SERIAL_8250_NR_UARTS=12
+CONFIG_SERIAL_8250_RUNTIME_UARTS=12
 CONFIG_VIRTIO_CONSOLE=y
 CONFIG_IPMI_HANDLER=m
 CONFIG_IPMI_DEVICE_INTERFACE=m
@@ -559,6 +607,8 @@ CONFIG_I2C_TEGRA=y
 CONFIG_I2C_UNIPHIER_F=y
 CONFIG_I2C_RCAR=y
 CONFIG_I2C_CROS_EC_TUNNEL=y
+CONFIG_REGMAP=y
+CONFIG_REGMAP_I2C=y
 CONFIG_SPI=y
 CONFIG_SPI_ARMADA_3700=y
 CONFIG_SPI_BCM2835=m
@@ -644,6 +694,15 @@ CONFIG_GPIO_PCA953X_IRQ=y
 CONFIG_GPIO_BD9571MWV=m
 CONFIG_GPIO_MAX77620=y
 CONFIG_GPIO_SL28CPLD=m
+CONFIG_GPIOLIB=y
+CONFIG_GPIOLIB_FASTPATH_LIMIT=512
+CONFIG_GPIO_ACPI=y
+CONFIG_GPIOLIB_IRQCHIP=y
+CONFIG_DEBUG_GPIO=y
+CONFIG_GPIO_SYSFS=y
+CONFIG_GPIO_CDEV=y
+CONFIG_GPIO_CDEV_V1=y
+CONFIG_GPIO_GENERIC=y
 CONFIG_POWER_RESET_MSM=y
 CONFIG_POWER_RESET_QCOM_PON=m
 CONFIG_POWER_RESET_XGENE=y
@@ -876,6 +935,7 @@ CONFIG_SND=y
 CONFIG_SND_HDA_TEGRA=m
 CONFIG_SND_HDA_CODEC_HDMI=m
 CONFIG_SND_SOC=y
+CONFIG_SND_SOC_PCMDEVICE=y
 CONFIG_SND_BCM2835_SOC_I2S=m
 CONFIG_SND_SOC_FSL_ASRC=m
 CONFIG_SND_SOC_FSL_MICFIL=m
@@ -887,67 +947,72 @@ CONFIG_SND_SOC_FSL_ASOC_CARD=m
 CONFIG_SND_SOC_IMX_AUDMIX=m
 CONFIG_SND_MESON_AXG_SOUND_CARD=m
 CONFIG_SND_MESON_GX_SOUND_CARD=m
-CONFIG_SND_SOC_QCOM=m
-CONFIG_SND_SOC_APQ8016_SBC=m
-CONFIG_SND_SOC_MSM8996=m
-CONFIG_SND_SOC_SDM845=m
-CONFIG_SND_SOC_SM8250=m
-CONFIG_SND_SOC_SC7180=m
-CONFIG_SND_SOC_SC7280=m
-CONFIG_SND_SOC_ROCKCHIP=m
-CONFIG_SND_SOC_ROCKCHIP_SPDIF=m
-CONFIG_SND_SOC_ROCKCHIP_RT5645=m
-CONFIG_SND_SOC_RK3399_GRU_SOUND=m
-CONFIG_SND_SOC_SAMSUNG=y
+# CONFIG_SND_SOC_QCOM=m
+# CONFIG_SND_SOC_APQ8016_SBC=m
+# CONFIG_SND_SOC_MSM8996=m
+# CONFIG_SND_SOC_SDM845=m
+# CONFIG_SND_SOC_SM8250=m
+# CONFIG_SND_SOC_SC7180=m
+# CONFIG_SND_SOC_SC7280=m
+# CONFIG_SND_SOC_ROCKCHIP=m
+# CONFIG_SND_SOC_ROCKCHIP_SPDIF=m
+# CONFIG_SND_SOC_ROCKCHIP_RT5645=m
+# CONFIG_SND_SOC_RK3399_GRU_SOUND=m
+# CONFIG_SND_SOC_SAMSUNG=y
 CONFIG_SND_SOC_RCAR=m
 CONFIG_SND_SOC_RZ=m
-CONFIG_SND_SUN8I_CODEC=m
-CONFIG_SND_SUN8I_CODEC_ANALOG=m
-CONFIG_SND_SUN50I_CODEC_ANALOG=m
-CONFIG_SND_SUN4I_I2S=m
-CONFIG_SND_SUN4I_SPDIF=m
-CONFIG_SND_SOC_TEGRA=m
-CONFIG_SND_SOC_TEGRA210_AHUB=m
-CONFIG_SND_SOC_TEGRA210_DMIC=m
-CONFIG_SND_SOC_TEGRA210_I2S=m
-CONFIG_SND_SOC_TEGRA210_OPE=m
-CONFIG_SND_SOC_TEGRA186_ASRC=m
-CONFIG_SND_SOC_TEGRA186_DSPK=m
-CONFIG_SND_SOC_TEGRA210_ADMAIF=m
-CONFIG_SND_SOC_TEGRA210_MVC=m
-CONFIG_SND_SOC_TEGRA210_SFC=m
-CONFIG_SND_SOC_TEGRA210_AMX=m
-CONFIG_SND_SOC_TEGRA210_ADX=m
-CONFIG_SND_SOC_TEGRA210_MIXER=m
-CONFIG_SND_SOC_TEGRA_AUDIO_GRAPH_CARD=m
-CONFIG_SND_SOC_J721E_EVM=m
-CONFIG_SND_SOC_AK4613=m
-CONFIG_SND_SOC_ES7134=m
-CONFIG_SND_SOC_ES7241=m
-CONFIG_SND_SOC_GTM601=m
-CONFIG_SND_SOC_MSM8916_WCD_ANALOG=m
-CONFIG_SND_SOC_MSM8916_WCD_DIGITAL=m
-CONFIG_SND_SOC_RT5659=m
-CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m
-CONFIG_SND_SOC_SIMPLE_MUX=m
-CONFIG_SND_SOC_TAS571X=m
-CONFIG_SND_SOC_TLV320AIC32X4_I2C=m
-CONFIG_SND_SOC_TLV320AIC3X_I2C=m
-CONFIG_SND_SOC_WCD9335=m
-CONFIG_SND_SOC_WCD934X=m
-CONFIG_SND_SOC_WM8524=m
-CONFIG_SND_SOC_WM8904=m
-CONFIG_SND_SOC_WM8960=m
-CONFIG_SND_SOC_WM8962=m
-CONFIG_SND_SOC_WM8978=m
-CONFIG_SND_SOC_WSA881X=m
-CONFIG_SND_SOC_NAU8822=m
-CONFIG_SND_SOC_LPASS_WSA_MACRO=m
-CONFIG_SND_SOC_LPASS_VA_MACRO=m
-CONFIG_SND_SIMPLE_CARD=m
-CONFIG_SND_AUDIO_GRAPH_CARD=m
-CONFIG_SND_AUDIO_GRAPH_CARD2=m
-CONFIG_HID_MULTITOUCH=m
+# CONFIG_SND_SUN8I_CODEC=m
+# CONFIG_SND_SUN8I_CODEC_ANALOG=m
+# CONFIG_SND_SUN50I_CODEC_ANALOG=m
+# CONFIG_SND_SUN4I_I2S=m
+# CONFIG_SND_SUN4I_SPDIF=m
+# CONFIG_SND_SOC_TEGRA=m
+# CONFIG_SND_SOC_TEGRA210_AHUB=m
+# CONFIG_SND_SOC_TEGRA210_DMIC=m
+# CONFIG_SND_SOC_TEGRA210_I2S=m
+# CONFIG_SND_SOC_TEGRA210_OPE=m
+# CONFIG_SND_SOC_TEGRA186_ASRC=m
+# CONFIG_SND_SOC_TEGRA186_DSPK=m
+# CONFIG_SND_SOC_TEGRA210_ADMAIF=m
+# CONFIG_SND_SOC_TEGRA210_MVC=m
+# CONFIG_SND_SOC_TEGRA210_SFC=m
+# CONFIG_SND_SOC_TEGRA210_AMX=m
+# CONFIG_SND_SOC_TEGRA210_ADX=m
+# CONFIG_SND_SOC_TEGRA210_MIXER=m
+# CONFIG_SND_SOC_TEGRA_AUDIO_GRAPH_CARD=m
+# CONFIG_SND_SOC_J721E_EVM=m
+# CONFIG_SND_SOC_AK4613=m
+# CONFIG_SND_SOC_ES7134=m
+# CONFIG_SND_SOC_ES7241=m
+# CONFIG_SND_SOC_GTM601=m
+# CONFIG_SND_SOC_MSM8916_WCD_ANALOG=m
+# CONFIG_SND_SOC_MSM8916_WCD_DIGITAL=m
+# CONFIG_SND_SOC_RT5659=m
+# CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m
+# CONFIG_SND_SOC_SIMPLE_MUX=m
+# CONFIG_SND_SOC_TAS571X=m
+CONFIG_SND_SOC_TAS2505=y
+CONFIG_SND_SOC_DAVINCI_MCASP=y
+# CONFIG_SND_SOC_TLV320AIC32X4_I2C=m
+# CONFIG_SND_SOC_TLV320AIC3X_I2C=m
+# CONFIG_SND_SOC_WCD9335=m
+# CONFIG_SND_SOC_WCD934X=m
+# CONFIG_SND_SOC_WM8524=m
+# CONFIG_SND_SOC_WM8904=m
+# CONFIG_SND_SOC_WM8960=m
+# CONFIG_SND_SOC_WM8962=m
+# CONFIG_SND_SOC_WM8978=m
+# CONFIG_SND_SOC_WSA881X=m
+# CONFIG_SND_SOC_NAU8822=m
+# CONFIG_SND_SOC_LPASS_WSA_MACRO=m
+# CONFIG_SND_SOC_LPASS_VA_MACRO=m
+CONFIG_SND_TEST_COMPONENT=y
+CONFIG_SND_AUDIO_GRAPH_CARD2_CUSTOM_SAMPLE=y
+CONFIG_SND_SIMPLE_CARD=y
+CONFIG_SND_SIMPLE_CARD_UTILS=y
+CONFIG_SND_AUDIO_GRAPH_CARD=y
+CONFIG_SND_AUDIO_GRAPH_CARD2=y
+CONFIG_HID_MULTITOUCH=y
 CONFIG_I2C_HID_ACPI=m
 CONFIG_I2C_HID_OF=m
 CONFIG_USB=y
@@ -1078,6 +1143,7 @@ CONFIG_RTC_DRV_MAX77686=y
 CONFIG_RTC_DRV_RK808=m
 CONFIG_RTC_DRV_PCF85063=m
 CONFIG_RTC_DRV_PCF85363=m
+CONFIG_RTC_DRV_PCF8523=m
 CONFIG_RTC_DRV_M41T80=m
 CONFIG_RTC_DRV_BQ32K=m
 CONFIG_RTC_DRV_RX8581=m
@@ -1142,6 +1208,8 @@ CONFIG_CROS_EC=y
 CONFIG_CROS_EC_I2C=y
 CONFIG_CROS_EC_SPI=y
 CONFIG_CROS_EC_CHARDEV=m
+CONFIG_OF=y
+CONFIG_COMMON_CLK=y
 CONFIG_COMMON_CLK_RK808=y
 CONFIG_COMMON_CLK_SCMI=y
 CONFIG_COMMON_CLK_SCPI=y
@@ -1160,6 +1228,7 @@ CONFIG_CLK_IMX8QXP=y
 CONFIG_CLK_IMX8ULP=y
 CONFIG_CLK_IMX93=y
 CONFIG_TI_SCI_CLK=y
+CONFIG_TI_SYSCON_CLK=y
 CONFIG_COMMON_CLK_QCOM=y
 CONFIG_QCOM_A53PLL=y
 CONFIG_QCOM_CLK_APCS_MSM8916=y
@@ -1271,6 +1340,7 @@ CONFIG_ARCH_R9A07G043=y
 CONFIG_ARCH_R9A07G044=y
 CONFIG_ARCH_R9A07G054=y
 CONFIG_ARCH_R9A09G011=y
+CONFIG_ARCH_OMAP2PLUS=y
 CONFIG_ROCKCHIP_IODOMAIN=y
 CONFIG_ROCKCHIP_PM_DOMAINS=y
 CONFIG_ARCH_TEGRA_132_SOC=y
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 3192411218fb..239a6874b491 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -1711,8 +1711,9 @@ static const struct panel_desc edt_et057090dhu = {
 	.connector_type = DRM_MODE_CONNECTOR_DPI,
 };
 
+/* taeha 202040806 Add LCD */
 static const struct drm_display_mode edt_etm0700g0dh6_mode = {
-	.clock = 33260,
+	.clock = 26000,
 	.hdisplay = 800,
 	.hsync_start = 800 + 40,
 	.hsync_end = 800 + 40 + 128,
@@ -1724,16 +1725,17 @@ static const struct drm_display_mode edt_etm0700g0dh6_mode = {
 	.flags = DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC,
 };
 
+/* taeha 20240806 Add LCD */
 static const struct panel_desc edt_etm0700g0dh6 = {
 	.modes = &edt_etm0700g0dh6_mode,
 	.num_modes = 1,
-	.bpc = 6,
+	.bpc = 8,
 	.size = {
-		.width = 152,
-		.height = 91,
+		.width = 150,
+		.height = 94,
 	},
-	.bus_format = MEDIA_BUS_FMT_RGB666_1X18,
-	.bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_DRIVE_NEGEDGE,
+	.bus_format = MEDIA_BUS_FMT_RGB888_1X24,
+	/* .bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_DRIVE_NEGEDGE, */
 	.connector_type = DRM_MODE_CONNECTOR_DPI,
 };
 
diff --git a/sound/soc/soc-utils.c b/sound/soc/soc-utils.c
index a4dba0b751e7..f32a2b79a6d0 100644
--- a/sound/soc/soc-utils.c
+++ b/sound/soc/soc-utils.c
@@ -10,6 +10,7 @@
 #include <linux/platform_device.h>
 #include <linux/export.h>
 #include <linux/math.h>
+#include <linux/module.h>
 #include <sound/core.h>
 #include <sound/pcm.h>
 #include <sound/pcm_params.h>
@@ -217,6 +218,7 @@ int snd_soc_dai_is_dummy(struct snd_soc_dai *dai)
 		return 1;
 	return 0;
 }
+EXPORT_SYMBOL_GPL(snd_soc_dai_is_dummy);
 
 int snd_soc_component_is_dummy(struct snd_soc_component *component)
 {
@@ -239,9 +241,16 @@ static int snd_soc_dummy_probe(struct platform_device *pdev)
 	return ret;
 }
 
+static const struct of_device_id soc_dummy_id[] = {
+	{ .compatible = "linux,snd-soc-dummy", },
+	{},
+};
+MODULE_DEVICE_TABLE(of, soc_dummy_id);
+
 static struct platform_driver soc_dummy_driver = {
 	.driver = {
 		.name = "snd-soc-dummy",
+		.of_match_table = soc_dummy_id,
 	},
 	.probe = snd_soc_dummy_probe,
 };
diff --git a/sound/soc/ti/Kconfig b/sound/soc/ti/Kconfig
index 40110e9a9e8a..3b877c263b9f 100644
--- a/sound/soc/ti/Kconfig
+++ b/sound/soc/ti/Kconfig
@@ -63,6 +63,17 @@ config SND_SOC_OMAP_MCBSP
 	  Say Y or M here if you want to have support for McBSP IP found in
 	  Texas Instruments OMAP1/2/3/4/5 SoCs.
 
+# taeha, 20240903 tas2505 amp
+config SND_SOC_TAS2505
+	tristate "Texas Instruments TAS2505"
+	select REGMAP
+	select REGMAP_I2C
+	select I2C
+	help
+	  Enable support Texas Instruments tas2505.
+	  To compile this driver as a module, choose M here.
+	  If unsure select "N".
+
 config SND_SOC_OMAP_MCPDM
 	tristate "Multichannel PDM Controller (McPDM) support"
 	depends on ARCH_OMAP4 || SOC_OMAP5 || COMPILE_TEST
diff --git a/sound/soc/ti/Makefile b/sound/soc/ti/Makefile
index a21e5b0061de..8d475e50403c 100644
--- a/sound/soc/ti/Makefile
+++ b/sound/soc/ti/Makefile
@@ -46,3 +46,6 @@ obj-$(CONFIG_SND_SOC_OMAP_AMS_DELTA) += snd-soc-ams-delta.o
 obj-$(CONFIG_SND_SOC_OMAP_HDMI) += snd-soc-omap-hdmi.o
 obj-$(CONFIG_SND_SOC_OMAP_OSK5912) += snd-soc-osk5912.o
 obj-$(CONFIG_SND_SOC_J721E_EVM) += snd-soc-j721e-evm.o
+
+snd-soc-tas2505-objs := tas2505.o
+obj-$(CONFIG_SND_SOC_TAS2505) += snd-soc-tas2505.o
diff --git a/sound/soc/ti/tas2505.c b/sound/soc/ti/tas2505.c
new file mode 100644
index 000000000000..f4ea761441bd
--- /dev/null
+++ b/sound/soc/ti/tas2505.c
@@ -0,0 +1,693 @@
+/*
+ * ALSA SoC TAS2505 codec driver
+ *
+ * Author: Hieu Tran Dang <dangtranhieu2012@gmail.com>
+ *
+ * This package is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ * THIS PACKAGE IS PROVIDED AS IS AND WITHOUT ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
+ * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+ */
+#include <linux/version.h>
+#include <linux/module.h>
+#include <linux/i2c.h>
+#include <linux/clk.h>
+#include <linux/of.h>
+#include <linux/of_gpio.h>
+#include <sound/soc.h>
+#include <sound/tlv.h>
+#include <sound/pcm_params.h>
+#include "tas2505.h"
+
+enum {
+	MCLK = 0,
+	BCLK = 1,
+};
+
+struct tas2505
+{
+	int dac_vol;
+	int spk_vol1;
+}tas2505_vol;
+
+
+static int tas2505_dac_getvol(struct snd_kcontrol *kcontrol,
+	struct snd_ctl_elem_value *ucontrol)
+{
+	ucontrol->value.integer.value[0] = tas2505_vol.dac_vol;
+
+	return 0;
+}
+
+static int tas2505_dac_putvol(struct snd_kcontrol *kcontrol,
+	struct snd_ctl_elem_value *ucontrol)
+{
+	struct snd_soc_component *component =
+		snd_soc_kcontrol_component(kcontrol);
+	struct soc_mixer_control *mc =
+		(struct soc_mixer_control *)kcontrol->private_value;
+	u8 val;
+
+	val = ucontrol->value.integer.value[0];
+	val = mc->invert ? mc->max - val : val;
+	val = (val < 0) ? 0 : val;
+	tas2505_vol.dac_vol = val;
+	snd_soc_component_write(component, TAS2505_DACVOL, val);
+	
+	return 0;
+}
+
+static int tas2505_spkdrv_getvol(struct snd_kcontrol *kcontrol,
+	struct snd_ctl_elem_value *ucontrol)
+{
+	struct snd_soc_component *component =
+		snd_soc_kcontrol_component(kcontrol);
+	struct soc_mixer_control *mc =
+		(struct soc_mixer_control *)kcontrol->private_value;
+	unsigned int val;
+
+	val = snd_soc_component_read(component, TAS2505_SPKVOL1);
+
+	val = (val > mc->max) ? mc->max : val;
+	val = mc->invert ? mc->max - val : val;
+	ucontrol->value.integer.value[0] = val;
+	tas2505_vol.spk_vol1 = val;
+	return 0;
+}
+
+static int tas2505_spkdrv_putvol(struct snd_kcontrol *kcontrol,
+	struct snd_ctl_elem_value *ucontrol)
+{
+	struct snd_soc_component *component =
+		snd_soc_kcontrol_component(kcontrol);
+	struct soc_mixer_control *mc =
+		(struct soc_mixer_control *)kcontrol->private_value;
+	u8 val;
+
+	val = (ucontrol->value.integer.value[0] & 0x7f);
+	val = mc->invert ? mc->max - val : val;
+	val = (val < 0) ? 0 : val;
+	tas2505_vol.spk_vol1 = val;
+	snd_soc_component_write(component, TAS2505_SPKVOL1, val);
+
+	return 0;
+}
+
+static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -6350, 50, 0);
+static const DECLARE_TLV_DB_LINEAR(spk_drv_vol_tlv, TLV_DB_GAIN_MUTE, 0);
+static const DECLARE_TLV_DB_SCALE(spk_amp_vol_tlv, 0, 600, 1);
+
+static const struct snd_kcontrol_new tas2505_snd_controls[] = {
+	SOC_SINGLE_RANGE_EXT_TLV("DAC Playback Volume", TAS2505_DACVOL,
+		0, 48, 0x81, 1,
+		tas2505_dac_getvol, tas2505_dac_putvol, dac_vol_tlv),
+	SOC_SINGLE_RANGE_EXT_TLV("Speaker Driver Volume", TAS2505_SPKVOL1,
+		0, 0, 117, 1,
+		tas2505_spkdrv_getvol, tas2505_spkdrv_putvol, spk_drv_vol_tlv),
+	SOC_SINGLE_TLV("Speaker Amplifer Volume", TAS2505_SPKVOL2,
+		4, 5, 0, spk_amp_vol_tlv),
+};
+
+static const struct snd_soc_dapm_widget tas2505_dapm_widgets[] = {
+	SND_SOC_DAPM_DAC("DAC Channel", "Playback",
+		TAS2505_DACSETUP1, 7, 0),
+	SND_SOC_DAPM_OUT_DRV("Speaker Driver", TAS2505_SPKAMPCTRL1,
+		1, 0, NULL, 0),
+	SND_SOC_DAPM_OUTPUT("Speaker"),
+};
+
+static const struct snd_soc_dapm_route tas2505_audio_map[] = {
+	{ "Speaker Driver", NULL, "DAC Channel" },
+	{ "Speaker", NULL, "Speaker Driver" },
+};
+
+static const struct reg_default tas2505_reg_defaults[] = {
+	{ TAS2505_CLKMUX, 0x00 },
+	{ TAS2505_PLLPR, 0x11 },
+	{ TAS2505_PLLJ, 0x04 },
+	{ TAS2505_PLLDMSB, 0x00 },
+	{ TAS2505_PLLDLSB, 0x00 },
+	{ TAS2505_NDAC, 0x01 },
+	{ TAS2505_MDAC, 0x01 },
+	{ TAS2505_DOSRMSB, 0x00 },
+	{ TAS2505_DOSRLSB, 0x80 },
+	{ TAS2505_IFACE1, 0x00 },
+	{ TAS2505_IFACE3, 0x00 },
+	{ TAS2505_DACSETUP1, 0x14 },
+	{ TAS2505_DACSETUP2, 0x0c },
+	{ TAS2505_DACVOL, 0x00 },
+	{ TAS2505_REF_POR_LDO_BGAP_CTRL, 0x00 },
+	{ TAS2505_LDO_CTRL, 0x0c },
+	{ TAS2505_SPKAMPCTRL1, 0x00 },
+	{ TAS2505_SPKVOL1, 0x00 },
+	{ TAS2505_SPKVOL2, 0x50 },
+	{ TAS2505_DACFLAG1, 0x00 },
+	{ TAS2505_DACFLAG2, 0x00 },
+	{ TAS2505_STICKYFLAG1, 0x00 },
+	{ TAS2505_STICKYFLAG2, 0x00 },
+	{ TAS2505_INTFLAG1, 0x00 },
+	{ TAS2505_INTFLAG2, 0x00 },
+	{ TAS2505_DACINSTRSET, 0x02 },
+	{ TAS2505_DACANLGAINFLAG, 0x00 },
+};
+
+static bool tas2505_volatile(struct device *dev, unsigned int reg)
+{
+	switch (reg) {
+	case TAS2505_PAGECTL:
+	case TAS2505_RESET:
+	case TAS2505_DACFLAG1:
+	case TAS2505_DACFLAG2:
+	case TAS2505_STICKYFLAG1:
+	case TAS2505_STICKYFLAG2:
+	case TAS2505_INTFLAG1:
+	case TAS2505_INTFLAG2:
+	case TAS2505_DACANLGAINFLAG:
+		return true;
+	}
+	return false;
+}
+
+static bool tas2505_writeable(struct device *dev, unsigned int reg)
+{
+	switch (reg) {
+	case TAS2505_DACFLAG1:
+	case TAS2505_DACFLAG2:
+	case TAS2505_STICKYFLAG1:
+	case TAS2505_STICKYFLAG2:
+	case TAS2505_INTFLAG1:
+	case TAS2505_INTFLAG2:
+	case TAS2505_DACANLGAINFLAG:
+		return false;
+	}
+	return true;
+}
+
+static const struct regmap_range_cfg tas2505_ranges[] = {
+	{
+		.range_min = 0,
+		.range_max = 69 * 128,
+		.selector_reg = TAS2505_PAGECTL,
+		.selector_mask = 0xff,
+		.selector_shift = 0,
+		.window_start = 0,
+		.window_len = 128,
+	},
+};
+
+static const struct regmap_config tas2505_i2c_regmap = {
+	.reg_bits = 8,
+	.val_bits = 8,
+	.writeable_reg = tas2505_writeable,
+	.volatile_reg = tas2505_volatile,
+	.reg_defaults = tas2505_reg_defaults,
+	.num_reg_defaults = ARRAY_SIZE(tas2505_reg_defaults),
+	.cache_type = REGCACHE_RBTREE,
+	.ranges = tas2505_ranges,
+	.num_ranges = ARRAY_SIZE(tas2505_ranges),
+	.max_register = 69 * 128,
+};
+
+struct tas2505_rate_divs {
+	u32 mclk_p;
+	u32 rate;
+	u8 pll_r;
+	u8 pll_j;
+	u16 pll_d;
+	u8 mdac;
+	u8 ndac;
+	u16 dosr;
+};
+
+static const struct tas2505_rate_divs tas2505_divs_mclksrc[] = {
+	{ 12288000, 44100, 1, 7, 35, 4, 4, 128 },
+	{ 12288000, 48000, 1, 7, 0, 7, 2, 128 },
+	{ 2822400, 44100, 1, 8, 4672, 3, 5, 128 },
+	{ 11289600, 44100, 1, 8, 0, 4, 8, 64 },
+	{ 11289600, 22050, 1, 8, 0, 4, 8, 128 },
+	{ 2822400, 44100, 1, 8, 4672, 3, 5, 128 },
+	{ 2822400, 22050, 1, 8, 4672, 3, 5, 256 },
+};
+
+static const struct tas2505_rate_divs tas2505_divs_bclksrc[] = {
+	{ 1536000, 48000, 1, 56, 0, 2, 7, 128 },
+	{ 1411200, 44100, 1, 60, 0, 5, 3, 128 },
+	{ 3072000, 48000, 1, 28, 0, 2, 7, 128 },
+	{ 2822400, 44100, 1, 30, 0, 5, 3, 128 },
+	{ 1024000, 32000, 2, 40, 0, 5, 4, 128 },
+	{ 2048000, 32000, 1, 40, 0, 5, 4, 128 },
+};
+
+struct tas2505_priv {
+	void *codec;
+	struct device *dev;
+	struct regmap *regmap;
+	u32 sysclk;
+	u32 clk_src;
+	u32 rate;
+	int rate_div_line;
+	int pll_clkin;
+	int frame_size;
+	u8 p_div;
+};
+
+static int tas2505_setup_pll(struct snd_soc_component *codec)
+{
+	struct tas2505_priv *tas2505 = snd_soc_component_get_drvdata(codec);
+	int mclk_p = tas2505->sysclk / tas2505->p_div;
+	struct tas2505_rate_divs *rate_divs;
+	int match = -1;
+	u8 p_div;
+	int i;
+
+	if (tas2505->clk_src == MCLK) {
+		for (i = 0; i < ARRAY_SIZE(tas2505_divs_mclksrc); i++) {
+			if (
+				tas2505_divs_mclksrc[i].rate == tas2505->rate &&
+				tas2505_divs_mclksrc[i].mclk_p == mclk_p
+			) {
+				match = i;
+				break;
+			}
+		}
+
+		if (match == -1) {
+			dev_err(codec->dev,
+				"Sample rate (%u) and format not supported\n",
+				tas2505->rate);
+			return -EINVAL;
+		}
+
+		tas2505->rate_div_line = match;
+		rate_divs = (struct tas2505_rate_divs *)tas2505_divs_mclksrc;
+	} else {
+		for (i = 0; i < ARRAY_SIZE(tas2505_divs_bclksrc); i++) {
+			if (tas2505_divs_bclksrc[i].rate ==
+				tas2505->rate) {
+				match = i;
+				break;
+			}
+		}
+
+		if (match == -1) {
+			dev_err(codec->dev,
+				"Sample rate (%u) and format not supported\n",
+				tas2505->rate);
+			return -EINVAL;
+		}
+		rate_divs = (struct tas2505_rate_divs *)tas2505_divs_bclksrc;
+	}
+
+	p_div = (tas2505->p_div == 8) ? 0 : tas2505->p_div;
+	p_div <<= TAS2505_PLLPR_P_SHIFT;
+	p_div |= rate_divs[match].pll_r;
+	p_div |= TAS2505_PM_MASK;
+
+	snd_soc_component_write(codec, TAS2505_PLLPR, p_div);
+	snd_soc_component_write(codec, TAS2505_PLLJ,
+		rate_divs[match].pll_j);
+	snd_soc_component_write(codec, TAS2505_PLLDMSB,
+		rate_divs[match].pll_d >> 8);
+	snd_soc_component_write(codec, TAS2505_PLLDLSB,
+		rate_divs[match].pll_d & 0xff);
+	mdelay(15);
+	snd_soc_component_write(codec, TAS2505_NDAC,
+		TAS2505_PM_MASK | rate_divs[match].ndac);
+	snd_soc_component_write(codec, TAS2505_MDAC,
+		TAS2505_PM_MASK | rate_divs[match].mdac);
+	snd_soc_component_write(codec, TAS2505_DOSRMSB,
+		rate_divs[match].dosr >> 8);
+	snd_soc_component_write(codec, TAS2505_DOSRLSB,
+		rate_divs[match].dosr & 0xff);
+	if (tas2505->clk_src != MCLK)
+		snd_soc_component_update_bits(codec, TAS2505_BCLKNDIV,
+			TAS2505_BCLKNDIV_MASK,
+			(rate_divs[match].dosr * rate_divs[match].mdac) /
+			tas2505->frame_size);
+
+	return 0;
+}
+
+static int tas2505_hw_params(struct snd_pcm_substream *substream,
+	struct snd_pcm_hw_params *params, struct snd_soc_dai *dai)
+{
+	struct snd_soc_component *codec = dai->component;
+	struct tas2505_priv *tas2505 = snd_soc_component_get_drvdata(codec);
+	u8 data = 0;
+
+	switch (params_width(params)) {
+	case 16:
+		break;
+
+	case 20:
+		data = TAS2505_WORD_LEN_20BITS;
+		break;
+
+	case 24:
+		data = TAS2505_WORD_LEN_24BITS;
+		break;
+
+	case 32:
+		data = TAS2505_WORD_LEN_32BITS;
+		break;
+
+	default:
+		dev_err(codec->dev, "Unsupported width %d\n",
+			params_width(params));
+		return -EINVAL;
+	}
+	dev_info(codec->dev, "%s: bit width = %d\n",
+				__func__, params_width(params));
+	data <<= TAS2505_IFACE1_DATALEN_SHIFT;
+
+	snd_soc_component_update_bits(codec, TAS2505_IFACE1,
+		TAS2505_IFACE1_DATALEN_MASK, data);
+	tas2505->rate = params_rate(params);
+	tas2505->frame_size = snd_soc_params_to_frame_size(params);
+
+	return tas2505_setup_pll(codec);
+}
+
+static int tas2505_dac_mute(struct snd_soc_dai *dai, int mute,
+	int stream)
+{
+	struct snd_soc_component *codec = dai->component;
+
+	if (mute) {
+		snd_soc_component_update_bits(codec, TAS2505_DACSETUP2,
+			TAS2505_DACSETUP2_MUTE_MASK,
+			TAS2505_DACSETUP2_MUTE_MASK);
+		snd_soc_component_update_bits(codec, TAS2505_DACSETUP1,
+			0x80, 0x00);
+	} else {
+		snd_soc_component_update_bits(codec, TAS2505_DACSETUP1,
+			0x80, 0x80);
+		snd_soc_component_update_bits(codec, TAS2505_DACSETUP2,
+			TAS2505_DACSETUP2_MUTE_MASK, 0x0);
+	}
+
+	return 0;
+}
+
+static int tas2505_set_dai_fmt(struct snd_soc_dai *codec_dai,
+	unsigned int fmt)
+{
+	struct snd_soc_component *codec = codec_dai->component;
+	u8 iface_reg1 = 0;
+	u8 iface_reg3 = 0;
+
+	switch (fmt & SND_SOC_DAIFMT_MASTER_MASK) {
+	case SND_SOC_DAIFMT_CBS_CFS:
+		break;
+
+	case SND_SOC_DAIFMT_CBM_CFM:
+		iface_reg1 |= TAS2505_IFACE1_BCLKDIR_MASK;
+		iface_reg1 |= TAS2505_IFACE1_WCLKDIR_MASK;
+		break;
+
+	default:
+		dev_err(codec->dev,
+			"%s SND_SOC_DAIFMT_MASTER_MASK 0x%x \n",__FUNCTION__,fmt);
+		return -EINVAL;
+	}
+
+	switch (fmt & SND_SOC_DAIFMT_INV_MASK) {
+	case SND_SOC_DAIFMT_NB_NF:
+		break;
+
+	case SND_SOC_DAIFMT_IB_NF:
+		iface_reg3 |= TAS2505_IFACE3_BCLKINV_MASK;
+		break;
+
+	default:
+		dev_err(codec->dev,
+			"tas2505_set_dai_fmt SND_SOC_DAIFMT_INV_MASK 0x%x \n",fmt);
+		return -EINVAL;
+	}
+
+	switch (fmt & SND_SOC_DAIFMT_FORMAT_MASK) {
+	case SND_SOC_DAIFMT_I2S:
+		break;
+
+	case SND_SOC_DAIFMT_DSP_A:
+	case SND_SOC_DAIFMT_DSP_B:
+		iface_reg1 |= (TAS2505_DSP_MODE <<
+			TAS2505_IFACE1_INTERFACE_SHIFT);
+		break;
+
+	case SND_SOC_DAIFMT_RIGHT_J:
+		iface_reg1 |= (TAS2505_RJF_MODE <<
+			TAS2505_IFACE1_INTERFACE_SHIFT);
+		break;
+
+	case SND_SOC_DAIFMT_LEFT_J:
+		iface_reg1 |= (TAS2505_LJF_MODE <<
+			TAS2505_IFACE1_INTERFACE_SHIFT);
+		break;
+
+	default:
+		dev_err(codec->dev, "Invalid DAI interface format\n");
+		return -EINVAL;
+	}
+
+	snd_soc_component_write(codec, TAS2505_IFACE1, iface_reg1);
+	snd_soc_component_update_bits(codec, TAS2505_IFACE3,
+		TAS2505_IFACE3_BCLKINV_MASK | TAS2505_IFACE3_BDIVCLKIN_MASK,
+		iface_reg3);
+
+	return 0;
+}
+
+static int tas2505_set_dai_sysclk(struct snd_soc_dai *codec_dai,
+	int clk_id, unsigned int freq, int dir)
+{
+	struct snd_soc_component *codec = codec_dai->component;
+	struct tas2505_priv *tas2505 = snd_soc_component_get_drvdata(codec);
+	int i, x;
+	int ret = 0;
+
+	dev_info(tas2505->dev, "%s: clk_id: %d, freq: %d\n",
+		__func__, clk_id, freq);
+
+	if (tas2505->clk_src == MCLK) {
+		for (i = 0; i < ARRAY_SIZE(tas2505_divs_mclksrc); i++) {
+			for (x = 1; x < 9; x++) {
+				if ((freq / x) == tas2505_divs_mclksrc[i].mclk_p) {
+					tas2505->p_div = x;
+					break;
+				}
+			}
+			if (x < 9)
+				break;
+		}
+
+		if (i != ARRAY_SIZE(tas2505_divs_mclksrc)) {
+		} else {
+			dev_err(tas2505->dev,
+				"Can't produce required "
+				"PLL_CLKIN frequency\n");
+			ret = -EINVAL;
+		}
+		tas2505->pll_clkin = clk_id;
+	} else {
+		tas2505->pll_clkin = 1;
+		tas2505->p_div = 1;
+	}
+
+	if (!ret) {
+		snd_soc_component_write(codec, TAS2505_CLKMUX,
+			(tas2505->pll_clkin << TAS2505_PLL_CLKIN_SHIFT) |
+			TAS2505_CODEC_CLKIN_PLL);
+
+		tas2505->sysclk = freq;
+	}
+	return ret;
+
+}
+
+static void tas2505_power_on(struct snd_soc_component *codec)
+{
+	snd_soc_component_update_bits(codec, TAS2505_LDO_CTRL,
+		TAS2505_LDO_PLL_HP_LVL_MASK, 0);
+	snd_soc_component_update_bits(codec, TAS2505_REF_POR_LDO_BGAP_CTRL,
+		TAS2505_REF_POR_LDO_BGAP_MASTER_REF_MASK,
+		TAS2505_REF_POR_LDO_BGAP_MASTER_REF_MASK);
+}
+
+static void tas2505_power_off(struct snd_soc_component *codec)
+{
+	snd_soc_component_update_bits(codec, TAS2505_REF_POR_LDO_BGAP_CTRL,
+		TAS2505_REF_POR_LDO_BGAP_MASTER_REF_MASK, 0);
+	snd_soc_component_update_bits(codec, TAS2505_LDO_CTRL,
+		TAS2505_LDO_PLL_HP_LVL_MASK,
+		TAS2505_LDO_PLL_HP_LVL_MASK);
+}
+
+static int tas2505_set_bias_level(struct snd_soc_component *codec,
+	enum snd_soc_bias_level level)
+{
+	int current_lvl = snd_soc_component_get_bias_level(codec);
+	int rc = 0;
+
+	switch (level) {
+	case SND_SOC_BIAS_ON:
+		break;
+	case SND_SOC_BIAS_PREPARE:
+		break;
+	case SND_SOC_BIAS_STANDBY:
+		if (current_lvl == SND_SOC_BIAS_OFF) {
+			tas2505_power_on(codec);
+			dev_info(codec->dev,
+				"%s:power on\n", __func__);
+		} else
+			dev_info(codec->dev,
+				"%s:SND_SOC_BIAS_STANDBY\n",
+				__func__);
+		break;
+	case SND_SOC_BIAS_OFF:
+		if (current_lvl == SND_SOC_BIAS_STANDBY) {
+			tas2505_power_off(codec);
+			dev_info(codec->dev,
+				"%s:power off\n",
+				__func__);
+		} else
+			dev_info(codec->dev,
+				"%s:SND_SOC_BIAS_OFF\n",
+				__func__);
+		break;
+	default:
+		dev_err(codec->dev, "Invalid bias level\n");
+		rc = -EINVAL;
+	}
+
+	return rc;
+}
+
+static int tas2505_codec_probe(struct snd_soc_component *codec)
+{
+	struct tas2505_priv *tas2505 = snd_soc_component_get_drvdata(codec);
+
+	tas2505->codec = codec;
+	tas2505_vol.dac_vol = 0x00;
+	tas2505_vol.spk_vol1 = 0x00;
+
+	snd_soc_component_write(codec, TAS2505_RESET, 1);
+
+	 dev_info(codec->dev,"%s: Probe finished\n", __func__);
+	return 0;
+}
+
+static const struct snd_soc_component_driver soc_codec_driver_tas2505 = {
+	.probe			= tas2505_codec_probe,
+	.set_bias_level		= tas2505_set_bias_level,
+	.suspend_bias_off	= true,
+
+	.controls		= tas2505_snd_controls,
+	.num_controls		= ARRAY_SIZE(tas2505_snd_controls),
+	.dapm_widgets		= tas2505_dapm_widgets,
+	.num_dapm_widgets	= ARRAY_SIZE(tas2505_dapm_widgets),
+	.dapm_routes		= tas2505_audio_map,
+	.num_dapm_routes	= ARRAY_SIZE(tas2505_audio_map),
+};
+
+static const struct snd_soc_dai_ops tas2505_dai_ops = {
+	.hw_params	= tas2505_hw_params,
+	.set_sysclk	= tas2505_set_dai_sysclk,
+	.set_fmt	= tas2505_set_dai_fmt,
+	.mute_stream	= tas2505_dac_mute,
+};
+
+static struct snd_soc_dai_driver tas2505_dai_driver[] = {
+	{
+		.name = "tas2505-hifi",
+		.playback = {
+			.stream_name	= "Playback",
+			.channels_min	= 1,
+			.channels_max	= 2,
+			.rates		= TAS2505_RATES,
+			.formats	= TAS2505_FORMATS,
+		},
+		.ops = &tas2505_dai_ops,
+		.symmetric_rate = 1,
+	},
+};
+
+static int tas2505_i2c_probe(struct i2c_client *i2c,
+	const struct i2c_device_id *id)
+{
+	struct tas2505_priv *tas2505;
+	struct device_node *np = i2c->dev.of_node;
+	const struct regmap_config *regmap_config = &tas2505_i2c_regmap;
+	int ret;
+
+	tas2505 = devm_kzalloc(&i2c->dev, sizeof(*tas2505), GFP_KERNEL);
+	if (tas2505 == NULL)
+		return -ENOMEM;
+
+	tas2505->regmap = devm_regmap_init_i2c(i2c, regmap_config);
+	if (IS_ERR(tas2505->regmap)) {
+		ret = PTR_ERR(tas2505->regmap);
+		dev_err(&i2c->dev, "Failed to allocate register map: %d\n",
+			ret);
+		return ret;
+	}
+
+	ret = of_get_named_gpio(np, "gpio-reset", 0);
+	if ((ret > 0) && gpio_is_valid(ret)) {
+		devm_gpio_request_one(&i2c->dev, ret, GPIOF_OUT_INIT_HIGH,
+			"reset");
+	}
+
+	ret = of_property_read_u32(np, "clock-source",
+			&tas2505->clk_src);
+
+	dev_info(&i2c->dev, "%s: clock-source = %s\n", __func__,
+		tas2505->clk_src?"BCLK":"MCLK");
+
+	tas2505->dev = &i2c->dev;
+
+	dev_set_drvdata(tas2505->dev, tas2505);
+
+	return snd_soc_register_component(&i2c->dev,
+		&soc_codec_driver_tas2505, tas2505_dai_driver,
+		ARRAY_SIZE(tas2505_dai_driver));
+}
+
+static void tas2505_i2c_remove(struct i2c_client *i2c)
+{
+
+	snd_soc_unregister_component(&i2c->dev);
+
+	//return 0;
+}
+
+static const struct of_device_id tas2505_of_match[] = {
+	{ .compatible = "ti,tas2505" },
+	{},
+};
+MODULE_DEVICE_TABLE(of, tas2505_of_match);
+
+static const struct i2c_device_id tas2505_i2c_id[] = {
+	{ "tas2505", 0 },
+	{}
+};
+MODULE_DEVICE_TABLE(i2ic, tas2505_i2c_id);
+
+static struct i2c_driver tas2505_i2c_driver = {
+	.driver = {
+		.name		= "tas2505-codec",
+		.of_match_table	= of_match_ptr(tas2505_of_match),
+	},
+	.probe		= tas2505_i2c_probe,
+	.remove		= tas2505_i2c_remove,
+	.id_table	= tas2505_i2c_id,
+};
+
+module_i2c_driver(tas2505_i2c_driver);
+
+MODULE_DESCRIPTION("ASoC TAS2505 codec driver");
+MODULE_AUTHOR("Hieu Tran Dang <dangtranhieu2012@gmail.com>");
+MODULE_LICENSE("GPL");
diff --git a/sound/soc/ti/tas2505.h b/sound/soc/ti/tas2505.h
new file mode 100644
index 000000000000..3e55df45f894
--- /dev/null
+++ b/sound/soc/ti/tas2505.h
@@ -0,0 +1,104 @@
+/*
+ * ALSA SoC TAS2505 codec driver
+ *
+ * Author: Hieu Tran Dang <dangtranhieu2012@gmail.com>
+ *
+ * This package is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ * THIS PACKAGE IS PROVIDED AS IS AND WITHOUT ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
+ * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+ */
+
+#ifndef _TAS2505_H
+#define _TAS2505_H
+
+#define TAS2505_RATES	(SNDRV_PCM_RATE_8000_96000)
+#define TAS2505_FORMATS (SNDRV_PCM_FMTBIT_S16_LE | \
+	SNDRV_PCM_FMTBIT_S24_LE | \
+	SNDRV_PCM_FMTBIT_S32_LE)
+
+#define TAS2505_REG(page, reg)	((page * 128) + reg)
+
+#define TAS2505_PAGECTL			TAS2505_REG(0, 0)
+#define TAS2505_RESET			TAS2505_REG(0, 1)
+#define TAS2505_CLKMUX			TAS2505_REG(0, 4)
+#define TAS2505_PLLPR			TAS2505_REG(0, 5)
+#define TAS2505_PLLJ			TAS2505_REG(0, 6)
+#define TAS2505_PLLDMSB			TAS2505_REG(0, 7)
+#define TAS2505_PLLDLSB			TAS2505_REG(0, 8)
+#define TAS2505_NDAC			TAS2505_REG(0, 11)
+#define TAS2505_MDAC			TAS2505_REG(0, 12)
+#define TAS2505_DOSRMSB			TAS2505_REG(0, 13)
+#define TAS2505_DOSRLSB			TAS2505_REG(0, 14)
+#define TAS2505_IFACE1			TAS2505_REG(0, 27)
+#define TAS2505_IFACE3			TAS2505_REG(0, 29)
+#define TAS2505_BCLKNDIV		TAS2505_REG(0, 30)
+#define TAS2505_DACFLAG1		TAS2505_REG(0, 37)
+#define TAS2505_DACFLAG2		TAS2505_REG(0, 38)
+#define TAS2505_STICKYFLAG1		TAS2505_REG(0, 42)
+#define TAS2505_INTFLAG1		TAS2505_REG(0, 43)
+#define TAS2505_STICKYFLAG2		TAS2505_REG(0, 44)
+#define TAS2505_INTFLAG2		TAS2505_REG(0, 46)
+#define TAS2505_DACINSTRSET		TAS2505_REG(0, 60)
+#define TAS2505_DACSETUP1		TAS2505_REG(0, 63)
+#define TAS2505_DACSETUP2		TAS2505_REG(0, 64)
+#define TAS2505_DACVOL			TAS2505_REG(0, 65)
+#define TAS2505_REF_POR_LDO_BGAP_CTRL	TAS2505_REG(1, 1)
+#define TAS2505_LDO_CTRL		TAS2505_REG(1, 2)
+#define TAS2505_PLAYBACKCONF1		TAS2505_REG(1, 3)
+#define TAS2505_SPKAMPCTRL1		TAS2505_REG(1, 45)
+#define TAS2505_SPKVOL1			TAS2505_REG(1, 46)
+#define TAS2505_SPKVOL2			TAS2505_REG(1, 48)
+#define TAS2505_DACANLGAINFLAG		TAS2505_REG(1, 63)
+
+#define TAS2505_PLLPR_P_MASK				(0x70)
+#define TAS2505_PLLPR_R_MASK				(0xf)
+#define TAS2505_PLL_DAC_MASK				(0x7f)
+#define TAS2505_BCLKNDIV_MASK				(0x7f)
+#define TAS2505_IFACE1_DATALEN_MASK			(0x30)
+#define TAS2505_IFACE1_WCLKDIR_MASK			(0x4)
+#define TAS2505_IFACE1_BCLKDIR_MASK			(0x8)
+#define TAS2505_IFACE1_INTERFACE_MASK			(0xc0)
+#define TAS2505_IFACE3_BDIVCLKIN_MASK			(0x1)
+#define TAS2505_IFACE3_BCLKINV_MASK			(0x8)
+#define TAS2505_DACSETUP1_PATH_CTRL_MSK			(0x30)
+#define TAS2505_DACSETUP2_MUTE_MASK			(0x8)
+#define TAS2505_PM_MASK					(0x80)
+#define TAS2505_LDO_PLL_HP_LVL_MASK			(0x8)
+#define TAS2505_REF_POR_LDO_BGAP_MASTER_REF_MASK	(0x10)
+#define TAS2505_SPKVOL2_MSK				(0x70)
+#define TAS2505_CODEC_CLKIN_MSK				(0x3)
+#define TAS2505_PLL_INPUT_CLK_MSK			(0xC)
+#define TAS2505_SPKAMPCTRL1_SPKDRV_MSK			BIT(1)
+
+#define TAS2505_PLLPR_P_SHIFT			(4)
+#define TAS2505_PLL_CLKIN_SHIFT			(2)
+#define TAS2505_IFACE1_DATALEN_SHIFT		(4)
+#define TAS2505_IFACE1_INTERFACE_SHIFT		(6)
+#define TAS2505_IFACE3_BCLKINV_SHIFT		(4)
+#define TAS2505_SPKVOL2_6DB_SHIFT		(4)
+#define TAS2505_DACSETUP1_PATH_CTRL_SHIFT	(4)
+
+#define TAS2505_WORD_LEN_20BITS			(1)
+#define TAS2505_WORD_LEN_24BITS			(2)
+#define TAS2505_WORD_LEN_32BITS			(3)
+
+#define TAS2505_DSP_MODE			(1)
+#define TAS2505_RJF_MODE			(2)
+#define TAS2505_LJF_MODE			(3)
+
+#define TAS2505_PLL_CLKIN_MCLK			(0)
+#define TAS2505_PLL_CLKIN_BCLK			(1)
+#define TAS2505_PLL_CLKIN_GPIO			(2)
+#define TAS2505_PLL_CLKIN_DIN			(3)
+#define TAS2505_CODEC_CLKIN_PLL			(3)
+#define TAS2505_SPKVOL2_MUTE			(0)
+#define TAS2505_SPKVOL2_6DB			(1)
+#define TAS2505_DACSETUP1_PATH_CTRL_LRDIV2	(3)
+#define TAS2505_SPKAMPCTRL1_SPKDRV_PWD		(0)
+#define TAS2505_SPKAMPCTRL1_SPKDRV_PWU		(1)
+
+#endif

root@am62xx-evm:~# reboot
         Stopping Session c1 of User root...
[  OK  ] Removed slice Slice /system/getty.
[  OK  ] Removed slice Slice /system/modprobe.
[  OK  ] Stopped target Graphical Interface.
[  OK  ] Stopped target Multi-User System.
[  OK  ] Stopped target Login Prompts.
[  OK  ] Stopped target RPC Port Mapper.
[  OK  ] Stopped target Timer Units.
[  OK  ] Stopped Daily rotation of log files.
[  OK  ] Stopped Daily Cleanup of Temporary Directories.
[  OK  ] Stopped target System Time Set.
[  OK  ] Stopped target Hardware activated USB gadget.
[  OK  ] Closed Process Core Dump Socket.
[  OK  ] Closed Load/Save RF Kill Switch Status /dev/rfkill Watch.
         Stopping Job spooling tools...
         Stopping Avahi mDNS/DNS-SD Stack...
         Stopping containerd container runtime...
         Stopping Periodic Command Scheduler...
         Stopping irqbalance daemon...
         Stopping Reboot and dump vmcore via kexec...
         Stopping Lighttpd Daemon...
         Stopping Netperf Benchmark Server...
         Stopping NFS status monitor for NFSv2/3 locking....
         Stopping Serial Getty on ttyS2...
         Stopping Simple Network Ma…ent Protocol (SNMP) Daemon....
[  OK  ] Stopped startwlanap.
[  OK  ] Stopped startwlansta.
         Stopping strongSwan IPsec …Ev2 daemon using ipsec.conf...
         Stopping Load/Save Random Seed...
         Stopping TEE Supplicant...
         Stopping thermal-zone-init.service...
[  OK  ] Stopped Job spooling tools.
[  OK  ] Stopped Periodic Command Scheduler.
[  OK  ] Stopped irqbalance daemon.
[  OK  ] Stopped TEE Supplicant.
[  OK  ] Stopped Avahi mDNS/DNS-SD Stack.
[  OK  ] Stopped Netperf Benchmark Server.
[  OK  ] Stopped NFS status monitor for NFSv2/3 locking..
[  OK  ] Stopped Simple Network Man…ement Protocol (SNMP) Daemon..
[  OK  ] Stopped Serial Getty on ttyS2.
[  OK  ] Stopped containerd container runtime.
[  OK  ] Stopped strongSwan IPsec I…IKEv2 daemon using ipsec.conf.
[  OK  ] Stopped Lighttpd Daemon.
[  OK  ] Stopped Reboot and dump vmcore via kexec.
[  OK  ] Stopped Load/Save Random Seed.
[  OK  ] Stopped thermal-zone-init.service.
[  OK  ] Stopped Session c1 of User root.
[  OK  ] Removed slice Slice /system/serial-getty.
         Stopping LSB: network benchmark...
         Stopping LSB: Expand Rootfs of boot device...
         Stopping User Login Management...
         Stopping User Manager for UID 0...
[  OK  ] Stopped LSB: network benchmark.
[  OK  ] Stopped User Manager for UID 0.
[  OK  ] Stopped LSB: Expand Rootfs of boot device.
[  OK  ] Stopped target Network is Online.
[  OK  ] Stopped target Host and Network Name Lookups.
         Stopping telnetd.service...
         Stopping User Runtime Directory /run/user/0...
[  OK  ] Unmounted /run/user/0.
[  OK  ] Stopped telnetd.service.
[  OK  ] Stopped User Runtime Directory /run/user/0.
[  OK  ] Removed slice User Slice of UID 0.
         Stopping Permit User Sessions...
[  OK  ] Stopped User Login Management.
[  OK  ] Stopped Permit User Sessions.
[  OK  ] Stopped target Network.
[  OK  ] Stopped target Remote File Systems.
         Stopping Network Name Resolution...
[  OK  ] Stopped Network Name Resolution.
         Stopping Network Configuration...
[  OK  ] Stopped Network Configuration.
[  OK  ] Stopped target Preparation for Network.
[  OK  ] Stopped IPv6 Packet Filtering Framework.
[  OK  ] Stopped IPv4 Packet Filtering Framework.
[  OK  ] Stopped target Basic System.
[  OK  ] Stopped target Path Units.
[  OK  ] Stopped Dispatch Password …ts to Console Directory Watch.
[  OK  ] Stopped Forward Password R…uests to Wall Directory Watch.
[  OK  ] Stopped target Slice Units.
[  OK  ] Removed slice User and Session Slice.
[  OK  ] Stopped target Socket Units.
[  OK  ] Closed Avahi mDNS/DNS-SD Stack Activation Socket.
[  OK  ] Closed Docker Socket for the API.
[  OK  ] Closed dropbear.socket.
[  OK  ] Closed Network Service Netlink Socket.
         Stopping D-Bus System Message Bus...
[  OK  ] Stopped D-Bus System Message Bus.
[  OK  ] Closed D-Bus System Message Bus Socket.
[  OK  ] Stopped target System Initialization.
         Stopping Load/Save Screen …ness of backlight:backlight...
[  OK  ] Stopped Apply Kernel Variables.
[  OK  ] Stopped Load Kernel Modules.
         Stopping Network Time Synchronization...
[  OK  ] Stopped Update is Completed.
[  OK  ] Stopped Rebuild Dynamic Linker Cache.
[  OK  ] Stopped Rebuild Journal Catalog.
         Stopping Record System Boot/Shutdown in UTMP...
[  OK  ] Stopped Network Time Synchronization.
[  OK  ] Stopped Load/Save Screen B…htness of backlight:backlight.
[  OK  ] Removed slice Slice /system/systemd-backlight.
[  OK  ] Stopped Record System Boot/Shutdown in UTMP.
[  OK  ] Stopped Create Volatile Files and Directories.
[  OK  ] Stopped target Local File Systems.
         Unmounting /media/mmcblk1p1...
         Unmounting /media/ram...
         Unmounting /run/credentials/systemd-sysusers.service...
         Unmounting /run/media/boot-mmcblk1p1...
         Unmounting Temporary Directory /tmp...
         Unmounting /var/volatile...
[  OK  ] Unmounted /media/mmcblk1p1.
[  OK  ] Unmounted /media/ram.
[  OK  ] Unmounted /run/credentials/systemd-sysusers.service.
[  OK  ] Unmounted /run/media/boot-mmcblk1p1.
[  OK  ] Unmounted Temporary Directory /tmp.
[  OK  ] Unmounted /var/volatile.
[  OK  ] Stopped target Swaps.
[  OK  ] Reached target Unmount All Filesystems.
[  OK  ] Stopped File System Check on /dev/mmcblk1p1.
[  OK  ] Removed slice Slice /system/systemd-fsck.
[  OK  ] Stopped target Preparation for Local File Systems.
[  OK  ] Stopped Create Static Device Nodes in /dev.
[  OK  ] Stopped Create System Users.
[  OK  ] Stopped Remount Root and Kernel File Systems.
[  OK  ] Reached target System Shutdown.
[  OK  ] Reached target Late Shutdown Services.
[  OK  ] Finished System Reboot.
[  OK  ] Reached target System Reboot.
[  504.354522] kauditd_printk_skb: 3 callbacks suppressed
[  504.354551] audit: type=1334 audit(510.192:15): prog-id=4 op=UNLOAD
[  504.366323] audit: type=1334 audit(510.192:16): prog-id=3 op=UNLOAD
[  504.373091] audit: type=1334 audit(510.200:17): prog-id=8 op=UNLOAD
[  504.379458] audit: type=1334 audit(510.200:18): prog-id=7 op=UNLOAD
[  504.406628] audit: type=1334 audit(510.244:19): prog-id=10 op=UNLOAD
[  504.413183] audit: type=1334 audit(510.244:20): prog-id=9 op=UNLOAD
[  504.419588] audit: type=1334 audit(510.248:21): prog-id=6 op=UNLOAD
[  504.425908] audit: type=1334 audit(510.248:22): prog-id=5 op=UNLOAD
[  504.511187] systemd-shutdown[1]: Syncing filesystems and block devices.
[  504.571250] systemd-shutdown[1]: Sending SIGTERM to remaining processes...
[  504.604530] systemd-journald[168]: Received SIGTERM from PID 1 (systemd-shutdow).
[  504.617443] audit: type=1335 audit(510.456:23): pid=168 uid=0 auid=4294967295 tty=(none) ses=4294967295 comm="systemd-journal" exe="/lib/systemd/systemd-journald" nl-mcgrp=1 op=disconnect res=1
[  504.622526] systemd-shutdown[1]: Sending SIGKILL to remaining processes...
[  504.662530] systemd-shutdown[1]: Unmounting file systems.
[  504.672279] [875]: Remounting '/' read-only with options 'n/a'.
[  504.710396] EXT4-fs (mmcblk1p2): re-mounted. Quota mode: none.
[  504.747210] systemd-shutdown[1]: All filesystems unmounted.
[  504.752930] systemd-shutdown[1]: Deactivating swaps.
[  504.758198] systemd-shutdown[1]: All swaps deactivated.
[  504.763719] systemd-shutdown[1]: Detaching loop devices.
[  504.774248] systemd-shutdown[1]: All loop devices detached.
[  504.779919] systemd-shutdown[1]: Stopping MD devices.
[  504.785439] systemd-shutdown[1]: All MD devices stopped.
[  504.790784] systemd-shutdown[1]: Detaching DM devices.
[  504.796305] systemd-shutdown[1]: All DM devices detached.
[  504.801720] systemd-shutdown[1]: All filesystems, swaps, loop devices, MD devices and DM devices detached.
[  504.841313] systemd-shutdown[1]: Syncing filesystems and block devices.
[  504.848430] systemd-shutdown[1]: Rebooting.
[  504.913117] reboot: Restarting system

U-Boot SPL 2023.04-g24098ea90d (Jul 06 2023 - 12:59:40 +0000)
SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.5--v09.00.05 (Kool Koala)')
SPL initial stack usage: 13376 bytes
Trying to boot from MMC2
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Starting ATF on ARM64 core...

NOTICE:  BL31: v2.8(release):v2.8-226-g2fcd408bb3-dirty
NOTICE:  BL31: Built : 00:42:57, Jan 13 2023

U-Boot SPL 2023.04-g24098ea90d (Jul 06 2023 - 12:59:40 +0000)
SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.5--v09.00.05 (Kool Koala)')
SPL initial stack usage: 1856 bytes
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
Trying to boot from MMC2
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted


U-Boot 2023.04-g24098ea90d (Jul 06 2023 - 12:59:40 +0000)

SoC:   AM62X SR1.0 GP
Model: Texas Instruments AM625 SK
EEPROM not available at 80, trying to read at 81
Reading on-board EEPROM at 0x51 failed -1
DRAM:  2 GiB
Core:  71 devices, 31 uclasses, devicetree: separate
MMC:   mmc@fa10000: 0, mmc@fa00000: 1
Loading Environment from nowhere... OK
In:    serial
Out:   serial
Err:   serial
EEPROM not available at 80, trying to read at 81
Reading on-board EEPROM at 0x51 failed -1
Net:   eth0: ethernet@8000000port@1
Hit any key to stop autoboot:  0
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
switch to partitions #0, OK
mmc1 is current device
i2c_write: error waiting for data ACK (status=0x116)
pca953x gpio@22: Error reading output register
SD/MMC found on device 1
Failed to load 'boot.scr'
574 bytes read in 14 ms (40 KiB/s)
Loaded env from uEnv.txt
Importing environment from mmc1 ...
## Error: "main_cpsw0_qsgmii_phyinit" not defined
20511232 bytes read in 839 ms (23.3 MiB/s)
59234 bytes read in 21 ms (2.7 MiB/s)
Working FDT set to 88000000
## Flattened Device Tree blob at 88000000
   Booting using the fdt blob at 0x88000000
Working FDT set to 88000000
ERROR: reserving fdt memory region failed (addr=ff700000 size=8ca000 flags=4)
   Loading Device Tree to 000000008feee000, end 000000008fffffff ... OK
Working FDT set to 8feee000

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 6.1.33-g40c32565ca (oe-user@oe-host) (aarch64-oe-linux-gcc (GCC) 11.3.0, GNU ld (GNU Binutils) 2.38.20220708) #1 SMP PREEMPT Thu Jul  6 14:17:24 UTC 2023
[    0.000000] Machine model: Texas Instruments AM625 SK
[    0.000000] earlycon: ns16550a0 at MMIO32 0x0000000002800000 (options '')
[    0.000000] printk: bootconsole [ns16550a0] enabled
[    0.000000] efi: UEFI not found.
[    0.000000] Reserved memory: created CMA memory pool at 0x00000000f7600000, size 128 MiB
[    0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x000000009c800000, size 3 MiB
[    0.000000] OF: reserved mem: initialized node ipc-memories@9c800000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x000000009cb00000, size 1 MiB
[    0.000000] OF: reserved mem: initialized node m4f-dma-memory@9cb00000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x000000009cc00000, size 14 MiB
[    0.000000] OF: reserved mem: initialized node m4f-memory@9cc00000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x000000009da00000, size 1 MiB
[    0.000000] OF: reserved mem: initialized node r5f-dma-memory@9da00000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x000000009db00000, size 12 MiB
[    0.000000] OF: reserved mem: initialized node r5f-memory@9db00000, compatible id shared-dma-pool
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000080000000-0x00000000ffffffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000080000000-0x000000009c7fffff]
[    0.000000]   node   0: [mem 0x000000009c800000-0x000000009e6fffff]
[    0.000000]   node   0: [mem 0x000000009e700000-0x000000009e77ffff]
[    0.000000]   node   0: [mem 0x000000009e780000-0x000000009fffffff]
[    0.000000]   node   0: [mem 0x00000000a0000000-0x00000000ff6fffff]
[    0.000000]   node   0: [mem 0x00000000ff700000-0x00000000fffc9fff]
[    0.000000]   node   0: [mem 0x00000000fffca000-0x00000000ffffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000ffffffff]
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.1 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: Trusted OS migration not required
[    0.000000] psci: SMC Calling Convention v1.2
[    0.000000] percpu: Embedded 19 pages/cpu s38376 r8192 d31256 u77824
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] CPU features: detected: GIC system register CPU interface
[    0.000000] CPU features: detected: ARM erratum 845719
[    0.000000] alternatives: applying boot alternatives
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 516096
[    0.000000] Kernel command line: console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000 mtdparts=spi-nand0:512k(ospi.tiboot3),2m(ospi.tispl),4m(ospi.u-boot),256k(ospi.env),256k(ospi.env.backup),98048k@32m(ospi.rootfs),256k@130816k(ospi.phypattern);omap2-nand.0:2m(NAND.tiboot3),2m(NAND.tispl),2m(NAND.tiboot3.backup),4m(NAND.u-boot),256k(NAND.u-boot-env),256k(NAND.u-boot-env.backup),-(NAND.file-system) root=PARTUUID=ce7df6ee-02 rw rootfstype=ext4 rootwait
[    0.000000] Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
[    0.000000] Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 1838216K/2097152K available (12416K kernel code, 1278K rwdata, 4048K rodata, 2176K init, 491K bss, 127864K reserved, 131072K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] rcu: Preemptible hierarchical RCU implementation.
[    0.000000] rcu:     RCU event tracing is enabled.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=4.
[    0.000000]  Trampoline variant of Tasks RCU enabled.
[    0.000000]  Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] GICv3: GIC: Using split EOI/Deactivate mode
[    0.000000] GICv3: 256 SPIs implemented
[    0.000000] GICv3: 0 Extended SPIs implemented
[    0.000000] Root IRQ handler: gic_handle_irq
[    0.000000] GICv3: GICv3 features: 16 PPIs
[    0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001880000
[    0.000000] ITS [mem 0x01820000-0x0182ffff]
[    0.000000] GIC: enabling workaround for ITS: Socionext Synquacer pre-ITS
[    0.000000] ITS@0x0000000001820000: Devices Table too large, reduce ids 20->19
[    0.000000] ITS@0x0000000001820000: allocated 524288 Devices @80800000 (flat, esz 8, psz 64K, shr 0)
[    0.000000] ITS: using cache flushing for cmd queue
[    0.000000] GICv3: using LPI property table @0x0000000080040000
[    0.000000] GIC: using cache flushing for LPI property table
[    0.000000] GICv3: CPU0: using allocated LPI pending table @0x0000000080050000
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0x3ffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
[    0.000000] sched_clock: 58 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
[    0.008592] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=800000)
[    0.019284] pid_max: default: 32768 minimum: 301
[    0.024070] LSM: Security Framework initializing
[    0.028958] Mount-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.036551] Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.046708] cblist_init_generic: Setting adjustable number of callback queues.
[    0.054186] cblist_init_generic: Setting shift to 2 and lim to 1.
[    0.060487] cblist_init_generic: Setting shift to 2 and lim to 1.
[    0.066919] rcu: Hierarchical SRCU implementation.
[    0.071828] rcu:     Max phase no-delay instances is 1000.
[    0.077435] Platform MSI: msi-controller@1820000 domain created
[    0.083814] PCI/MSI: /bus@f0000/interrupt-controller@1800000/msi-controller@1820000 domain created
[    0.093735] EFI services will not be available.
[    0.098722] smp: Bringing up secondary CPUs ...
[    0.104139] Detected VIPT I-cache on CPU1
[    0.104271] GICv3: CPU1: found redistributor 1 region 0:0x00000000018a0000
[    0.104291] GICv3: CPU1: using allocated LPI pending table @0x0000000080060000
[    0.104361] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[    0.105182] Detected VIPT I-cache on CPU2
[    0.105280] GICv3: CPU2: found redistributor 2 region 0:0x00000000018c0000
[    0.105295] GICv3: CPU2: using allocated LPI pending table @0x0000000080070000
[    0.105334] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
[    0.106056] Detected VIPT I-cache on CPU3
[    0.106157] GICv3: CPU3: found redistributor 3 region 0:0x00000000018e0000
[    0.106177] GICv3: CPU3: using allocated LPI pending table @0x0000000080080000
[    0.106216] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
[    0.106299] smp: Brought up 1 node, 4 CPUs
[    0.186034] SMP: Total of 4 processors activated.
[    0.190853] CPU features: detected: 32-bit EL0 Support
[    0.196131] CPU features: detected: CRC32 instructions
[    0.201466] CPU: All CPU(s) started at EL2
[    0.205667] alternatives: applying system-wide alternatives
[    0.213629] devtmpfs: initialized
[    0.226512] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.236547] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.249041] pinctrl core: initialized pinctrl subsystem
[    0.255195] DMI not present or invalid.
[    0.259865] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.267325] DMA: preallocated 256 KiB GFP_KERNEL pool for atomic allocations
[    0.274945] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.283081] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.291287] audit: initializing netlink subsys (disabled)
[    0.297026] audit: type=2000 audit(0.188:1): state=initialized audit_enabled=0 res=1
[    0.297543] thermal_sys: Registered thermal governor 'step_wise'
[    0.304964] thermal_sys: Registered thermal governor 'power_allocator'
[    0.311150] cpuidle: using governor menu
[    0.322041] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.329084] ASID allocator initialised with 65536 entries
[    0.349334] platform 30200000.dss: Fixed dependency cycle(s) with /display
[    0.359104] KASLR disabled due to lack of seed
[    0.371181] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages
[    0.378156] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page
[    0.384566] HugeTLB: registered 32.0 MiB page size, pre-allocated 0 pages
[    0.391505] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page
[    0.397914] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
[    0.404853] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
[    0.411261] HugeTLB: registered 64.0 KiB page size, pre-allocated 0 pages
[    0.418200] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page
[    0.426705] k3-chipinfo 43000014.chipid: Family:AM62X rev:SR1.0 JTAGID[0x0bb7e02f] Detected
[    0.437566] iommu: Default domain type: Translated
[    0.442643] iommu: DMA domain TLB invalidation policy: strict mode
[    0.449417] SCSI subsystem initialized
[    0.453736] usbcore: registered new interface driver usbfs
[    0.459397] usbcore: registered new interface driver hub
[    0.464879] usbcore: registered new device driver usb
[    0.470751] pps_core: LinuxPPS API ver. 1 registered
[    0.475832] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.485187] PTP clock support registered
[    0.489337] EDAC MC: Ver: 3.0.0
[    0.493678] omap-mailbox 29000000.mailbox: omap mailbox rev 0x66fc9100
[    0.500921] FPGA manager framework
[    0.504528] Advanced Linux Sound Architecture Driver Initialized.
[    0.511846] clocksource: Switched to clocksource arch_sys_counter
[    0.518401] VFS: Disk quotas dquot_6.6.0
[    0.522472] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    0.530786] NET: Registered PF_INET protocol family
[    0.536135] IP idents hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    0.545475] tcp_listen_portaddr_hash hash table entries: 1024 (order: 2, 16384 bytes, linear)
[    0.554298] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.562238] TCP established hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    0.570458] TCP bind hash table entries: 16384 (order: 7, 524288 bytes, linear)
[    0.578467] TCP: Hash tables configured (established 16384 bind 16384)
[    0.585444] UDP hash table entries: 1024 (order: 3, 32768 bytes, linear)
[    0.592381] UDP-Lite hash table entries: 1024 (order: 3, 32768 bytes, linear)
[    0.599986] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.606393] RPC: Registered named UNIX socket transport module.
[    0.612483] RPC: Registered udp transport module.
[    0.617295] RPC: Registered tcp transport module.
[    0.622103] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.628696] NET: Registered PF_XDP protocol family
[    0.633611] PCI: CLS 0 bytes, default 64
[    0.638599] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 counters available
[    0.649081] Initialise system trusted keyrings
[    0.653960] workingset: timestamp_bits=46 max_order=19 bucket_order=0
[    0.666778] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.673594] NFS: Registering the id_resolver key type
[    0.678831] Key type id_resolver registered
[    0.683111] Key type id_legacy registered
[    0.687286] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    0.694143] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[    0.701963] 9p: Installing v9fs 9p2000 file system support
[    0.741321] Key type asymmetric registered
[    0.745515] Asymmetric key parser 'x509' registered
[    0.750562] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
[    0.758340] io scheduler mq-deadline registered
[    0.762985] io scheduler kyber registered
[    0.770946] pinctrl-single 4084000.pinctrl: 34 pins, size 136
[    0.777709] pinctrl-single f4000.pinctrl: 171 pins, size 684
[    0.784643] pinctrl-single a40000.pinctrl: 512 pins, size 2048
[    0.799544] Serial: 8250/16550 driver, 12 ports, IRQ sharing enabled
[    0.817458] loop: module loaded
[    0.822330] megasas: 07.719.03.00-rc1
[    0.830956] tun: Universal TUN/TAP device driver, 1.6
[    0.837047] thunder_xcv, ver 1.0
[    0.840408] thunder_bgx, ver 1.0
[    0.843740] nicpf, ver 1.0
[    0.847001] hns3: Hisilicon Ethernet Network Driver for Hip08 Family - version
[    0.854389] hns3: Copyright (c) 2017 Huawei Corporation.
[    0.859901] hclge is initializing
[    0.863311] e1000: Intel(R) PRO/1000 Network Driver
[    0.868298] e1000: Copyright (c) 1999-2006 Intel Corporation.
[    0.874207] e1000e: Intel(R) PRO/1000 Network Driver
[    0.879281] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[    0.885383] igb: Intel(R) Gigabit Ethernet Network Driver
[    0.890903] igb: Copyright (c) 2007-2014 Intel Corporation.
[    0.896632] igbvf: Intel(R) Gigabit Virtual Function Network Driver
[    0.903049] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
[    0.909271] sky2: driver version 1.30
[    0.913850] VFIO - User Level meta-driver version: 0.3
[    0.920167] usbcore: registered new interface driver usb-storage
[    0.927068] i2c_dev: i2c /dev entries driver
[    0.933940] sdhci: Secure Digital Host Controller Interface driver
[    0.940299] sdhci: Copyright(c) Pierre Ossman
[    0.945344] Synopsys Designware Multimedia Card Interface Driver
[    0.952032] sdhci-pltfm: SDHCI platform and OF driver helper
[    0.958850] ledtrig-cpu: registered to indicate activity on CPUs
[    0.965262] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
[    0.972281] usbcore: registered new interface driver usbhid
[    0.977993] usbhid: USB HID core driver
[    0.983472] optee: probing for conduit method.
[    0.988091] optee: revision 3.20 (8e74d476)
[    0.988501] optee: dynamic shared memory is enabled
[    0.998092] optee: initialized driver
[    1.004752] Initializing XFRM netlink socket
[    1.009208] NET: Registered PF_PACKET protocol family
[    1.014549] 9pnet: Installing 9P2000 support
[    1.019031] Key type dns_resolver registered
[    1.023989] registered taskstats version 1
[    1.028214] Loading compiled-in X.509 certificates
[    1.043007] ti-sci 44043000.system-controller: ABI: 3.1 (firmware rev 0x0009 '9.0.5--v09.00.05 (Kool Koala)')
[    1.117043] at24 0-0051: supply vcc not found, using dummy regulator
[    1.148029] at24 0-0051: 65536 byte 24c512 EEPROM, writable, 64 bytes/write
[    1.155700] omap_i2c 20000000.i2c: bus 0 rev0.12 at 400 kHz
[    1.163338] tas2505-codec 1-0018: tas2505_i2c_probe: clock-source = BCLK
[    1.170630] omap_i2c 20010000.i2c: bus 1 rev0.12 at 100 kHz
[    1.176791] ti-sci-intr 4210000.interrupt-controller: Interrupt Router 5 domain created
[    1.185163] ti-sci-intr bus@f0000:interrupt-controller@a00000: Interrupt Router 3 domain created
[    1.194459] ti-sci-inta 48000000.interrupt-controller: Interrupt Aggregator domain 28 created
[    1.204703] ti-udma 485c0100.dma-controller: Number of rings: 82
[    1.213139] ti-udma 485c0100.dma-controller: Channels: 48 (bchan: 18, tchan: 12, rchan: 18)
[    1.224644] ti-udma 485c0000.dma-controller: Number of rings: 150
[    1.235178] ti-udma 485c0000.dma-controller: Channels: 35 (tchan: 20, rchan: 15)
[    1.245882] printk: console [ttyS2] disabled
[    1.250413] 2800000.serial: ttyS2 at MMIO 0x2800000 (irq = 238, base_baud = 3000000) is a 8250
[    1.259329] printk: console [ttyS2] enabled
[    1.259329] printk: console [ttyS2] enabled
[    1.267789] printk: bootconsole [ns16550a0] disabled
[    1.267789] printk: bootconsole [ns16550a0] disabled
[    1.278939] omap8250 2840000.serial: PM domain pd:155 will not be powered off
[    1.286457] 2840000.serial: ttyS4 at MMIO 0x2840000 (irq = 240, base_baud = 3000000) is a 8250
[    1.296532] 2860000.serial: ttyS6 at MMIO 0x2860000 (irq = 241, base_baud = 3000000) is a 8250
[    1.308423] spi-nor spi0.0: s28hs512t (65536 Kbytes)
[    1.313585] 7 fixed-partitions partitions found on MTD device fc40000.spi.0
[    1.320552] Creating 7 MTD partitions on "fc40000.spi.0":
[    1.325956] 0x000000000000-0x000000080000 : "ospi.tiboot3"
[    1.332922] 0x000000080000-0x000000280000 : "ospi.tispl"
[    1.339491] 0x000000280000-0x000000680000 : "ospi.u-boot"
[    1.346158] 0x000000680000-0x0000006c0000 : "ospi.env"
[    1.352565] 0x0000006c0000-0x000000700000 : "ospi.env.backup"
[    1.359537] 0x000000800000-0x000003fc0000 : "ospi.rootfs"
[    1.366221] 0x000003fc0000-0x000004000000 : "ospi.phypattern"
[    1.375014] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
[    1.419873] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
[    1.429290] mdio_bus 8000f00.mdio: MDIO device at address 1 is missing.
[    1.435918] davinci_mdio 8000f00.mdio: phy[0]: device 8000f00.mdio:00, driver TI DP83867
[    1.444050] am65-cpsw-nuss 8000000.ethernet: initializing am65 cpsw nuss version 0x6BA01103, cpsw version 0x6BA81103 Ports: 3 quirks:00000006
[    1.457065] am65-cpsw-nuss 8000000.ethernet: Use random MAC address
[    1.463335] am65-cpsw-nuss 8000000.ethernet: initialized cpsw ale version 1.5
[    1.470461] am65-cpsw-nuss 8000000.ethernet: ALE Table size 512
[    1.477075] pps pps0: new PPS source ptp0
[    1.481420] am65-cpsw-nuss 8000000.ethernet: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 pps:1
[    1.492083] am65-cpsw-nuss 8000000.ethernet: set new flow-id-base 19
[    1.504598] mmc0: CQHCI version 5.10
[    1.509424] omap8250 2840000.serial: Failed to create device link (0x180) with 4201000.gpio
[    1.524874] Goodix-TS 0-0014: supply AVDD28 not found, using dummy regulator
[    1.532116] Goodix-TS 0-0014: supply VDDIO not found, using dummy regulator
[    1.546550] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit
[    1.606591] mmc0: Command Queue Engine enabled
[    1.611112] mmc0: new HS200 MMC card at address 0001
[    1.617417] mmcblk0: mmc0:0001 0IM20E 29.6 GiB
[    1.628417] mmcblk0boot0: mmc0:0001 0IM20E 31.5 MiB
[    1.634958] mmcblk0boot1: mmc0:0001 0IM20E 31.5 MiB
[    1.640512] Goodix-TS 0-0014: ID 911, version: 1060
[    1.641368] mmcblk0rpmb: mmc0:0001 0IM20E 4.00 MiB, chardev (240:0)
[    1.645570] Goodix-TS 0-0014: Direct firmware load for goodix_911_cfg.bin failed with error -2
[    1.660481] pca953x 1-0022: supply vcc not found, using dummy regulator
[    1.664733] Goodix-TS 0-0014: Invalid config (799, 479, 0), using defaults
[    1.667294] pca953x 1-0022: using AI
[    1.674134] input: Goodix Capacitive TouchScreen as /devices/platform/bus@f0000/20000000.i2c/i2c-0/0-0014/input/input0
[    1.700020] pca953x 1-0022: failed writing register
[    1.705331] pca953x: probe of 1-0022 failed with error -121
[    1.714498] mmc1: CQHCI version 5.10
[    1.715255] debugfs: Directory 'pd:182' with parent 'pm_genpd' already present!
[    1.751457] ALSA device list:
[    1.755157]   No soundcards found.
[    1.762903] mmc1:SDHCI controller on fa00000.mmc [fa00000.mmc] using ADMA 64-bit
[    1.773537] Waiting for root device PARTUUID=ce7df6ee-02...
[    1.815820] mmc1: new high speed SDXC card at address aaaa
[    1.822535] mmcblk1: mmc1:aaaa SH64G 59.5 GiB
[    1.830336]  mmcblk1: p1 p2
[    1.892823] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Quota mode: none.
[    1.901515] VFS: Mounted root (ext4 filesystem) on device 179:98.
[    1.909305] devtmpfs: mounted
[    1.914380] Freeing unused kernel memory: 2176K
[    1.919170] Run /sbin/init as init process
[    4.130821] systemd[1]: System time before build time, advancing clock.
[    4.391386] NET: Registered PF_INET6 protocol family
[    4.399082] Segment Routing with IPv6
[    4.402872] In-situ OAM (IOAM) with IPv6
[    4.556373] systemd[1]: systemd 250.5+ running in system mode (+PAM -AUDIT -SELINUX -APPARMOR +IMA -SMACK +SECCOMP -GCRYPT -GNUTLS -OPENSSL +ACL +BLKID -CURL -ELFUTILS -FIDO2 -IDN2 -IDN -IPTC +KMOD -LIBCRYPTSETUP +LIBFDISK -PCRE2 -PWQUALITY -P11KIT -QRENCODE -BZIP2 -LZ4 -XZ -ZLIB +ZSTD -BPF_FRAMEWORK +XKBCOMMON +UTMP +SYSVINIT default-hierarchy=hybrid)
[    4.589604] systemd[1]: Detected architecture arm64.

Welcome to Arago 2023.04!

[    4.707325] systemd[1]: Hostname set to <am62xx-evm>.
[    5.018485] systemd-sysv-generator[151]: SysV service '/etc/init.d/reboot' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.045649] systemd-sysv-generator[151]: SysV service '/etc/init.d/psplash.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.070268] systemd-sysv-generator[151]: SysV service '/etc/init.d/umountfs' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.095077] systemd-sysv-generator[151]: SysV service '/etc/init.d/sendsigs' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.119366] systemd-sysv-generator[151]: SysV service '/etc/init.d/netperf' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.145398] systemd-sysv-generator[151]: SysV service '/etc/init.d/umountnfs.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.171592] systemd-sysv-generator[151]: SysV service '/etc/init.d/netopeer2-server' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.196478] systemd-sysv-generator[151]: SysV service '/etc/init.d/save-rtc.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.220960] systemd-sysv-generator[151]: SysV service '/etc/init.d/dropbear' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.244894] systemd-sysv-generator[151]: SysV service '/etc/init.d/resize_rootfs.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.272777] systemd-sysv-generator[151]: SysV service '/etc/init.d/halt' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.296808] systemd-sysv-generator[151]: SysV service '/etc/init.d/thermal-zone-init' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.322376] systemd-sysv-generator[151]: SysV service '/etc/init.d/sysrepo' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.346269] systemd-sysv-generator[151]: SysV service '/etc/init.d/docker.init' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.370628] systemd-sysv-generator[151]: SysV service '/etc/init.d/inetd.busybox' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.400165] systemd-sysv-generator[151]: SysV service '/etc/init.d/telnetd' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.426417] systemd-sysv-generator[151]: SysV service '/etc/init.d/single' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
[    5.949157] systemd[1]: Configuration file /etc/systemd/system/ti-apps-launcher.service is marked executable. Please remove executable permission bits. Proceeding anyway.
[    6.063639] systemd[1]: /lib/systemd/system/startwlansta.service:7: Unknown key name 'After' in section 'Service', ignoring.
[    6.077498] systemd[1]: /lib/systemd/system/startwlanap.service:7: Unknown key name 'After' in section 'Service', ignoring.
[    6.144410] systemd[1]: /lib/systemd/system/bt-enable.service:9: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
[    6.238449] systemd[1]: /etc/systemd/system/sync-clocks.service:11: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
[    6.363920] systemd[1]: Queued start job for default target Graphical Interface.
[    6.455937] systemd[1]: Created slice Slice /system/getty.
[  OK  ] Created slice Slice /system/getty.
[    6.479799] systemd[1]: Created slice Slice /system/modprobe.
[  OK  ] Created slice Slice /system/modprobe.
[    6.504405] systemd[1]: Created slice Slice /system/serial-getty.
[  OK  ] Created slice Slice /system/serial-getty.
[    6.531237] systemd[1]: Created slice User and Session Slice.
[  OK  ] Created slice User and Session Slice.
[    6.552654] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[  OK  ] Started Dispatch Password …ts to Console Directory Watch.
[    6.576534] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[  OK  ] Started Forward Password R…uests to Wall Directory Watch.
[    6.600852] systemd[1]: Reached target Path Units.
[  OK  ] Reached target Path Units.
[    6.616341] systemd[1]: Reached target Remote File Systems.
[  OK  ] Reached target Remote File Systems.
[    6.636124] systemd[1]: Reached target Slice Units.
[  OK  ] Reached target Slice Units.
[    6.652295] systemd[1]: Reached target Swaps.
[  OK  ] Reached target Swaps.
[    6.765106] systemd[1]: Listening on RPCbind Server Activation Socket.
[  OK  ] Listening on RPCbind Server Activation Socket.
[    6.788514] systemd[1]: Reached target RPC Port Mapper.
[  OK  ] Reached target RPC Port Mapper.
[    6.826867] systemd[1]: Listening on Process Core Dump Socket.
[  OK  ] Listening on Process Core Dump Socket.
[    6.849175] systemd[1]: Listening on initctl Compatibility Named Pipe.
[  OK  ] Listening on initctl Compatibility Named Pipe.
[    6.874174] systemd[1]: Listening on Journal Audit Socket.
[  OK  ] Listening on Journal Audit Socket.
[    6.899034] systemd[1]: Listening on Journal Socket (/dev/log).
[  OK  ] Listening on Journal Socket (/dev/log).
[    6.923054] systemd[1]: Listening on Journal Socket.
[  OK  ] Listening on Journal Socket.
[    6.942350] systemd[1]: Listening on Network Service Netlink Socket.
[  OK  ] Listening on Network Service Netlink Socket.
[    6.967450] systemd[1]: Listening on udev Control Socket.
[  OK  ] Listening on udev Control Socket.
[    6.990412] systemd[1]: Listening on udev Kernel Socket.
[  OK  ] Listening on udev Kernel Socket.
[    7.014727] systemd[1]: Listening on User Database Manager Socket.
[  OK  ] Listening on User Database Manager Socket.
[    7.088925] systemd[1]: Mounting Huge Pages File System...
         Mounting Huge Pages File System...
[    7.115497] systemd[1]: Mounting POSIX Message Queue File System...
         Mounting POSIX Message Queue File System...
[    7.153656] systemd[1]: Mounting Kernel Debug File System...
         Mounting Kernel Debug File System...
[    7.177399] systemd[1]: Kernel Trace File System was skipped because of a failed condition check (ConditionPathExists=/sys/kernel/tracing).
[    7.224767] systemd[1]: Mounting Temporary Directory /tmp...
         Mounting Temporary Directory /tmp...
[    7.264226] systemd[1]: Starting Create List of Static Device Nodes...
         Starting Create List of Static Device Nodes...
[    7.321372] systemd[1]: Starting Load Kernel Module configfs...
         Starting Load Kernel Module configfs...
[    7.356455] systemd[1]: Starting Load Kernel Module drm...
         Starting Load Kernel Module drm...
[    7.384909] systemd[1]: Starting Load Kernel Module fuse...
         Starting Load Kernel Module fuse...
[    7.571084] fuse: init (API version 7.37)
[    7.593255] systemd[1]: Starting Start psplash boot splash screen...
         Starting Start psplash boot splash screen...
[    7.665446] systemd[1]: Starting RPC Bind...
         Starting RPC Bind...
[    7.685200] systemd[1]: File System Check on Root Device was skipped because of a failed condition check (ConditionPathIsReadWrite=!/).
[    7.737579] systemd[1]: Starting Journal Service...
         Starting Journal Service...
[    7.773900] systemd[1]: Starting Load Kernel Modules...
         Starting Load Kernel Modules...
[    7.804945] systemd[1]: Starting Generate network units from Kernel command line...
         Starting Generate network …ts from Kernel command line...
[    7.861487] systemd[1]: Starting Remount Root and Kernel File Systems...
         Starting Remount Root and Kernel File Systems...
[    7.893847] systemd[1]: Starting Coldplug All udev Devices...
[    7.900255] cryptodev: loading out-of-tree module taints kernel.
         Starting Coldplug All udev Devices...
[    7.921675] EXT4-fs (mmcblk1p2): re-mounted. Quota mode: none.
[    7.928701] cryptodev: driver 1.12 loaded.
[    7.942318] systemd[1]: Started RPC Bind.
[  OK  ] Started RPC Bind.
[    7.961408] systemd[1]: Mounted Huge Pages File System.
[  OK  ] Mounted Huge Pages File System.
[    7.989083] systemd[1]: Mounted POSIX Message Queue File System.
[  OK  ] Mounted POSIX Message Queue File System.
[    8.012958] systemd[1]: Mounted Kernel Debug File System.
[  OK  ] Mounted Kernel Debug File System.
[    8.037031] systemd[1]: Mounted Temporary Directory /tmp.
[  OK  ] Mounted Temporary Directory /tmp.
[    8.062477] systemd[1]: Finished Create List of Static Device Nodes.
[  OK  ] Finished Create List of Static Device Nodes.
[    8.089016] systemd[1]: Started Journal Service.
[  OK  ] Started Journal Service.
[  OK  ] Finished Load Kernel Module configfs.
[  OK  ] Finished Load Kernel Module drm.
[  OK  ] Finished Load Kernel Module fuse.
[FAILED] Failed to start Start psplash boot splash screen.
See 'systemctl status psplash-start.service' for details.
[DEPEND] Dependency failed for Star…progress communication helper.
[  OK  ] Finished Load Kernel Modules.
[  OK  ] Finished Generate network units from Kernel command line.
[  OK  ] Finished Remount Root and Kernel File Systems.
         Mounting FUSE Control File System...
         Mounting Kernel Configuration File System...
         Starting Flush Journal to Persistent Storage...
         Starting Apply Kernel Variables...
[    8.440449] systemd-journald[167]: Received client request to flush runtime journal.
         Starting Create Static Device Nodes in /dev...
[  OK  ] Mounted FUSE Control File System.
[  OK  ] Mounted Kernel Configuration File System.
[  OK  ] Finished Flush Journal to Persistent Storage.
[  OK  ] Finished Apply Kernel Variables.
[  OK  ] Finished Create Static Device Nodes in /dev.
[  OK  ] Reached target Preparation for Local File Systems.
         Mounting /media/ram...
         Mounting /var/volatile...
[    8.725966] audit: type=1334 audit(1651167749.608:2): prog-id=5 op=LOAD
[    8.732796] audit: type=1334 audit(1651167749.616:3): prog-id=6 op=LOAD
         Starting Rule-based Manage…for Device Events and Files...
[  OK  ] Finished Coldplug All udev Devices.
[  OK  ] Mounted /media/ram.
[  OK  ] Mounted /var/volatile.
         Starting Load/Save Random Seed...
[  OK  ] Reached target Local File Systems.
         Starting Create Volatile Files and Directories...
[  OK  ] Finished Create Volatile Files and Directories.
         Starting Network Time Synchronization...
         Starting Record System Boot/Shutdown in UTMP...
[  OK  ] Started Rule-based Manager for Device Events and Files.
[  OK  ] Finished Record System Boot/Shutdown in UTMP.
[  OK  ] Started Network Time Synchronization.
[  OK  ] Reached target System Initialization.
[  OK  ] Started Daily Cleanup of Temporary Directories.
[  OK  ] Reached target System Time Set.
[  OK  ] Started Daily rotation of log files.
[  OK  ] Reached target Timer Units.
[  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
[  OK  ] Listening on D-Bus System Message Bus Socket.
         Starting Docker Socket for the API...
[  OK  ] Listening on dropbear.socket.
[    9.705861] rtc rtc0: Unknown quartz-load-femtofarads value: 1250. Assuming 12500
         Starting Weston socket...
[    9.720412] rtc-pcf8523 1-0068: failed to set xtal load capacitance: -121
[    9.728512] pwm-backlight backlight: supply power not found, using dummy regulator
         Starting D-Bus System Message Bus...
[    9.740716] panel-simple display: supply power not found, using dummy regulator
[    9.752707] rtc-pcf8523: probe of 1-0068 failed with error -121
[    9.768796] panel-simple display: Specify missing bus_flags
         Starting Reboot and dump vmcore via kexec...
[  OK  ] Listening on Docker Socket for the API.
[  OK  ] Listening on Weston socket.
[  OK  ] Found device /dev/ttyS2.
[  OK  ] Reached target Socket Units.
[    9.975920] random: crng init done
[   10.116185] mc: Linux media interface: v0.10
[   10.127315] rtc-ti-k3 2b1f0000.rtc: registered as rtc0
[   10.132886] rtc-ti-k3 2b1f0000.rtc: setting system clock to 1970-01-01T00:00:16 UTC (16)
[   10.142780] systemd-journald[167]: Time jumped backwards, rotating.
[   10.201381] platform 31000000.usb: Fixed dependency cycle(s) with /bus@f0000/i2c@20000000/tps6598x@3f/connector
[   10.241071] k3-m4-rproc 5000000.m4fss: assigned reserved memory node m4f-dma-memory@9cb00000
[   10.249974] k3-m4-rproc 5000000.m4fss: configured M4 for remoteproc mode
[   10.257021] k3-m4-rproc 5000000.m4fss: local reset is deasserted for device
[   10.267107] remoteproc remoteproc0: 5000000.m4fss is available
[   10.383746] CAN device driver interface
[   10.390361] videodev: Linux video capture interface: v2.00
[  OK  ] Finished Load/Save Random Seed.
[   10.461661] remoteproc remoteproc0: powering up 5000000.m4fss
[   10.467482] remoteproc remoteproc0: Booting fw image am62-mcu-m4f0_0-fw, size 54860
[   10.476963] rproc-virtio rproc-virtio.1.auto: assigned reserved memory node m4f-dma-memory@9cb00000
[   10.487268] virtio_rpmsg_bus virtio0: rpmsg host is online
[   10.493260] rproc-virtio rproc-virtio.1.auto: registered virtio0 (type 7)
[   10.500342] remoteproc remoteproc0: remote processor 5000000.m4fss is now up
[   10.507694] virtio_rpmsg_bus virtio0: creating channel ti.ipc4.ping-pong addr 0xd
[   10.515699] virtio_rpmsg_bus virtio0: creating channel rpmsg_chrdev addr 0xe
[   10.525107] platform 78000000.r5f: R5F core may have been powered on by a different host, programmed state (0) != actual state (1)
[   10.537220] platform 78000000.r5f: configured R5F for IPC-only mode
[   10.543855] platform 78000000.r5f: assigned reserved memory node r5f-dma-memory@9da00000
[   10.552911] m_can_platform 4e00000.can: m_can device registered (irq=0, version=32)
[   10.553175] remoteproc remoteproc1: 78000000.r5f is available
[   10.566637] remoteproc remoteproc1: attaching to 78000000.r5f
[   10.567528] m_can_platform 4e10000.can: m_can device registered (irq=0, version=32)
[   10.573704] platform 78000000.r5f: R5F core initialized in IPC-only mode
[   10.587113] rproc-virtio rproc-virtio.2.auto: assigned reserved memory node r5f-dma-memory@9da00000
[   10.597234] virtio_rpmsg_bus virtio1: rpmsg host is online
[   10.598265] virtio_rpmsg_bus virtio1: creating channel ti.ipc4.ping-pong addr 0xd
[   10.603096] rproc-virtio rproc-virtio.2.auto: registered virtio1 (type 7)
[   10.613262] virtio_rpmsg_bus virtio1: creating channel rpmsg_chrdev addr 0xe
[   10.617388] remoteproc remoteproc1: remote processor 78000000.r5f is now attached
[  OK  ] Finished Reboot and dump vmcore via kexec.
[   10.684556] [drm] Initialized tidss 1.0.0 20180215 for 30200000.dss on minor 0
[   10.694377] tidss 30200000.dss: [drm] fb0: tidssdrmfb frame buffer device
[   11.167631] PVR_K:  215: Device: fd00000.gpu
[   11.174834] PVR_K:  215: Read BVNC 33.15.11.3 from HW device registers
[   11.182813] PVR_K:  215: RGX Device registered with BVNC 33.15.11.3
[   11.190215] [drm] Initialized pvr 23.1.6404501 20170530 for fd00000.gpu on minor 1
[  OK  ] Started D-Bus System Message Bus.
[  OK  ] Reached target Basic System.
[  OK  ] Started Job spooling tools.
[  OK  ] Started Periodic Command Scheduler.
         Starting Print notice about GPLv3 packages...
         Starting IPv6 Packet Filtering Framework...
         Starting IPv4 Packet Filtering Framework...
[  OK  ] Started irqbalance daemon.
         Starting startwlanap...
         Starting startwlansta...
[   11.515261] audit: type=1334 audit(17.876:4): prog-id=7 op=LOAD
[   11.521420] audit: type=1334 audit(17.884:5): prog-id=8 op=LOAD
         Starting User Login Management...
[   12.179231] remoteproc remoteproc2: 30074000.pru is available
[   12.185885] remoteproc remoteproc3: 30078000.pru is available
[  OK  ] Started TEE Supplicant.
         Starting telnetd.service...
[  OK  ] Started ti-apps-launcher service.
         Starting Rotate log files...
[  OK  ] Started startwlanap.
[  OK  ] Started startwlansta.
[   12.373083] cdns-csi2rx: probe of 30101000.csi-bridge failed with error -22
[  OK  ] Started telnetd.service.
[   12.416327] xhci-hcd xhci-hcd.3.auto: xHCI Host Controller
[   12.428822] xhci-hcd xhci-hcd.3.auto: new USB bus registered, assigned bus number 1
[   12.437080] xhci-hcd xhci-hcd.3.auto: USB3 root hub has no ports
[   12.443450] xhci-hcd xhci-hcd.3.auto: hcc params 0x0258fe6d hci version 0x110 quirks 0x0000000000010010
[   12.453273] xhci-hcd xhci-hcd.3.auto: irq 452, io mem 0x31100000
[   12.463990] hub 1-0:1.0: USB hub found
[   12.469116] hub 1-0:1.0: 1 port detected
[  OK  ] Finished IPv6 Packet Filtering Framework.
[  OK  ] Finished IPv4 Packet Filtering Framework.
[  OK  ] Started User Login Management.
[  OK  ] Created slice Slice /system/systemd-backlight.
[  OK  ] Reached target Preparation for Network.
[  OK  ] Reached target Hardware activated USB gadget.
         Starting LSB: Expand Rootfs of boot device...
         Starting Load/Save Screen …ness of backlight:backlight...
         Starting Network Configuration...
[  OK  ] Finished Load/Save Screen …htness of backlight:backlight.
[  OK  ] Listening on Load/Save RF …itch Status /dev/rfkill Watch.
[   13.240612] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[   13.265748] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[  OK  ] Finished Rotate log files.
[  OK  ] Started Network Configuration.
         Starting Wait for Network to be Configured...
         Starting Network Name Resolution...
[   14.300250] am65-cpsw-nuss 8000000.ethernet eth0: PHY [8000f00.mdio:00] driver [TI DP83867] (irq=POLL)
[   14.309746] am65-cpsw-nuss 8000000.ethernet eth0: configuring for phy/rgmii-rxid link mode
[  OK  ] Started Network Name Resolution.
[  OK  ] Reached target Network.
[  OK  ] Reached target Host and Network Name Lookups.
         Starting Avahi mDNS/DNS-SD Stack...
         Starting Enable and configure wl18xx bluetooth stack...
         Starting containerd container runtime...
[  OK  ] Started Netperf Benchmark Server.
[  OK  ] Started NFS status monitor for NFSv2/3 locking..
         Starting Simple Network Ma…ent Protocol (SNMP) Daemon....
         Starting Permit User Sessions...
[  OK  ] Started LSB: Expand Rootfs of boot device.
[  OK  ] Finished Enable and configure wl18xx bluetooth stack.
[  OK  ] Finished Permit User Sessions.
[  OK  ] Started Serial Getty on ttyS2.
[  OK  ] Reached target Login Prompts.
         Starting Synchronize System and HW clocks...
[   15.989889] startwlanap.sh[639]: sed: unmatched '/'
[   16.289234] startwlanap.sh[640]: adding wlan1 interface
[   16.298865] startwlanap.sh[658]: command failed: No such file or directory (-2)
[  OK  ] Started Avahi mDNS/DNS-SD Stack.
[  OK  ] Finished Synchronize System and HW clocks.
[  OK  ] Created slice Slice /system/systemd-fsck.
         Starting File System Check on /dev/mmcblk1p1...
[   17.899993] startwlanap.sh[683]: SIOCSIFADDR: No such device
[   17.909076] startwlanap.sh[683]: wlan1: ERROR while getting interface flags: No such device
[   17.927367] startwlanap.sh[683]: SIOCSIFNETMASK: No such device
[   17.946040] startwlanap.sh[683]: wlan1: ERROR while getting interface flags: No such device
[  OK  ] Finished File System Check on /dev/mmcblk1p1.
         Mounting /run/media/boot-mmcblk1p1...
[  OK  ] Mounted /run/media/boot-mmcblk1p1.
[   18.467543] startwlanap.sh[659]: Line 499: unknown configuration item 'wep_rekey_period'
[   18.469545] startwlanap.sh[659]: 1 errors found in configuration file '/usr/share/wl18xx/hostapd.conf'
[   18.470652] startwlanap.sh[659]: Failed to set up interface with /usr/share/wl18xx/hostapd.conf
[   18.471546] startwlanap.sh[659]: Failed to initialize interface

 _____                    _____           _         _
|  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_
|     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
|__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|
              |___|                    |___|

Arago Project am62xx-evm -

Arago 2023.04 am62xx-evm -

am62xx-evm login: [   22.789950] audit: type=1325 audit(29.044:6): table=nat family=2 entries=0 op=xt_register pid=705 comm="iptables"
[   22.800443] audit: type=1300 audit(29.044:6): arch=c00000b7 syscall=209 success=yes exit=0 a0=4 a1=0 a2=40 a3=ffffc1129f08 items=0 ppid=640 pid=705 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm="iptables" exe="/usr/sbin/xtables-legacy-multi" key=(null)
[   22.827845] audit: type=1327 audit(29.044:6): proctitle=69707461626C6573002D74006E6174002D4100504F5354524F5554494E47002D6F0065746830002D6A004D415351554552414445
[   22.842368] audit: type=1325 audit(29.152:7): table=nat family=2 entries=5 op=xt_replace pid=705 comm="iptables"
[   22.852692] audit: type=1300 audit(29.152:7): arch=c00000b7 syscall=208 success=yes exit=0 a0=4 a1=0 a2=40 a3=30014210 items=0 ppid=640 pid=705 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm="iptables" exe="/usr/sbin/xtables-legacy-multi" key=(null)
[   22.879763] audit: type=1327 audit(29.152:7): proctitle=69707461626C6573002D74006E6174002D4100504F5354524F5554494E47002D6F0065746830002D6A004D415351554552414445
[   23.768712] startwlanap.sh[713]: iperf3: error - unable to start listener for connections: Cannot assign requested address
[   23.769536] startwlanap.sh[713]: iperf3: exiting
[   24.221745] platform fa20000.mmc: deferred probe pending
[   24.227217] platform sound: deferred probe pending
[   24.232086] platform regulator-6: deferred probe pending
[   24.237467] platform regulator-7: deferred probe pending
[   24.242869] platform regulator-8: deferred probe pending

am62xx-evm login: root
[   32.916265] audit: type=1334 audit(39.280:8): prog-id=9 op=LOAD
[   32.922351] audit: type=1334 audit(39.284:9): prog-id=10 op=LOAD
[   34.873228] audit: type=1006 audit(41.236:10): pid=731 uid=0 old-auid=4294967295 auid=0 tty=(none) old-ses=4294967295 ses=1 res=1
[   34.885037] audit: type=1300 audit(41.236:10): arch=c00000b7 syscall=64 success=yes exit=1 a0=8 a1=ffffe7af5f58 a2=1 a3=0 items=0 ppid=1 pid=731 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=1 comm="(systemd)" exe="/lib/systemd/systemd" key=(null)
[   34.909785] audit: type=1327 audit(41.236:10): proctitle="(systemd)"
[   35.078272] audit: type=1334 audit(41.440:11): prog-id=11 op=LOAD
[   35.084462] audit: type=1300 audit(41.440:11): arch=c00000b7 syscall=280 success=yes exit=8 a0=5 a1=ffffcc742330 a2=78 a3=0 items=0 ppid=1 pid=731 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=1 comm="systemd" exe="/lib/systemd/systemd" key=(null)
[   35.109181] audit: type=1327 audit(41.440:11): proctitle="(systemd)"
[   35.115594] audit: type=1334 audit(41.440:12): prog-id=11 op=UNLOAD
[   35.121882] audit: type=1334 audit(41.440:13): prog-id=12 op=LOAD
root@am62xx-evm:~# [   48.444908] kauditd_printk_skb: 3 callbacks suppressed
[   48.444936] audit: type=1701 audit(54.808:15): auid=4294967295 uid=0 gid=0 ses=4294967295 pid=431 comm="ti-apps-launche" exe="/usr/bin/ti-apps-launcher" sig=11 res=1
[   48.521050] audit: type=1334 audit(54.884:16): prog-id=13 op=LOAD
[   48.527290] audit: type=1334 audit(54.888:17): prog-id=14 op=LOAD
[   50.700182] audit: type=1334 audit(57.064:18): prog-id=14 op=UNLOAD
[   50.706692] audit: type=1334 audit(57.064:19): prog-id=13 op=UNLOAD

root@am62xx-evm:~# ls /dev/snd/
timer
root@am62xx-evm:~# ls /sys/bus/i2c/devices/
0-0014  0-003f  0-0051  1-0018  1-0022  1-0068  i2c-0  i2c-1
root@am62xx-evm:~# cat /proc/asound/pcm
root@am62xx-evm:~# cat /proc/asound/cards
--- no soundcards ---
root@am62xx-evm:~# dmesg | grep tas2505
[    1.163338] tas2505-codec 1-0018: tas2505_i2c_probe: clock-source = BCLK
root@am62xx-evm:~# dmesg | grep sound
[    1.755157]   No soundcards found.
[   24.227217] platform sound: deferred probe pending
root@am62xx-evm:~#

  • Hello Suren

    In our overal patch in previouse comment, we have ported TAS2505 driver.

    It seems it has no issue  for the driver as descussed in https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1401766/am625-request-tas2505trgerq1-audio-amp-sw-porting-support

     So, we concern it is about "simple-audio-card" driver or dts definiation between tas2505 and the simple-audio-card.

    May you help to check and help? Thanks.

    (Same topic also posted in here, but no reply: https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1409473/am625-how-to-enable-output-audio-sound-with-tas2505-amp).)

  • Paul,

    Can you check our DTS file and verify the entries in DTS are correct? As I mentioned earlier, in our case the codec is the master and MCASP is the slave.

    https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi?h=ti-linux-6.6.y#n137

    Make sure the configuration is correct. Also have you checked the clock, framesync using oscilloscope as mentioned by Kevin in the other thread.

    Best Regards,

    Suren

  • Hello Suren

    1) AUDIO_MSTCLK is working fine, it is 12288000

    2) May you detail how to check the framesysnc? And what is the normal waveform of it?

    3) About DTS, as in our issue description. We only rename tlv320 to tas2505, everything follows your given reference dts.

      We will remove this line and have a try; Please provide guideline how to debug this issue more. Thanks.

       // system-clock-frequency = <12000000>;

  • Hi Paul,

    Framesync would be your actual sample rate that you are trying to play with (48KHz I guess).

    Best Regards,

    Suren

  • Hello Suren

    After rechecking my dts, i could see the sound interface. 

    However we still face input audio format with aplay (checking TAS2505 driver now in another thread).

    Our arch is  SoC -> i2s->TAS2505 ->SPEAKER

    May you confirm our dts setting?

    I found there are many setting in the that it seems we don't need (we don't have MIC, earphone).

     

    tas2505_mclk: clk-0 {
    #clock-cells = <0>;
    compatible = "fixed-clock";
    clock-frequency = <12288000>;
    };

    codec_audio: sound {
    compatible = "simple-audio-card";
    simple-audio-card,name = "AM62x-SKEVM";
    simple-audio-card,widgets =
    "Headphone", "Headphone Jack",
    "Line", "Line In",
    "Microphone", "Microphone Jack";
    simple-audio-card,routing =
    "Headphone Jack", "HPLOUT",
    "Headphone Jack", "HPROUT",
    "LINE1L", "Line In",
    "LINE1R", "Line In",
    "MIC3R", "Microphone Jack",
    "Microphone Jack", "Mic Bias";
    simple-audio-card,format = "dsp_b";
    simple-audio-card,bitclock-master = <&sound_master>;
    simple-audio-card,frame-master = <&sound_master>;
    simple-audio-card,bitclock-inversion;

    simple-audio-card,cpu {
    sound-dai = <&mcasp1>;
    };

    sound_master: simple-audio-card,codec {
    sound-dai = <&tas2505>;
    clocks = <&tas2505_mclk>;
    };
    };

    &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 = <0>;
    rx-num-evt = <0>;
    };

  • Hello Suren

    Could you guide us about dts of  "simple-audio-card" that could work with tas2505 driver?

    Below is tas2505 support decussion, and  suggests:

    e2e.ti.com/.../5424943

  • Now, we face below issues.

    Please guide how to fix this issue. Thanks.

    1) Unable to play with aplay.

    root@am62xx-evm:/tmp/myusb# aplay BabyElephantWalk60_Signed16bit_44100Hz.wav
    Playing WAVE 'BabyElephantWalk60_Signed16bit_44100Hz.wav' : [10272.732223] tas2505-codec 0-0018: tas2505_hw_params: bit width = 16
    Signed 16 bit Little Endian, Rate 44100 Hz, Mono
    [10272.741928] tas2505-codec 0-0018: Sample rate (44100) and format not supported
    [10272.753353] tas2505-codec 0-0018: ASoC: error at snd_soc_dai_hw_params on tas2505-hifi: -22
    [10272.761764] davinci-mcasp.0-tas2505-hifi: ASoC: error at __soc_pcm_hw_params on davinci-mcasp.0-tas2505-hifi: -22
    aplay: set_params:1416: Unable to install hw params:
    ACCESS: RW_INTERLEAVED
    FORMAT: S16_LE
    SUBFORMAT: STD
    SAMPLE_BITS: 16
    FRAME_BITS: 16
    CHANNELS: 1
    RATE: 44100
    PERIOD_TIME: (125011 125012)
    PERIOD_SIZE: 5513
    PERIOD_BYTES: 11026
    PERIODS: 4
    BUFFER_TIME: (500045 500046)
    BUFFER_SIZE: 22052
    BUFFER_BYTES: 44104
    TICK_TIME: 0

    2) Since there is no audio input from SoC to TAS2505 (aplay failed), there is no BCLK/WCLK generated.

  • speaker-test result:

    #speaker-test -t sine -f 1000 -c 2 -l 1

     

    speaker-test 1.2.6

     

    Playback device is default

    Stream parameters are 48000Hz, S16_LE, 2 channels

    Sine wave rate is 1000.0000[ 2330.732002] tas2505-codec 1-0018: tas2505_hw_params: bit width = 16

    Hz

    Rate set to 48000Hz (requested 48000Hz)

    Buffer size range f[ 2330.739573] tas2505-codec 1-0018: Sample rate (48000) and format not supported

    rom 128 to 131072

    Period size range from 64 to 16384

    Using max[ 2330.752210] tas2505-codec 1-0018: ASoC: error at snd_soc_dai_hw_params on tas2505-hifi: -22

     buffer size 131072

    Periods = 4

    [ 2330.766102]  davinci-mcasp.0-tas2505-hifi: ASoC: error at __soc_pcm_hw_params on davinci-mcasp.0-tas2505-hifi: -22

    Unable to set hw params for playback: Invalid argument

    Setting of hwparams failed: Invalid argument

  • Hi Paul,

    Can you check the codec configurations. This looks like the codec driver is not supporting the format.

    Best Regards,

    Suren

  • Hello Suren

    Yes, the error is from codec driver; we are checking now.

    btw, may you help and guide us below?

    Our arch is  SoC -> i2s->TAS2505 ->SPEAKER

    1) What is the correct Pin muxing?

    Below we got a refefrence setting on EVK, but our customer board i2s output is to AMP (tas2505) ->  SPK

    main_mcasp1_pins_default: main-mcasp1-pins-default {
    pinctrl-single,pins = <
    AM62X_IOPAD(0x090, PIN_INPUT, 2) /* (M24) GPMC0_BE0N_CLE.MCASP1_ACLKX */
    AM62X_IOPAD(0x098, PIN_INPUT, 2) /* (U23) GPMC0_WAIT0.MCASP1_AFSX */
    AM62X_IOPAD(0x08c, PIN_OUTPUT, 2) /* (L25) GPMC0_WEN.MCASP1_AXR0 */
    AM62X_IOPAD(0x084, PIN_INPUT, 2) /* (L23) GPMC0_ADVN_ALE.MCASP1_AXR2 */
    >;
    };

    2)  "Sound routing" driver dts setting. Below is correct? if not, please kindly help to specify what we need to change. Thanks.

    tas2505_mclk: clk-0 {
    #clock-cells = <0>;
    compatible = "fixed-clock";
    clock-frequency = <12288000>;
    };

    codec_audio: sound {
    compatible = "simple-audio-card";
    simple-audio-card,name = "AM62x-SKEVM";
    simple-audio-card,widgets =
    "Headphone", "Headphone Jack",
    "Line", "Line In",
    "Microphone", "Microphone Jack";
    simple-audio-card,routing =
    "Headphone Jack", "HPLOUT",
    "Headphone Jack", "HPROUT",
    "LINE1L", "Line In",
    "LINE1R", "Line In",
    "MIC3R", "Microphone Jack",
    "Microphone Jack", "Mic Bias";
    simple-audio-card,format = "dsp_b";
    simple-audio-card,bitclock-master = <&sound_master>;
    simple-audio-card,frame-master = <&sound_master>;
    simple-audio-card,bitclock-inversion;

    simple-audio-card,cpu {
    sound-dai = <&mcasp1>;
    };

    sound_master: simple-audio-card,codec {
    sound-dai = <&tas2505>;
    clocks = <&tas2505_mclk>;
    };
    };

    &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 = <0>;
    rx-num-evt = <0>;
    };

  • Hello Suren 

    We try to send below output pin muxing (SoC-> TAS2505) but still not work.

    main_mcasp1_pins_default: main-mcasp1-pins-default {
    pinctrl-single,pins = <
    AM62X_IOPAD(0x090, PIN_OUTPUT, 2) /* (M24) GPMC0_BE0N_CLE.MCASP1_ACLKX */
    AM62X_IOPAD(0x098, PIN_OUTPUT, 2) /* (U23) GPMC0_WAIT0.MCASP1_AFSX */
    AM62X_IOPAD(0x08c, PIN_OUTPUT, 2) /* (L25) GPMC0_WEN.MCASP1_AXR0 */
    AM62X_IOPAD(0x084, PIN_INPUT, 2) /* (L23) GPMC0_ADVN_ALE.MCASP1_AXR2 */
    >;
    };

    Test result:

    root@am62xx-evm:/tmp/myusb# aplay Emerg.wav
    Playing WAVE 'Emerg.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Mono
    [ 419.680442] tas2505-codec 1-0018: tas2505_hw_params: bit width = 16
    [ 419.688134] tas2505-codec 1-0018: tas2505_hw_params: tas2505->rate = 32000 , tas2505->frame_size = 16
    [ 419.697388] tas2505-codec 1-0018: mclk_p (0) = tas2505->sysclk (0) Devide tas2505->p_div (0)
    [ 419.706070] tas2505-codec 1-0018: [0] mclksrc.rate (44100) vs rate (32000) , mclksrc.mclk_p (12288000) vs mclk_p (0)
    [ 419.716616] tas2505-codec 1-0018: [1] mclksrc.rate (48000) vs rate (32000) , mclksrc.mclk_p (12288000) vs mclk_p (0)
    [ 419.727170] tas2505-codec 1-0018: [2] mclksrc.rate (44100) vs rate (32000) , mclksrc.mclk_p (2822400) vs mclk_p (0)
    [ 419.737614] tas2505-codec 1-0018: [3] mclksrc.rate (44100) vs rate (32000) , mclksrc.mclk_p (11289600) vs mclk_p (0)
    [ 419.748163] tas2505-codec 1-0018: [4] mclksrc.rate (22050) vs rate (32000) , mclksrc.mclk_p (11289600) vs mclk_p (0)
    [ 419.758686] tas2505-codec 1-0018: [5] mclksrc.rate (44100) vs rate (32000) , mclksrc.mclk_p (2822400) vs mclk_p (0)
    [ 419.769121] tas2505-codec 1-0018: [6] mclksrc.rate (22050) vs rate (32000) , mclksrc.mclk_p (2822400) vs mclk_p (0)
    [ 419.779552] tas2505-codec 1-0018: Sample rate (32000) and format not supported
    [ 419.786782] tas2505-codec 1-0018: ASoC: error at snd_soc_dai_hw_params on tas2505-hifi: -22
    [ 419.795199] davinci-mcasp.0-tas2505-hifi: ASoC: error at __soc_pcm_hw_params on davinci-mcasp.0-tas2505-hifi: -22
    aplay: set_params:1416: Unable to install hw params:
    ACCESS: RW_INTERLEAVED
    FORMAT: S16_LE
    SUBFORMAT: STD
    SAMPLE_BITS: 16
    FRAME_BITS: 16
    CHANNELS: 1
    RATE: 44100
    PERIOD_TIME: 125000
    PERIOD_SIZE: (5512 5513)
    PERIOD_BYTES: (11024 11026)
    PERIODS: (3 5)
    BUFFER_TIME: 500000
    BUFFER_SIZE: 22050
    BUFFER_BYTES: 44100
    TICK_TIME: 0

  • Hi Paul,

    I am routing your query to our Audio team to comment on the codec driver issue.

    Feel free to ping if you haven't heard back from them in a day or two.

    Best Regards,

    Suren

  • Hi Paul,

    Can you share the output of

    cat /proc/asound/cards on your setup.

    Best Regards,

    Suren

  • Hello Suren, 

    Let allow us to clarify and update current status as below:

    1) TAS2505 Codec driver Probe, it waits to receive i2s audio signal from SoC. 

        Thread: https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1401766/am625-request-tas2505trgerq1-audio-amp-sw-porting-support/5427798#5427798

        We use "simple-audio-card" dts as recommended in the the driver read me, https://git.ti.com/cgit/lpaa-android-drivers/tas2505-linux-driver/tree/dts.readme

        ***The sound card device file is created (e.g /dev/snd/xxx) ; but aplay is failed, (after debuging the error in the TAS2505 code,

        there is no mclk value, etc. We are not sure what is the connection between the two drivers in detail).

         root@am62xx-evm:~# ls /dev/snd/
        by-path controlC0 pcmC0D0p timer
        root@am62xx-evm:~# cat /proc/asound/card
        card0/ cards

        root@am62xx-evm:~# ls /proc/asound/card0/pcm0p/
         info sub0
         root@am62xx-evm:~# ls /proc/asound/
         card0/ cards devices pcm tas2505/ timers version

        Our kernel log:

        

    ?    1.505042] mmc0: CQHCI version 5.10
    [    1.510338] omap8250 2840000.serial: Failed to create device link (0x180) with 4201000.gpio
    [    1.525805] Goodix-TS 0-0014: supply AVDD28 not found, using dummy regulator
    [    1.532996] Goodix-TS 0-0014: supply VDDIO not found, using dummy regulator
    [    1.546910] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit
    [    1.609219] mmc0: Command Queue Engine enabled
    [    1.613751] mmc0: new HS200 MMC card at address 0001
    [    1.619984] mmcblk0: mmc0:0001 0IM20E 29.6 GiB
    [    1.627907] mmcblk0boot0: mmc0:0001 0IM20E 31.5 MiB
    [    1.638990] Goodix-TS 0-0014: ID 911, version: 1060
    [    1.639523] mmcblk0boot1: mmc0:0001 0IM20E 31.5 MiB
    [    1.644088] Goodix-TS 0-0014: Direct firmware load for goodix_911_cfg.bin failed with error -2
    [    1.650121] mmcblk0rpmb: mmc0:0001 0IM20E 4.00 MiB, chardev (240:0)
    [    1.661939] Goodix-TS 0-0014: Invalid config (799, 479, 0), using defaults
    [    1.670765] pca953x 1-0022: supply vcc not found, using dummy regulator
    [    1.670829] input: Goodix Capacitive TouchScreen as /devices/platform/bus@f0000/20000000.i2c/i2c-0/0-0014/input/input0
    [    1.677565] pca953x 1-0022: using AI
    [    1.712384] pca953x 1-0022: failed writing register
    [    1.717554] pca953x: probe of 1-0022 failed with error -121
    [    1.725840] mmc1: CQHCI version 5.10
    [    1.726196] tas2505-codec 1-0018: tas2505_codec_probe: Probe finished
    [    1.740605] debugfs: Directory 'pd:182' with parent 'pm_genpd' already present!
    [    1.762783] ALSA device list:
    [    1.765837]   #0: tas2505
    [    1.771073] mmc1: SDHCI controller on fa00000.mmc [fa00000.mmc] using ADMA 64-bit
    [    1.778942] Waiting for root device PARTUUID=12bcb223-02...
    [    1.814536] mmc1: new high speed SDXC card at address aaaa
    [    1.821119] mmcblk1: mmc1:aaaa SH64G 59.5 GiB
    [    1.838926]  mmcblk1: p1 p2
    [    1.891230] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Quota mode: none.
    [    1.900041] VFS: Mounted root (ext4 filesystem) on device 179:98.
    [    1.908049] devtmpfs: mounted
    [    1.912849] Freeing unused kernel memory: 2176K
    [    1.917515] Run /sbin/init as init process
    [    3.352035] systemd[1]: System time before build time, advancing clock.
    [    3.631490] NET: Registered PF_INET6 protocol family
    [    3.639438] Segment Routing with IPv6
    [    3.643210] In-situ OAM (IOAM) with IPv6
    [    3.798589] systemd[1]: systemd 250.5+ running in system mode (+PAM -AUDIT -SELINUX -APPARMOR +IMA -SMACK +SECCOMP -GCRYPT -GNUTLS -OPENSSL +ACL +BLKID -CURL -ELFUTILS -FIDO2 -IDN2 -IDN -IPTC +KMOD -LIBCRYPTSETUP +LIBFDISK -PCRE2 -PWQUALITY -P11KIT -QRENCODE -BZIP2 -LZ4 -XZ -ZLIB +ZSTD -BPF_FRAMEWORK +XKBCOMMON +UTMP +SYSVINIT default-hierarchy=hybrid)
    [    3.831775] systemd[1]: Detected architecture arm64.
    
    Welcome to Arago 2023.04!
    
    [    3.943787] systemd[1]: Hostname set to <am62xx-evm>.
    [    3.991115] systemd[1]: Initializing machine ID from random generator.
    [    4.322021] systemd-sysv-generator[157]: SysV service '/etc/init.d/reboot' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.349957] systemd-sysv-generator[157]: SysV service '/etc/init.d/dropbear' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.382980] systemd-sysv-generator[157]: SysV service '/etc/init.d/umountfs' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.414380] systemd-sysv-generator[157]: SysV service '/etc/init.d/halt' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.438497] systemd-sysv-generator[157]: SysV service '/etc/init.d/sysrepo' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.462635] systemd-sysv-generator[157]: SysV service '/etc/init.d/sendsigs' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.486879] systemd-sysv-generator[157]: SysV service '/etc/init.d/umountnfs.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.511585] systemd-sysv-generator[157]: SysV service '/etc/init.d/docker.init' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.537017] systemd-sysv-generator[157]: SysV service '/etc/init.d/resize_rootfs.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.564767] systemd-sysv-generator[157]: SysV service '/etc/init.d/netperf' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.589380] systemd-sysv-generator[157]: SysV service '/etc/init.d/netopeer2-server' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.614911] systemd-sysv-generator[157]: SysV service '/etc/init.d/save-rtc.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.639105] systemd-sysv-generator[157]: SysV service '/etc/init.d/psplash.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.663662] systemd-sysv-generator[157]: SysV service '/etc/init.d/inetd.busybox' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.690794] systemd-sysv-generator[157]: SysV service '/etc/init.d/thermal-zone-init' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.716069] systemd-sysv-generator[157]: SysV service '/etc/init.d/single' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.742119] systemd-sysv-generator[157]: SysV service '/etc/init.d/telnetd' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    5.271698] systemd[1]: Configuration file /etc/systemd/system/ti-apps-launcher.service is marked executable. Please remove executable permission bits. Proceeding anyway.
    [    5.387571] systemd[1]: /lib/systemd/system/startwlansta.service:7: Unknown key name 'After' in section 'Service', ignoring.
    [    5.401366] systemd[1]: /lib/systemd/system/startwlanap.service:7: Unknown key name 'After' in section 'Service', ignoring.
    [    5.469330] systemd[1]: /lib/systemd/system/bt-enable.service:9: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
    [    5.564834] systemd[1]: /etc/systemd/system/sync-clocks.service:11: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
    [    5.685235] systemd[1]: Queued start job for default target Graphical Interface.
    [    5.781189] systemd[1]: Created slice Slice /system/getty.
    [  OK  ] Created slice Slice /system/getty.
    [    5.808749] systemd[1]: Created slice Slice /system/modprobe.
    [  OK  ] Created slice Slice /system/modprobe.
    [    5.836814] systemd[1]: Created slice Slice /system/serial-getty.
    [  OK  ] Created slice Slice /system/serial-getty.
    [    5.863558] systemd[1]: Created slice User and Session Slice.
    [  OK  ] Created slice User and Session Slice.
    [    5.885029] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
    [  OK  ] Started Dispatch Password …ts to Console Directory Watch.
    [    5.908900] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    [  OK  ] Started Forward Password R…uests to Wall Directory Watch.
    [    5.933224] systemd[1]: Reached target Path Units.
    [  OK  ] Reached target Path Units.
    [    5.948720] systemd[1]: Reached target Remote File Systems.
    [  OK  ] Reached target Remote File Systems.
    [    5.968520] systemd[1]: Reached target Slice Units.
    [  OK  ] Reached target Slice Units.
    [    5.984714] systemd[1]: Reached target Swaps.
    [  OK  ] Reached target Swaps.
    [    6.090417] systemd[1]: Listening on RPCbind Server Activation Socket.
    [  OK  ] Listening on RPCbind Server Activation Socket.
    [    6.113006] systemd[1]: Reached target RPC Port Mapper.
    [  OK  ] Reached target RPC Port Mapper.
    [    6.156768] systemd[1]: Listening on Process Core Dump Socket.
    [  OK  ] Listening on Process Core Dump Socket.
    [    6.181518] systemd[1]: Listening on initctl Compatibility Named Pipe.
    [  OK  ] Listening on initctl Compatibility Named Pipe.
    [    6.208597] systemd[1]: Listening on Journal Audit Socket.
    [  OK  ] Listening on Journal Audit Socket.
    [    6.234045] systemd[1]: Listening on Journal Socket (/dev/log).
    [  OK  ] Listening on Journal Socket (/dev/log).
    [    6.258312] systemd[1]: Listening on Journal Socket.
    [  OK  ] Listening on Journal Socket.
    [    6.276607] systemd[1]: Listening on Network Service Netlink Socket.
    [  OK  ] Listening on Network Service Netlink Socket.
    [    6.303673] systemd[1]: Listening on udev Control Socket.
    [  OK  ] Listening on udev Control Socket.
    [    6.326741] systemd[1]: Listening on udev Kernel Socket.
    [  OK  ] Listening on udev Kernel Socket.
    [    6.351023] systemd[1]: Listening on User Database Manager Socket.
    [  OK  ] Listening on User Database Manager Socket.
    [    6.413095] systemd[1]: Mounting Huge Pages File System...
             Mounting Huge Pages File System...
    [    6.437836] systemd[1]: Mounting POSIX Message Queue File System...
             Mounting POSIX Message Queue File System...
    [    6.470651] systemd[1]: Mounting Kernel Debug File System...
             Mounting Kernel Debug File System...
    [    6.489179] systemd[1]: Kernel Trace File System was skipped because of a failed condition check (ConditionPathExists=/sys/kernel/tracing).
    [    6.514355] systemd[1]: Mounting Temporary Directory /tmp...
             Mounting Temporary Directory /tmp...
    [    6.561854] systemd[1]: Starting Create List of Static Device Nodes...
             Starting Create List of Static Device Nodes...
    [    6.596627] systemd[1]: Starting Load Kernel Module configfs...
             Starting Load Kernel Module configfs...
    [    6.620857] systemd[1]: Starting Load Kernel Module drm...
             Starting Load Kernel Module drm...
    [    6.644840] systemd[1]: Starting Load Kernel Module fuse...
             Starting Load Kernel Module fuse...
    [    6.834140] systemd[1]: Starting Start psplash boot splash screen...
    [    6.834386] fuse: init (API version 7.37)
             Starting Start psplash boot splash screen...
    [    6.917907] systemd[1]: Starting RPC Bind...
             Starting RPC Bind...
    [    6.933375] systemd[1]: File System Check on Root Device was skipped because of a failed condition check (ConditionPathIsReadWrite=!/).
    [    6.961752] systemd[1]: Starting Journal Service...
             Starting Journal Service...
    [    7.081687] systemd[1]: Starting Load Kernel Modules...
             Starting Load Kernel Modules...
    [    7.111372] systemd[1]: Starting Generate network units from Kernel command line...
             Starting Generate network …ts from Kernel command line...
    [    7.165813] systemd[1]: Starting Remount Root and Kernel File Systems...
    [    7.170984] cryptodev: loading out-of-tree module taints kernel.
             Starting Remount Root and Kernel File Systems cryptodev: driver 1.12 loaded.
    [0m...
    [    7.204914] EXT4-fs (mmcblk1p2): re-mounted. Quota mode: none.
    [    7.209976] systemd[1]: Starting Coldplug All udev Devices...
             Starting Coldplug All udev Devices...
    [    7.241240] systemd[1]: Started RPC Bind.
    [  OK  ] Started RPC Bind.
    [    7.261513] systemd[1]: Mounted Huge Pages File System.
    [  OK  ] Mounted Huge Pages File System.
    [    7.285418] systemd[1]: Mounted POSIX Message Queue File System.
    [  OK  ] Mounted POSIX Message Queue File System.
    [    7.313403] systemd[1]: Mounted Kernel Debug File System.
    [  OK  ] Mounted Kernel Debug File System.
    [    7.337416] systemd[1]: Mounted Temporary Directory /tmp.
    [  OK  ] Mounted Temporary Directory /tmp.
    [    7.361386] systemd[1]: Started Journal Service.
    [  OK  ] Started Journal Service.
    [  OK  ] Finished Create List of Static Device Nodes.
    [  OK  ] Finished Load Kernel Module configfs.
    [  OK  ] Finished Load Kernel Module drm.
    [  OK  ] Finished Load Kernel Module fuse.
    [FAILED] Failed to start Start psplash boot splash screen.
    See 'systemctl status psplash-start.service' for details.
    [DEPEND] Dependency failed for Star…progress communication helper.
    [  OK  ] Finished Load Kernel Modules.
    [  OK  ] Finished Generate network units from Kernel command line.
    [  OK  ] Finished Remount Root and Kernel File Systems.
             Mounting FUSE Control File System...
             Mounting Kernel Configuration File System...
             Starting Flush Journal to Persistent Storage...
             Starting Apply Kernel Variables...
    [    7.745168] systemd-journald[173]: Received client request to flush runtime journal.
             Starting Create System Users...
    [  OK  ] Mounted FUSE Control File System.
    [  OK  ] Mounted Kernel Configuration File System.
    [  OK  ] Finished Flush Journal to Persistent Storage.
    [  OK  ] Finished Apply Kernel Variables.
    [  OK  ] Finished Create System Users.
             Starting Create Static Device Nodes in /dev...
    [  OK  ] Finished Coldplug All udev Devices.
    [  OK  ] Finished Create Static Device Nodes in /dev.
    [  OK  ] Reached target Preparation for Local File Systems.
             Mounting /media/ram...
             Mounting /var/volatile...
    [    8.119419] audit: type=1334 audit(1651167749.780:2): prog-id=5 op=LOAD
    [    8.126155] audit: type=1334 audit(1651167749.788:3): prog-id=6 op=LOAD
             Starting Rule-based Manage…for Device Events and Files...
    [  OK  ] Mounted /media/ram.
    [  OK  ] Mounted /var/volatile.
             Starting Load/Save Random Seed...
    [  OK  ] Reached target Local File Systems.
             Starting Rebuild Dynamic Linker Cache...
             Starting Create Volatile Files and Directories...
    [  OK  ] Finished Create Volatile Files and Directories.
             Starting Rebuild Journal Catalog...
             Starting Network Time Synchronization...
             Starting Record System Boot/Shutdown in UTMP...
    [  OK  ] Finished Record System Boot/Shutdown in UTMP.
    [  OK  ] Finished Rebuild Journal Catalog.
    [  OK  ] Started Network Time Synchronization.
    [  OK  ] Reached target System Time Set.
    [  OK  ] Started Rule-based Manager for Device Events and Files.
    [    9.096323] random: crng init done
    [  OK  ] Finished Load/Save Random Seed.
    [  OK  ] Found device /dev/ttyS2.
    [    9.433779] rtc rtc0: Unknown quartz-load-femtofarads value: 1250. Assuming 12500
    [    9.441895] rtc-pcf8523 1-0068: failed to set xtal load capacitance: -121
    [    9.448907] pwm-backlight backlight: supply power not found, using dummy regulator
    [    9.455710] rtc-pcf8523: probe of 1-0068 failed with error -121
    [    9.506552] panel-simple display: supply power not found, using dummy regulator
    [    9.515658] panel-simple display: Specify missing bus_flags
    [    9.709894] rtc-ti-k3 2b1f0000.rtc: registered as rtc0
    [    9.715448] rtc-ti-k3 2b1f0000.rtc: setting system clock to 1970-01-01T00:00:15 UTC (15)
    [    9.725068] systemd-journald[173]: Time jumped backwards, rotating.
    [    9.744067] mc: Linux media interface: v0.10
    [    9.762980] k3-m4-rproc 5000000.m4fss: assigned reserved memory node m4f-dma-memory@9cb00000
    [    9.771962] k3-m4-rproc 5000000.m4fss: configured M4 for remoteproc mode
    [    9.779020] k3-m4-rproc 5000000.m4fss: local reset is deasserted for device
    [    9.788398] remoteproc remoteproc0: 5000000.m4fss is available
    [    9.833149] CAN device driver interface
    [    9.900006] platform 78000000.r5f: R5F core may have been powered on by a different host, programmed state (0) != actual state (1)
    [    9.900444] videodev: Linux video capture interface: v2.00
    [    9.912335] platform 78000000.r5f: configured R5F for IPC-only mode
    [    9.923900] platform 78000000.r5f: assigned reserved memory node r5f-dma-memory@9da00000
    [    9.932629] remoteproc remoteproc1: 78000000.r5f is available
    [    9.938558] remoteproc remoteproc1: attaching to 78000000.r5f
    [    9.945658] platform 78000000.r5f: R5F core initialized in IPC-only mode
    [    9.952520] rproc-virtio rproc-virtio.1.auto: assigned reserved memory node r5f-dma-memory@9da00000
    [    9.963281] virtio_rpmsg_bus virtio0: rpmsg host is online
    [    9.964964] virtio_rpmsg_bus virtio0: creating channel ti.ipc4.ping-pong addr 0xd
    [    9.968959] rproc-virtio rproc-virtio.1.auto: registered virtio0 (type 7)
    [    9.976614] virtio_rpmsg_bus virtio0: creating channel rpmsg_chrdev addr 0xe
    [    9.983290] remoteproc remoteproc1: remote processor 78000000.r5f is now attached
    [   10.076811] m_can_platform 4e00000.can: m_can device registered (irq=0, version=32)
    [   10.087030] m_can_platform 4e10000.can: m_can device registered (irq=0, version=32)
    [   10.147931] remoteproc remoteproc0: powering up 5000000.m4fss
    [   10.153763] remoteproc remoteproc0: Booting fw image am62-mcu-m4f0_0-fw, size 54860
    [   10.166015] rproc-virtio rproc-virtio.2.auto: assigned reserved memory node m4f-dma-memory@9cb00000
    [   10.180390] virtio_rpmsg_bus virtio1: rpmsg host is online
    [   10.187914] rproc-virtio rproc-virtio.2.auto: registered virtio1 (type 7)
    [   10.194823] remoteproc remoteproc0: remote processor 5000000.m4fss is now up
    [   10.202028] virtio_rpmsg_bus virtio1: creating channel ti.ipc4.ping-pong addr 0xd
    [   10.210021] virtio_rpmsg_bus virtio1: creating channel rpmsg_chrdev addr 0xe
    [   10.690607] [drm] Initialized tidss 1.0.0 20180215 for 30200000.dss on minor 0
    [   10.701104] tidss 30200000.dss: [drm] fb0: tidssdrmfb frame buffer device
    [   10.737600] PVR_K:  228: Device: fd00000.gpu
    [   10.745321] PVR_K:  228: Read BVNC 33.15.11.3 from HW device registers
    [   10.752837] PVR_K:  228: RGX Device registered with BVNC 33.15.11.3
    [   10.763983] [drm] Initialized pvr 23.1.6404501 20170530 for fd00000.gpu on minor 1
    [  OK  ] Created slice Slice /system/systemd-backlight.
    [   11.835221] remoteproc remoteproc2: 30074000.pru is available
    [   11.842639] remoteproc remoteproc3: 30078000.pru is available
    [   11.844899] dwc3 31000000.usb: Configuration mismatch. dr_mode forced to gadget
             Starting Start psplash boot splash screen...
             Starting Load/Save Screen …ness of backlight:backlight...
    [  OK  ] Started Start psplash boot splash screen.
    [  OK  ] Started Start psplash-syst…progress communication helper.
    [   11.976622] cdns-csi2rx: probe of 30101000.csi-bridge failed with error -22
    [  OK  ] Finished Load/Save Screen …htness of backlight:backlight.
    [  OK  ] Reached target Hardware activated USB gadget.
    [   12.184758] xhci-hcd xhci-hcd.3.auto: xHCI Host Controller
    [   12.190577] xhci-hcd xhci-hcd.3.auto: new USB bus registered, assigned bus number 1
    [   12.198780] xhci-hcd xhci-hcd.3.auto: USB3 root hub has no ports
    [   12.204905] xhci-hcd xhci-hcd.3.auto: hcc params 0x0258fe6d hci version 0x110 quirks 0x0000000000010010
    [   12.214488] xhci-hcd xhci-hcd.3.auto: irq 458, io mem 0x31100000
    [   12.222649] hub 1-0:1.0: USB hub found
    [   12.226658] hub 1-0:1.0: 1 port detected
    [   12.484321] usb 1-1: new high-speed USB device number 2 using xhci-hcd
    [   12.638125] usb-storage 1-1:1.0: USB Mass Storage device detected
    [   12.645201] scsi host0: usb-storage 1-1:1.0
    [   13.658721] scsi 0:0:0:0: Direct-Access     SanDisk  Cruzer Blade     1.00 PQ: 0 ANSI: 6
    [   13.673335] sd 0:0:0:0: [sda] 30031872 512-byte logical blocks: (15.4 GB/14.3 GiB)
    [   13.682325] sd 0:0:0:0: [sda] Write Protect is off
    [   13.690472] sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
    [   13.714731]  sda: sda1
    [   13.718120] sd 0:0:0:0: [sda] Attached SCSI removable disk
    [  OK  ] Created slice Slice /system/systemd-fsck.
    [  OK  ] Found device Cruzer_Blade MYUSB.
             Starting File System Check on /dev/sda1...
    [  OK  ] Found device /dev/mmcblk1p1.
             Starting File System Check on /dev/mmcblk1p1...
    [  OK  ] Finished File System Check on /dev/sda1.
             Mounting /run/media/MYUSB-sda1...
    [  OK  ] Mounted /run/media/MYUSB-sda1.
    [  OK  ] Finished File System Check on /dev/mmcblk1p1.
             Mounting /run/media/boot-mmcblk1p1...
    [  OK  ] Mounted /run/media/boot-mmcblk1p1.
    [  *** ] A start job is running for Rebuild …amic Linker Cache (10s / no limit)
    [   22.428024] platform regulator-6: deferred probe pending
    [   22.433856] platform regulator-7: deferred probe pending
    [   22.439323] platform regulator-8: deferred probe pending
    [  OK  ] Finished Rebuild Dynamic Linker Cache.
             Starting Run pending postinsts...
             Starting Update is Completed...
    [  OK  ] Finished Update is Completed.
    [  OK  ] Finished Run pending postinsts.
    [  OK  ] Reached target System Initialization.
    [  OK  ] Started Daily rotation of log files.
    [  OK  ] Started Daily Cleanup of Temporary Directories.
    [  OK  ] Reached target Timer Units.
    [  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
    [  OK  ] Listening on D-Bus System Message Bus Socket.
             Starting Docker Socket for the API...
    [  OK  ] Listening on dropbear.socket.
             Starting Weston socket...
             Starting D-Bus System Message Bus...
             Starting Reboot and dump vmcore via kexec...
    [  OK  ] Listening on Docker Socket for the API.
    [  OK  ] Listening on Weston socket.
    [  OK  ] Finished Reboot and dump vmcore via kexec.
    [  OK  ] Reached target Socket Units.
    [  OK  ] Started D-Bus System Message Bus.
    [  OK  ] Reached target Basic System.
             Starting Save/Restore Sound Card State...
    [  OK  ] Started Job spooling tools.
    [  OK  ] Started Periodic Command Scheduler.
             Starting Print notice about GPLv3 packages...
             Starting IPv6 Packet Filtering Framework...
             Starting IPv4 Packet Filtering Framework...
    [  OK  ] Started irqbalance daemon.
             Starting startwlanap...
             Starting startwlansta...
    [   29.071296] audit: type=1334 audit(34.852:4): prog-id=7 op=LOAD
    [   29.077382] audit: type=1334 audit(34.860:5): prog-id=8 op=LOAD
             Starting User Login Management...
    [  OK  ] Started TEE Supplicant.
             Starting telnetd.service...
    [  OK  ] Started ti-apps-launcher service.
    [  OK  ] Finished Save/Restore Sound Card State.
    [  OK  ] Finished IPv6 Packet Filtering Framework.
    [  OK  ] Finished IPv4 Packet Filtering Framework.
    [  OK  ] Started startwlanap.
    [  OK  ] Started startwlansta.
    [  OK  ] Reached target Preparation for Network.
    [  OK  ] Reached target Sound Card.
             Starting Network Configuration...
    [  OK  ] Started telnetd.service.
             Starting LSB: Expand Rootfs of boot device...
    [  OK  ] Started User Login Management.
    [  OK  ] Listening on Load/Save RF …itch Status /dev/rfkill Watch.
    [   30.080463] cfg80211: Loading compiled-in X.509 certificates for regulatory database
    [   30.120062] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
    [  OK  ] Started Network Configuration.
             Starting Wait for Network to be Configured...
             Starting Network Name Resolution...
    [   31.060874] am65-cpsw-nuss 8000000.ethernet eth0: PHY [8000f00.mdio:00] driver [TI DP83867] (irq=POLL)
    [   31.070272] am65-cpsw-nuss 8000000.ethernet eth0: configuring for phy/rgmii-rxid link mode
    [  OK  ] Started Network Name Resolution.
    [  OK  ] Reached target Network.
    [  OK  ] Reached target Host and Network Name Lookups.
             Starting Avahi mDNS/DNS-SD Stack...
             Starting Enable and configure wl18xx bluetooth stack...
             Starting containerd container runtime...
    [  OK  ] Started Netperf Benchmark Server.
    [  OK  ] Started NFS status monitor for NFSv2/3 locking..
             Starting Simple Network Ma…ent Protocol (SNMP) Daemon....
             Starting Permit User Sessions...
    [  OK  ] Finished Enable and configure wl18xx bluetooth stack.
    [  OK  ] Finished Permit User Sessions.
    [  OK  ] Started Serial Getty on ttyS2.
    [  OK  ] Reached target Login Prompts.
             Starting Synchronize System and HW clocks...
    [  OK  ] Started Avahi mDNS/DNS-SD Stack.
    [  OK  ] Finished Synchronize System and HW clocks.
    [   35.197606] EXT4-fs (mmcblk1p2): resizing filesystem from 2358290 to 15558912 blocks
    
     _____                    _____           _         _
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|
                  |___|                    |___|
    
    Arago Project am62xx-evm -
    
    Arago 2023.04 am62xx-evm -
    
    am62xx-evm login: root
    [   46.559423] audit: type=1334 audit(52.340:6): prog-id=9 op=LOAD
    [   46.565753] audit: type=1334 audit(52.348:7): prog-id=10 op=LOAD
    [   46.826643] EXT4-fs (mmcblk1p2): resized to 4194304 blocks
    [   48.423232] audit: type=1006 audit(54.204:8): pid=769 uid=0 old-auid=4294967295 auid=0 tty=(none) old-ses=4294967295 ses=1 res=1
    [   48.435022] audit: type=1300 audit(54.204:8): arch=c00000b7 syscall=64 success=yes exit=1 a0=8 a1=fffff8f4b538 a2=1 a3=ffff9d64b020 items=0 ppid=1 pid=769 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=1 comm="(systemd)" exe="/lib/systemd/systemd" key=(null)
    [   48.460849] audit: type=1327 audit(54.204:8): proctitle="(systemd)"
    [   48.759364] audit: type=1334 audit(54.540:9): prog-id=11 op=LOAD
    [   48.765552] audit: type=1300 audit(54.540:9): arch=c00000b7 syscall=280 success=yes exit=8 a0=5 a1=ffffca601af0 a2=78 a3=0 items=0 ppid=1 pid=769 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=1 comm="systemd" exe="/lib/systemd/systemd" key=(null)
    [   48.790256] audit: type=1327 audit(54.540:9): proctitle="(systemd)"
    [   48.796634] audit: type=1334 audit(54.540:10): prog-id=11 op=UNLOAD
    [   48.803128] audit: type=1334 audit(54.540:11): prog-id=12 op=LOAD
    root@am62xx-evm:~# [   55.437049] EXT4-fs (mmcblk1p2): resized filesystem to 15558912
    
    root@am62xx-evm:~# cat /proc/asound/cards
     0 [tas2505        ]: simple-card - tas2505
                          tas2505
    root@am62xx-evm:~# cat /proc/asound/pcm
    00-00: davinci-mcasp.0-tas2505-hifi tas2505-hifi-0 : davinci-mcasp.0-tas2505-hifi tas2505-hifi-0 : playback 1
    root@am62xx-evm:~# dmesg | grep audio
    [    1.725154] asoc-simple-card sound: GPIO lookup for consumer simple-audio-card,hp-det
    [    1.725187] of_get_named_gpiod_flags: can't parse 'simple-audio-card,hp-det-gpios' property of node '/sound[0]'
    [    1.725212] of_get_named_gpiod_flags: can't parse 'simple-audio-card,hp-det-gpio' property of node '/sound[0]'
    [    1.725237] asoc-simple-card sound: No GPIO consumer simple-audio-card,hp-det found
    [    1.725244] asoc-simple-card sound: GPIO lookup for consumer simple-audio-card,mic-det
    [    1.725261] of_get_named_gpiod_flags: can't parse 'simple-audio-card,mic-det-gpios' property of node '/sound[0]'
    [    1.725274] of_get_named_gpiod_flags: can't parse 'simple-audio-card,mic-det-gpio' property of node '/sound[0]'
    [    1.725290] asoc-simple-card sound: No GPIO consumer simple-audio-card,mic-det found
    root@am62xx-evm:~#
    root@am62xx-evm:~# speaker-test -t sine -f 1000 -c 2 -l 1
    
    speaker-test 1.2.6
    
    Playback device is default
    Stream parameters are 48000Hz, S16_LE, 2 channels
    Sine wave rate is 1000.0000Hz
    Rate set to 48000Hz (requested 48000Hz)
    [  402.588785] tas2505-codec 1-0018: tas2505_hw_params: bit width = 16
    Buffer size range from 128 to 131072
    Period size range from 64 [  402.597420] tas2505-codec 1-0018: Sample rate (48000) and format not supported
    to 16384
    Using max buffer size 131072
    Periods = 4
    [  402.610175] tas2505-codec 1-0018: ASoC: error at snd_soc_dai_hw_params on tas2505-hifi: -22
    [  402.623147]  davinci-mcasp.0-tas2505-hifi: ASoC: error at __soc_pcm_hw_params on davinci-mcasp.0-tas2505-hifi: -22
    Unable to set hw params for playback: Invalid argument
    Setting of hwparams failed: Invalid argument
    root@am62xx-evm:~#
    

       Our patch (all, but please check dts of sound part)

        

    diff --git a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
    index 74e34b84419a..048d96cfd1a2 100644
    --- a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
    +++ b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
    @@ -581,7 +581,7 @@
     		ti,itap-del-sel-sdr12 = <0xa>;
     		ti,itap-del-sel-sdr25 = <0x1>;
     		ti,clkbuf-sel = <0x7>;
    -		bus-width = <4>;
    +		bus-width = <1>;
     		status = "disabled";
     	};
     
    diff --git a/arch/arm64/boot/dts/ti/k3-am625-sk.dts b/arch/arm64/boot/dts/ti/k3-am625-sk.dts
    index b1737978103b..51ea68cd53e6 100644
    --- a/arch/arm64/boot/dts/ti/k3-am625-sk.dts
    +++ b/arch/arm64/boot/dts/ti/k3-am625-sk.dts
    @@ -13,15 +13,25 @@
     	compatible = "ti,am625-sk", "ti,am625";
     	model = "Texas Instruments AM625 SK";
     
    -	opp-table {
    -		/* Add 1.4GHz OPP for am625-sk board. Requires VDD_CORE to be at 0.85V */
    -		opp-1400000000 {
    -			opp-hz = /bits/ 64 <1400000000>;
    -			opp-supported-hw = <0x01 0x0004>;
    -			clock-latency-ns = <6000000>;
    -		};
    +	aliases {
    +		serial4 = &main_uart4;
    +		serial6 = &main_uart6;
    +		gpio2 = &mcu_gpio0;
     	};
     
    +        transceiver2: can-phy1 {
    +                compatible = "ti,tcan1042";
    +                #phy-cells = <0>;
    +                max-bitrate = <5000000>;
    +        };
    +
    +        transceiver3: can-phy2 {
    +                compatible = "ti,tcan1042";
    +                #phy-cells = <0>;
    +                max-bitrate = <5000000>;
    +        };
    +
    +
     	memory@80000000 {
     		device_type = "memory";
     		/* 2G RAM */
    @@ -68,9 +78,10 @@
     		regulator-min-microvolt = <3300000>;
     		regulator-max-microvolt = <3300000>;
     		regulator-boot-on;
    -		enable-active-high;
    +		/* enable-active-high; */
     		vin-supply = <&vcc_3v3_sys>;
    -		gpio = <&exp1 3 GPIO_ACTIVE_HIGH>;
    +		regulator-always-on; 
    +		/* gpio = <&exp1 3 GPIO_ACTIVE_HIGH>; */
     	};
     
     	vdd_sd_dv: regulator-4 {
    @@ -82,7 +93,8 @@
     		regulator-min-microvolt = <1800000>;
     		regulator-max-microvolt = <3300000>;
     		regulator-boot-on;
    -		vin-supply = <&vcc_5v0>;
    +		regulator-always-on;
    +		vin-supply = <&vcc_3v3_sys>;
     		gpios = <&main_gpio0 31 GPIO_ACTIVE_HIGH>;
     		states = <1800000 0x0>,
     			 <3300000 0x1>;
    @@ -105,7 +117,7 @@
     		regulator-min-microvolt = <3300000>;
     		regulator-max-microvolt = <3300000>;
     		vin-supply = <&vcc_3v3_sys>;
    -		regulator-always-on;
    +		/* regulator-always-on; */
     		gpios = <&exp1 11 GPIO_ACTIVE_LOW>;
     	};
     
    @@ -120,6 +132,19 @@
     		pinctrl-names = "default";
     		pinctrl-0 = <&wlan_en_pins_default>;
     	};
    +
    +       btwlan_en: regulator-8 {
    +               compatible = "regulator-fixed";
    +               regulator-name = "btwlan_en";
    +               regulator-min-microvolt = <3300000>;
    +               regulator-max-microvolt = <3300000>;
    +               vin-supply = <&wlan_lten>;
    +               enable-active-high;
    +               gpios = <&mcu_gpio0 1 GPIO_ACTIVE_HIGH>;
    +               pinctrl-names = "default";
    +               pinctrl-0 = <&mcu_btwlan_en_pins_default>;
    +       };
    +
     };
     
     &main_pmx0 {
    @@ -191,6 +216,95 @@
     			AM62X_IOPAD(0x128, PIN_INPUT, 7) /* (B23) MMC2_SDWP.GPIO0_72 */
     		>;
     	};
    +
    +	/* For BT/WLAN connection interface  */
    +        main_uart4_pins_default: main-uart4-default-pins {
    +                pinctrl-single,pins = <
    +                        AM62X_IOPAD(0x00b0, PIN_INPUT, 3) /* (K22) GPMC0_CSn2.UART4_RXD */
    +                        AM62X_IOPAD(0x00b4, PIN_OUTPUT, 3) /* (K24) GPMC0_CSn3.UART4_TXD */
    +                >;
    +        };
    +
    +	/* For UART6 RS232 */
    +	main_uart6_pins_default: main-uart6-default-pins {
    +		pinctrl-single,pins = <
    +			AM62X_IOPAD(0x009c, PIN_INPUT, 3) /* (V25) GPMC0_WAIT1.UART6_RXD */
    +			AM62X_IOPAD(0x00a0, PIN_OUTPUT, 3) /* (K25) GPMC0_WPn.UART6_TXD */
    +		>;
    +	};
    +
    +	/* For CAN0 , CAN2 */
    +	main_mcan0_pins_default: main-mcan0-pins-default {
    +                pinctrl-single,pins = <
    +                        AM62X_IOPAD(0x1dc, PIN_INPUT, 0) /* (E15) MCAN0_RX */
    +                        AM62X_IOPAD(0x1d8, PIN_OUTPUT, 0) /* (C15) MCAN0_TX */
    +                >;
    +        };
    +
    +
    +};
    +
    +&mcu_gpio0 {
    +        status = "okay";
    +};
    +
    +&mcu_gpio_intr {
    +	status = "okay";
    +};
    +
    +&main_uart4 {
    +       status = "okay";
    +       pinctrl-names = "default";
    +       pinctrl-0 = <&main_uart4_pins_default &mcu_btwlan_en_pins_default>;
    +
    +	bluetooth {
    +               enable-gpios = <&mcu_gpio0 1 GPIO_ACTIVE_HIGH>;
    +       };
    +
    +};
    +
    +&main_uart6 {
    +       status = "okay";
    +       pinctrl-names = "default";
    +       pinctrl-0 = <&main_uart6_pins_default>;
    +};
    +
    +&mcu_pmx0 {
    +	/* Enable BT/WLAN Pin */
    +	mcu_btwlan_en_pins_default: mcu-btwlan-en-pins-default {
    +		pinctrl-single,pins = <
    +                       AM62X_MCU_IOPAD(0x0004, PIN_OUTPUT_PULLUP, 7) /* (B8) MCU_SPI0_CS1.MCU_GPIO0_1 */
    +               >;
    +	};
    +
    +	mcu_mcan1_pins_default: mcu-mcan1-pins-default {
    +                pinctrl-single,pins = <
    +                        AM62X_IOPAD(0x038, PIN_INPUT, 0) /* (B3) MCU_MCAN0_RX */
    +                        AM62X_IOPAD(0x034, PIN_OUTPUT, 0) /* (D6) MCU_MCAN0_TX */
    +                >;
    +        };
    +
    +        mcu_mcan2_pins_default: mcu-mcan2-pins-default {
    +                pinctrl-single,pins = <
    +                        AM62X_IOPAD(0x040, PIN_INPUT, 0) /* (D4) MCU_MCAN1_RX */
    +                        AM62X_IOPAD(0x03C, PIN_OUTPUT, 0) /* (E5) MCU_MCAN1_TX */
    +                >;
    +        };
    +
    +};
    +
    +&mcu_mcan1 {
    +        pinctrl-names = "default";
    +        pinctrl-0 = <&mcu_mcan1_pins_default>;
    +        phys = <&transceiver2>;
    +        status = "okay";
    +};
    +
    +&mcu_mcan2 {
    +        pinctrl-names = "default";
    +        pinctrl-0 = <&mcu_mcan2_pins_default>;
    +        phys = <&transceiver3>;
    +        status = "okay";
     };
     
     &main_i2c1 {
    @@ -223,6 +337,7 @@
     };
     
     &sdhci1 {
    +	status = "okay";
     	vmmc-supply = <&vdd_mmc1>;
     	vqmmc-supply = <&vdd_sd_dv>;
     };
    @@ -345,10 +460,6 @@
     	};
     };
     
    -&tlv320aic3106 {
    -	DVDD-supply = <&vcc_1v8>;
    -};
    -
     #define K3_TS_OFFSET(pa, val)	(0x4+(pa)*4) (0x10000 | val)
     
     &timesync_router {
    diff --git a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
    index 07763091ab59..59ddbd2c3d1b 100644
    --- a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
    +++ b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
    @@ -19,8 +19,8 @@
     		spi0 = &ospi0;
     		ethernet0 = &cpsw_port1;
     		ethernet1 = &cpsw_port2;
    -		usb0 = &usb0;
     		usb1 = &usb1;
    +		gpio0 = &main_gpio0;
     	};
     
     	chosen {
    @@ -105,21 +105,60 @@
     		};
     	};
     
    -	leds {
    -		compatible = "gpio-leds";
    -		pinctrl-names = "default";
    -		pinctrl-0 = <&usr_led_pins_default>;
    -
    -		led-0 {
    -			label = "am62-sk:green:heartbeat";
    -			gpios = <&main_gpio1 49 GPIO_ACTIVE_HIGH>;
    -			linux,default-trigger = "heartbeat";
    -			function = LED_FUNCTION_HEARTBEAT;
    -			default-state = "off";
    +	lcd_bl: backlight {
    +                compatible = "pwm-backlight";
    +                pwms = <&epwm0 0 50000 0>;
    +                brightness-levels =
    +                        <0 32 64 96 128 160 192 224 255>;
    +                default-brightness-level = <8>;
    +        };
    +
    +	display {
    +		compatible = "edt,et070080dh6";
    +		backlight = <&lcd_bl>;
    +		port {
    +			lcd_in: endpoint {
    +				remote-endpoint = <&dpi1_out>;
    +			};
    +		};
    +	};
    +
    +        /* follow tas2505 */
    +	
    +	clk_mcasp1_fixed: clk_mcasp1_fixed {
    +		#clock-cells = <0>;
    +		compatible = "fixed-clock";
    +		//clock-frequency = <24576000>;
    +		clock-frequency = <12288000>;
    +	};
    +
    +	//clk_mcasp1: clk_mcasp1 {
    +	//	#clock-cells = <0>;
    +	//	compatible = "gpio-gate-clock";
    +	//	clocks = <&clk_mcasp1_fixed>;
    +	//	enable-gpios = <&gpio1 27 0>; // BeagleBone Black Clk enable on GPIO1_27
    +	//};
    +
    +	sound {
    +		compatible = "simple-audio-card";
    +		simple-audio-card,name = "tas2505";
    +		simple-audio-card,dai-link@0 {
    +			format = "i2s";
    +			bitclock-master = <&sound0_master>;
    +			frame-master = <&sound0_master>;
    +			sound0_master: cpu {
    +				sound-dai = <&mcasp1>;
    +				clocks = <&clk_mcasp1_fixed>;
    +			};
    +
    +			codec {
    +				sound-dai = <&tas2505>;
    +			};
     		};
     	};
     
    -	tlv320_mclk: clk-0 {
    +	/*
    +	tas2505_mclk: clk-0 {
     		#clock-cells = <0>;
     		compatible = "fixed-clock";
     		clock-frequency = <12288000>;
    @@ -149,21 +188,11 @@
     		};
     
     		sound_master: simple-audio-card,codec {
    -			sound-dai = <&tlv320aic3106>;
    -			clocks = <&tlv320_mclk>;
    -		};
    -	};
    -
    -	hdmi: connector {
    -		compatible = "hdmi-connector";
    -		label = "hdmi";
    -		type = "a";
    -		port {
    -			hdmi_connector_in: endpoint {
    -				remote-endpoint = <&sii9022_out>;
    -			};
    +			sound-dai = <&tas2505>;
    +			clocks = <&tas2505_mclk>;
     		};
     	};
    +	*/
     };
     
     &main_pmx0 {
    @@ -188,14 +217,14 @@
     			AM62X_IOPAD(0x1ec, PIN_INPUT_PULLUP, 0) /* (A17/A16) I2C1_SDA */
     		>;
     	};
    -
    -	main_i2c2_pins_default: main-i2c2-pins-default {
    -		pinctrl-single,pins = <
    -			AM62X_IOPAD(0x0b0, PIN_INPUT_PULLUP, 1) /* (K22/H18) GPMC0_CSn2.I2C2_SCL */
    -			AM62X_IOPAD(0x0b4, PIN_INPUT_PULLUP, 1) /* (K24/H19) GPMC0_CSn3.I2C2_SDA */
    -		>;
    -	};
    -
    +	
    +	/* main_i2c2_pins_default: main-i2c2-pins-default { */
    +	/*	pinctrl-single,pins = < */
    +	/*		AM62X_IOPAD(0x0b0, PIN_INPUT_PULLUP, 1) */ /* (K22/H18) GPMC0_CSn2.I2C2_SCL */
    +	/*		AM62X_IOPAD(0x0b4, PIN_INPUT_PULLUP, 1) */ /* (K24/H19) GPMC0_CSn3.I2C2_SDA */
    +	/*	>;*/
    +	/*};*/
    +	
     	main_mmc0_pins_default: main-mmc0-pins-default {
     		pinctrl-single,pins = <
     			AM62X_IOPAD(0x220, PIN_INPUT, 0) /* (Y3/V3) MMC0_CMD */
    @@ -316,6 +345,21 @@
     			AM62X_IOPAD(0x0078, PIN_OUTPUT, 1) /* (U24) GPMC0_AD15.VOUT0_DATA23 */
     		>;
     	};
    +
    +	epwm0bl_pins_default: epwm0bl-default-pins {
    +                pinctrl-single,pins = <
    +                        AM62X_IOPAD(0x01b4, PIN_OUTPUT_PULLUP, 2) /* (A13) SPI0_CS0.EHRPWM0_A */
    +                >;
    +        };
    +};
    +
    +&mcu_pmx0 {
    +	touchscreen_pins_default: touchscreen-default-pins {
    +		pinctrl-single,pins = <
    +			AM62X_MCU_IOPAD(0x0024, PIN_OUTPUT, 0) /* (B4) WKUP_UART0_RXD */
    +			AM62X_MCU_IOPAD(0x0028, PIN_INPUT, 0) /* (C5) WKUP_UART0_TXD */
    +		>;
    +	};
     };
     
     &wkup_uart0 {
    @@ -337,35 +381,41 @@
     	status = "reserved";
     };
     
    +&epwm0 {
    +	pinctrl-names = "default";
    +	pinctrl-0 = <&epwm0bl_pins_default>;
    +	status = "okay";
    + };
    +
    +&main_gpio0 {
    +	status = "okay";
    +};
    +
     &main_i2c0 {
     	status = "okay";
     	pinctrl-names = "default";
     	pinctrl-0 = <&main_i2c0_pins_default>;
     	clock-frequency = <400000>;
     
    -	typec_pd0: tps6598x@3f {
    -		compatible = "ti,tps6598x";
    -		reg = <0x3f>;
    -
    -		connector {
    -			compatible = "usb-c-connector";
    -			label = "USB-C";
    -			self-powered;
    -			data-role = "dual";
    -			power-role = "sink";
    -			ports {
    -				#address-cells = <1>;
    -				#size-cells = <0>;
    -
    -				port@0 {
    -					reg = <0>;
    -					usb_con_hs: endpoint {
    -						remote-endpoint = <&usb0_hs_ep>;
    -					};
    -				};
    -			};
    -		};
    -	};
    +        eeprom@51 {
    +                compatible = "atmel,24c512";
    +                reg = <0x51>;
    +		pagesize = <64>;
    +        };
    +
    +        touchscreen@14 {
    +                compatible = "goodix,gt911";
    +                reg = <0x14>;
    +                pinctrl-names = "default";
    +                pinctrl-0 = <&touchscreen_pins_default>;
    +                interrupt-parent = <&main_gpio0>;
    +                interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
    +                irq-gpios = <&main_gpio0 9 GPIO_ACTIVE_LOW>;
    +                reset-gpios = <&main_gpio0 10 GPIO_ACTIVE_HIGH>;
    +                touchscreen-size-x = <800>;
    +                touchscreen-size-y = <480>;
    +        };
    +
     };
     
     &main_i2c1 {
    @@ -374,57 +424,32 @@
     	pinctrl-0 = <&main_i2c1_pins_default>;
     	clock-frequency = <100000>;
     
    -	tlv320aic3106: audio-codec@1b {
    -		#sound-dai-cells = <0>;
    -		compatible = "ti,tlv320aic3106";
    -		reg = <0x1b>;
    -		ai3x-micbias-vg = <1>;	/* 2.0V */
    -
    -		/* Regulators */
    -		AVDD-supply = <&vcc_3v3_sys>;
    -		IOVDD-supply = <&vcc_3v3_sys>;
    -		DRVDD-supply = <&vcc_3v3_sys>;
    -	};
    -
    -	sii9022: sii9022@3b {
    -		#sound-dai-cells = <0>;
    -		compatible = "sil,sii9022";
    -		reg = <0x3b>;
    -
    -		interrupt-parent = <&exp1>;
    -		interrupts = <16 IRQ_TYPE_EDGE_FALLING>;
    -
    -		sil,i2s-data-lanes = < 0 >;
    -
    -		ports {
    -			#address-cells = <1>;
    -			#size-cells = <0>;
    +        pcf8523_rtc: rtc@68 {
    +                compatible = "nxp,pcf8523";
    +                reg = <0x68>;
    +		quartz-load-femtofarads = <1250>;
    +	}; 
    +
    +	tas2505: tas2505@18 {
    +                #sound-dai-cells = <0>;
    +                compatible = "ti,tas2505";
    +                reg = <0x18>;
    +                //reset-gpios = <&mcu_gpio0 3 GPIO_ACTIVE_LOW>;
    +                gpio-reset = <&main_gpio0 3 GPIO_ACTIVE_LOW>;
    +                clock-source = <0>;/* 0: MCLK, 1: BCLK */
    +                status = "ok";
    +        };
     
    -			port@0 {
    -				reg = <0>;
    -
    -				sii9022_in: endpoint {
    -					remote-endpoint = <&dpi1_out>;
    -				};
    -			};
    -
    -			port@1 {
    -				reg = <1>;
    -
    -				sii9022_out: endpoint {
    -					remote-endpoint = <&hdmi_connector_in>;
    -				};
    -			};
    -		};
    -	};
     };
     
    +/*
     &main_i2c2 {
     	status = "okay";
     	pinctrl-names = "default";
     	pinctrl-0 = <&main_i2c2_pins_default>;
     	clock-frequency = <400000>;
     };
    +*/
     
     &sdhci0 {
     	status = "okay";
    @@ -500,19 +525,6 @@
     	ti,vbus-divider;
     };
     
    -&usb0 {
    -	#address-cells = <1>;
    -	#size-cells = <0>;
    -	usb-role-switch;
    -
    -	port@0 {
    -		reg = <0>;
    -		usb0_hs_ep: endpoint {
    -		    remote-endpoint = <&usb_con_hs>;
    -	       };
    -	};
    -};
    -
     &usb1 {
     	dr_mode = "host";
     	pinctrl-names = "default";
    @@ -539,6 +551,10 @@
     	rx-num-evt = <32>;
     };
     
    +&mcasp2 {
    +        status = "disabled";
    +};
    +
     &ospi0 {
     	status = "okay";
     	pinctrl-names = "default";
    @@ -564,7 +580,7 @@
     		reg = <1>;
     
     		dpi1_out: endpoint {
    -			remote-endpoint = <&sii9022_in>;
    +			remote-endpoint = <&lcd_in>;
     		};
     	};
     };
    diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
    index e56a47228ac3..66b91622b0b2 100644
    --- a/arch/arm64/configs/defconfig
    +++ b/arch/arm64/configs/defconfig
    @@ -1,6 +1,48 @@
     CONFIG_SYSVIPC=y
     CONFIG_POSIX_MQUEUE=y
     CONFIG_AUDIT=y
    +#
    +# IRQ subsystem
    +#
    +CONFIG_GENERIC_IRQ_PROBE=y
    +CONFIG_GENERIC_IRQ_SHOW=y
    +CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
    +CONFIG_GENERIC_PENDING_IRQ=y
    +CONFIG_GENERIC_IRQ_MIGRATION=y
    +CONFIG_HARDIRQS_SW_RESEND=y
    +CONFIG_GENERIC_IRQ_CHIP=y
    +CONFIG_IRQ_DOMAIN=y
    +CONFIG_IRQ_SIM=y
    +CONFIG_IRQ_DOMAIN_HIERARCHY=y
    +CONFIG_GENERIC_MSI_IRQ=y
    +CONFIG_GENERIC_MSI_IRQ_DOMAIN=y
    +CONFIG_IRQ_MSI_IOMMU=y
    +CONFIG_GENERIC_IRQ_MATRIX_ALLOCATOR=y
    +CONFIG_GENERIC_IRQ_RESERVATION_MODE=y
    +CONFIG_IRQ_FORCED_THREADING=y
    +CONFIG_SPARSE_IRQ=y
    +# CONFIG_GENERIC_IRQ_DEBUGFS is not set
    +# end of IRQ subsystem
    +
    +CONFIG_CLOCKSOURCE_WATCHDOG=y
    +CONFIG_ARCH_CLOCKSOURCE_INIT=y
    +CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y
    +CONFIG_GENERIC_TIME_VSYSCALL=y
    +CONFIG_GENERIC_CLOCKEVENTS=y
    +CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
    +CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y
    +CONFIG_GENERIC_CMOS_UPDATE=y
    +CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y
    +CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y
    +CONFIG_CONTEXT_TRACKING=y
    +CONFIG_CONTEXT_TRACKING_IDLE=y
    +
    +#
    +# Timers subsystem
    +#
    +CONFIG_TICK_ONESHOT=y
    +CONFIG_NO_HZ_COMMON=y
    +# CONFIG_HZ_PERIODIC is not set
     CONFIG_NO_HZ_IDLE=y
     CONFIG_HIGH_RES_TIMERS=y
     CONFIG_BPF_SYSCALL=y
    @@ -218,9 +260,9 @@ CONFIG_CGROUP_NET_PRIO=y
     CONFIG_CAN=m
     CONFIG_BT=m
     CONFIG_BT_HIDP=m
    -# CONFIG_BT_LE is not set
    +CONFIG_BT_LE=m
     CONFIG_BT_LEDS=y
    -# CONFIG_BT_DEBUGFS is not set
    +CONFIG_BT_DEBUGFS=m
     CONFIG_BT_HCIBTUSB=m
     CONFIG_BT_HCIUART=m
     CONFIG_BT_HCIUART_LL=y
    @@ -331,7 +373,7 @@ CONFIG_QCOM_FASTRPC=m
     CONFIG_SRAM=y
     CONFIG_SRAM_DMA_HEAP=y
     CONFIG_PCI_ENDPOINT_TEST=m
    -CONFIG_EEPROM_AT24=m
    +CONFIG_EEPROM_AT24=y
     CONFIG_EEPROM_AT25=m
     CONFIG_UACCE=m
     # CONFIG_SCSI_PROC_FS is not set
    @@ -477,10 +519,13 @@ CONFIG_KEYBOARD_SNVS_PWRKEY=m
     CONFIG_KEYBOARD_IMX_SC_KEY=m
     CONFIG_KEYBOARD_CROS_EC=y
     CONFIG_INPUT_TOUCHSCREEN=y
    -CONFIG_TOUCHSCREEN_ATMEL_MXT=m
    -CONFIG_TOUCHSCREEN_GOODIX=m
    -CONFIG_TOUCHSCREEN_ILI210X=m
    -CONFIG_TOUCHSCREEN_EDT_FT5X06=m
    +CONFIG_I2C_HID_OF_GOODIX=y 
    +# CONFIG_TOUCHSCREEN_GT9XXNEW_TS=y
    +# CONFIG_TOUCHSCREEN_GT9XXNEWDUP_TS=y
    +# CONFIG_TOUCHSCREEN_ATMEL_MXT=m
    +CONFIG_TOUCHSCREEN_GOODIX=y
    +# CONFIG_TOUCHSCREEN_ILI210X=m
    +# CONFIG_TOUCHSCREEN_EDT_FT5X06=m
     CONFIG_INPUT_MISC=y
     CONFIG_INPUT_PM8941_PWRKEY=y
     CONFIG_INPUT_PM8XXX_VIBRATOR=m
    @@ -493,6 +538,7 @@ CONFIG_SERIO_AMBAKMI=y
     CONFIG_LEGACY_PTY_COUNT=16
     CONFIG_SERIAL_8250=y
     CONFIG_SERIAL_8250_CONSOLE=y
    +CONFIG_SERIAL_8250_DMA=y
     CONFIG_SERIAL_8250_EXTENDED=y
     CONFIG_SERIAL_8250_SHARE_IRQ=y
     CONFIG_SERIAL_8250_BCM2835AUX=y
    @@ -526,6 +572,8 @@ CONFIG_SERIAL_FSL_LINFLEXUART_CONSOLE=y
     CONFIG_SERIAL_MVEBU_UART=y
     CONFIG_SERIAL_OWL=y
     CONFIG_SERIAL_DEV_BUS=y
    +CONFIG_SERIAL_8250_NR_UARTS=12
    +CONFIG_SERIAL_8250_RUNTIME_UARTS=12
     CONFIG_VIRTIO_CONSOLE=y
     CONFIG_IPMI_HANDLER=m
     CONFIG_IPMI_DEVICE_INTERFACE=m
    @@ -644,6 +692,15 @@ CONFIG_GPIO_PCA953X_IRQ=y
     CONFIG_GPIO_BD9571MWV=m
     CONFIG_GPIO_MAX77620=y
     CONFIG_GPIO_SL28CPLD=m
    +CONFIG_GPIOLIB=y
    +CONFIG_GPIOLIB_FASTPATH_LIMIT=512
    +CONFIG_GPIO_ACPI=y
    +CONFIG_GPIOLIB_IRQCHIP=y
    +CONFIG_DEBUG_GPIO=y
    +CONFIG_GPIO_SYSFS=y
    +CONFIG_GPIO_CDEV=y
    +CONFIG_GPIO_CDEV_V1=y
    +CONFIG_GPIO_GENERIC=y
     CONFIG_POWER_RESET_MSM=y
     CONFIG_POWER_RESET_QCOM_PON=m
     CONFIG_POWER_RESET_XGENE=y
    @@ -876,6 +933,7 @@ CONFIG_SND=y
     CONFIG_SND_HDA_TEGRA=m
     CONFIG_SND_HDA_CODEC_HDMI=m
     CONFIG_SND_SOC=y
    +CONFIG_SND_SOC_DAVINCI_MCASP=y
     CONFIG_SND_BCM2835_SOC_I2S=m
     CONFIG_SND_SOC_FSL_ASRC=m
     CONFIG_SND_SOC_FSL_MICFIL=m
    @@ -931,6 +989,7 @@ CONFIG_SND_SOC_RT5659=m
     CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m
     CONFIG_SND_SOC_SIMPLE_MUX=m
     CONFIG_SND_SOC_TAS571X=m
    +CONFIG_SND_SOC_TAS2505=y
     CONFIG_SND_SOC_TLV320AIC32X4_I2C=m
     CONFIG_SND_SOC_TLV320AIC3X_I2C=m
     CONFIG_SND_SOC_WCD9335=m
    @@ -944,9 +1003,10 @@ CONFIG_SND_SOC_WSA881X=m
     CONFIG_SND_SOC_NAU8822=m
     CONFIG_SND_SOC_LPASS_WSA_MACRO=m
     CONFIG_SND_SOC_LPASS_VA_MACRO=m
    -CONFIG_SND_SIMPLE_CARD=m
    -CONFIG_SND_AUDIO_GRAPH_CARD=m
    -CONFIG_SND_AUDIO_GRAPH_CARD2=m
    +CONFIG_SND_SIMPLE_CARD=y
    +CONFIG_SND_SIMPLE_CARD_UTILS=y
    +CONFIG_SND_AUDIO_GRAPH_CARD=y
    +CONFIG_SND_AUDIO_GRAPH_CARD2=y
     CONFIG_HID_MULTITOUCH=m
     CONFIG_I2C_HID_ACPI=m
     CONFIG_I2C_HID_OF=m
    @@ -1078,6 +1138,7 @@ CONFIG_RTC_DRV_MAX77686=y
     CONFIG_RTC_DRV_RK808=m
     CONFIG_RTC_DRV_PCF85063=m
     CONFIG_RTC_DRV_PCF85363=m
    +CONFIG_RTC_DRV_PCF8523=m
     CONFIG_RTC_DRV_M41T80=m
     CONFIG_RTC_DRV_BQ32K=m
     CONFIG_RTC_DRV_RX8581=m
    diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
    index 3192411218fb..239a6874b491 100644
    --- a/drivers/gpu/drm/panel/panel-simple.c
    +++ b/drivers/gpu/drm/panel/panel-simple.c
    @@ -1711,8 +1711,9 @@ static const struct panel_desc edt_et057090dhu = {
     	.connector_type = DRM_MODE_CONNECTOR_DPI,
     };
     
    +/* taeha 202040806 Add LCD */
     static const struct drm_display_mode edt_etm0700g0dh6_mode = {
    -	.clock = 33260,
    +	.clock = 26000,
     	.hdisplay = 800,
     	.hsync_start = 800 + 40,
     	.hsync_end = 800 + 40 + 128,
    @@ -1724,16 +1725,17 @@ static const struct drm_display_mode edt_etm0700g0dh6_mode = {
     	.flags = DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC,
     };
     
    +/* taeha 20240806 Add LCD */
     static const struct panel_desc edt_etm0700g0dh6 = {
     	.modes = &edt_etm0700g0dh6_mode,
     	.num_modes = 1,
    -	.bpc = 6,
    +	.bpc = 8,
     	.size = {
    -		.width = 152,
    -		.height = 91,
    +		.width = 150,
    +		.height = 94,
     	},
    -	.bus_format = MEDIA_BUS_FMT_RGB666_1X18,
    -	.bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_DRIVE_NEGEDGE,
    +	.bus_format = MEDIA_BUS_FMT_RGB888_1X24,
    +	/* .bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_DRIVE_NEGEDGE, */
     	.connector_type = DRM_MODE_CONNECTOR_DPI,
     };
     
    diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig
    index 965ae55fa160..8b586b1b4359 100644
    --- a/sound/soc/codecs/Kconfig
    +++ b/sound/soc/codecs/Kconfig
    @@ -223,6 +223,7 @@ config SND_SOC_ALL_CODECS
     	imply SND_SOC_TAS2764
     	imply SND_SOC_TAS2770
     	imply SND_SOC_TAS2780
    +	imply SND_SOC_TAS2505
     	imply SND_SOC_TAS5086
     	imply SND_SOC_TAS571X
     	imply SND_SOC_TAS5720
    @@ -1579,6 +1580,13 @@ config SND_SOC_TAS2780
     	  Enable support for Texas Instruments TAS2780 high-efficiency
     	  digital input mono Class-D audio power amplifiers.
     
    +config SND_SOC_TAS2505
    +        tristate "Texas Instruments TAS2505 Mono Audio amplifier"
    +        depends on I2C
    +        help
    +          Enable support for Texas Instruments TAS2505 high-efficiency
    +          digital input mono Class-D audio power amplifiers.
    +
     config SND_SOC_TAS5086
     	tristate "Texas Instruments TAS5086 speaker amplifier"
     	depends on I2C
    diff --git a/sound/soc/codecs/Makefile b/sound/soc/codecs/Makefile
    index 71d3ce5867e4..e85409d89cfe 100644
    --- a/sound/soc/codecs/Makefile
    +++ b/sound/soc/codecs/Makefile
    @@ -355,6 +355,7 @@ snd-soc-tas2552-objs := tas2552.o
     snd-soc-tas2562-objs := tas2562.o
     snd-soc-tas2764-objs := tas2764.o
     snd-soc-tas2780-objs := tas2780.o
    +snd-soc-tas2505-objs := tas2505.o
     # Mux
     snd-soc-simple-mux-objs := simple-mux.o
     
    @@ -606,6 +607,7 @@ obj-$(CONFIG_SND_SOC_TAS2552)	+= snd-soc-tas2552.o
     obj-$(CONFIG_SND_SOC_TAS2562)	+= snd-soc-tas2562.o
     obj-$(CONFIG_SND_SOC_TAS2764)	+= snd-soc-tas2764.o
     obj-$(CONFIG_SND_SOC_TAS2780)	+= snd-soc-tas2780.o
    +obj-$(CONFIG_SND_SOC_TAS2505)   += snd-soc-tas2505.o
     obj-$(CONFIG_SND_SOC_TAS5086)	+= snd-soc-tas5086.o
     obj-$(CONFIG_SND_SOC_TAS571X)	+= snd-soc-tas571x.o
     obj-$(CONFIG_SND_SOC_TAS5720)	+= snd-soc-tas5720.o
    diff --git a/sound/soc/codecs/tas2505.c b/sound/soc/codecs/tas2505.c
    new file mode 100644
    index 000000000000..f4ea761441bd
    --- /dev/null
    +++ b/sound/soc/codecs/tas2505.c
    @@ -0,0 +1,693 @@
    +/*
    + * ALSA SoC TAS2505 codec driver
    + *
    + * Author: Hieu Tran Dang <dangtranhieu2012@gmail.com>
    + *
    + * This package is free software; you can redistribute it and/or modify
    + * it under the terms of the GNU General Public License version 2 as
    + * published by the Free Software Foundation.
    + *
    + * THIS PACKAGE IS PROVIDED AS IS AND WITHOUT ANY EXPRESS OR
    + * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
    + * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
    + */
    +#include <linux/version.h>
    +#include <linux/module.h>
    +#include <linux/i2c.h>
    +#include <linux/clk.h>
    +#include <linux/of.h>
    +#include <linux/of_gpio.h>
    +#include <sound/soc.h>
    +#include <sound/tlv.h>
    +#include <sound/pcm_params.h>
    +#include "tas2505.h"
    +
    +enum {
    +	MCLK = 0,
    +	BCLK = 1,
    +};
    +
    +struct tas2505
    +{
    +	int dac_vol;
    +	int spk_vol1;
    +}tas2505_vol;
    +
    +
    +static int tas2505_dac_getvol(struct snd_kcontrol *kcontrol,
    +	struct snd_ctl_elem_value *ucontrol)
    +{
    +	ucontrol->value.integer.value[0] = tas2505_vol.dac_vol;
    +
    +	return 0;
    +}
    +
    +static int tas2505_dac_putvol(struct snd_kcontrol *kcontrol,
    +	struct snd_ctl_elem_value *ucontrol)
    +{
    +	struct snd_soc_component *component =
    +		snd_soc_kcontrol_component(kcontrol);
    +	struct soc_mixer_control *mc =
    +		(struct soc_mixer_control *)kcontrol->private_value;
    +	u8 val;
    +
    +	val = ucontrol->value.integer.value[0];
    +	val = mc->invert ? mc->max - val : val;
    +	val = (val < 0) ? 0 : val;
    +	tas2505_vol.dac_vol = val;
    +	snd_soc_component_write(component, TAS2505_DACVOL, val);
    +	
    +	return 0;
    +}
    +
    +static int tas2505_spkdrv_getvol(struct snd_kcontrol *kcontrol,
    +	struct snd_ctl_elem_value *ucontrol)
    +{
    +	struct snd_soc_component *component =
    +		snd_soc_kcontrol_component(kcontrol);
    +	struct soc_mixer_control *mc =
    +		(struct soc_mixer_control *)kcontrol->private_value;
    +	unsigned int val;
    +
    +	val = snd_soc_component_read(component, TAS2505_SPKVOL1);
    +
    +	val = (val > mc->max) ? mc->max : val;
    +	val = mc->invert ? mc->max - val : val;
    +	ucontrol->value.integer.value[0] = val;
    +	tas2505_vol.spk_vol1 = val;
    +	return 0;
    +}
    +
    +static int tas2505_spkdrv_putvol(struct snd_kcontrol *kcontrol,
    +	struct snd_ctl_elem_value *ucontrol)
    +{
    +	struct snd_soc_component *component =
    +		snd_soc_kcontrol_component(kcontrol);
    +	struct soc_mixer_control *mc =
    +		(struct soc_mixer_control *)kcontrol->private_value;
    +	u8 val;
    +
    +	val = (ucontrol->value.integer.value[0] & 0x7f);
    +	val = mc->invert ? mc->max - val : val;
    +	val = (val < 0) ? 0 : val;
    +	tas2505_vol.spk_vol1 = val;
    +	snd_soc_component_write(component, TAS2505_SPKVOL1, val);
    +
    +	return 0;
    +}
    +
    +static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -6350, 50, 0);
    +static const DECLARE_TLV_DB_LINEAR(spk_drv_vol_tlv, TLV_DB_GAIN_MUTE, 0);
    +static const DECLARE_TLV_DB_SCALE(spk_amp_vol_tlv, 0, 600, 1);
    +
    +static const struct snd_kcontrol_new tas2505_snd_controls[] = {
    +	SOC_SINGLE_RANGE_EXT_TLV("DAC Playback Volume", TAS2505_DACVOL,
    +		0, 48, 0x81, 1,
    +		tas2505_dac_getvol, tas2505_dac_putvol, dac_vol_tlv),
    +	SOC_SINGLE_RANGE_EXT_TLV("Speaker Driver Volume", TAS2505_SPKVOL1,
    +		0, 0, 117, 1,
    +		tas2505_spkdrv_getvol, tas2505_spkdrv_putvol, spk_drv_vol_tlv),
    +	SOC_SINGLE_TLV("Speaker Amplifer Volume", TAS2505_SPKVOL2,
    +		4, 5, 0, spk_amp_vol_tlv),
    +};
    +
    +static const struct snd_soc_dapm_widget tas2505_dapm_widgets[] = {
    +	SND_SOC_DAPM_DAC("DAC Channel", "Playback",
    +		TAS2505_DACSETUP1, 7, 0),
    +	SND_SOC_DAPM_OUT_DRV("Speaker Driver", TAS2505_SPKAMPCTRL1,
    +		1, 0, NULL, 0),
    +	SND_SOC_DAPM_OUTPUT("Speaker"),
    +};
    +
    +static const struct snd_soc_dapm_route tas2505_audio_map[] = {
    +	{ "Speaker Driver", NULL, "DAC Channel" },
    +	{ "Speaker", NULL, "Speaker Driver" },
    +};
    +
    +static const struct reg_default tas2505_reg_defaults[] = {
    +	{ TAS2505_CLKMUX, 0x00 },
    +	{ TAS2505_PLLPR, 0x11 },
    +	{ TAS2505_PLLJ, 0x04 },
    +	{ TAS2505_PLLDMSB, 0x00 },
    +	{ TAS2505_PLLDLSB, 0x00 },
    +	{ TAS2505_NDAC, 0x01 },
    +	{ TAS2505_MDAC, 0x01 },
    +	{ TAS2505_DOSRMSB, 0x00 },
    +	{ TAS2505_DOSRLSB, 0x80 },
    +	{ TAS2505_IFACE1, 0x00 },
    +	{ TAS2505_IFACE3, 0x00 },
    +	{ TAS2505_DACSETUP1, 0x14 },
    +	{ TAS2505_DACSETUP2, 0x0c },
    +	{ TAS2505_DACVOL, 0x00 },
    +	{ TAS2505_REF_POR_LDO_BGAP_CTRL, 0x00 },
    +	{ TAS2505_LDO_CTRL, 0x0c },
    +	{ TAS2505_SPKAMPCTRL1, 0x00 },
    +	{ TAS2505_SPKVOL1, 0x00 },
    +	{ TAS2505_SPKVOL2, 0x50 },
    +	{ TAS2505_DACFLAG1, 0x00 },
    +	{ TAS2505_DACFLAG2, 0x00 },
    +	{ TAS2505_STICKYFLAG1, 0x00 },
    +	{ TAS2505_STICKYFLAG2, 0x00 },
    +	{ TAS2505_INTFLAG1, 0x00 },
    +	{ TAS2505_INTFLAG2, 0x00 },
    +	{ TAS2505_DACINSTRSET, 0x02 },
    +	{ TAS2505_DACANLGAINFLAG, 0x00 },
    +};
    +
    +static bool tas2505_volatile(struct device *dev, unsigned int reg)
    +{
    +	switch (reg) {
    +	case TAS2505_PAGECTL:
    +	case TAS2505_RESET:
    +	case TAS2505_DACFLAG1:
    +	case TAS2505_DACFLAG2:
    +	case TAS2505_STICKYFLAG1:
    +	case TAS2505_STICKYFLAG2:
    +	case TAS2505_INTFLAG1:
    +	case TAS2505_INTFLAG2:
    +	case TAS2505_DACANLGAINFLAG:
    +		return true;
    +	}
    +	return false;
    +}
    +
    +static bool tas2505_writeable(struct device *dev, unsigned int reg)
    +{
    +	switch (reg) {
    +	case TAS2505_DACFLAG1:
    +	case TAS2505_DACFLAG2:
    +	case TAS2505_STICKYFLAG1:
    +	case TAS2505_STICKYFLAG2:
    +	case TAS2505_INTFLAG1:
    +	case TAS2505_INTFLAG2:
    +	case TAS2505_DACANLGAINFLAG:
    +		return false;
    +	}
    +	return true;
    +}
    +
    +static const struct regmap_range_cfg tas2505_ranges[] = {
    +	{
    +		.range_min = 0,
    +		.range_max = 69 * 128,
    +		.selector_reg = TAS2505_PAGECTL,
    +		.selector_mask = 0xff,
    +		.selector_shift = 0,
    +		.window_start = 0,
    +		.window_len = 128,
    +	},
    +};
    +
    +static const struct regmap_config tas2505_i2c_regmap = {
    +	.reg_bits = 8,
    +	.val_bits = 8,
    +	.writeable_reg = tas2505_writeable,
    +	.volatile_reg = tas2505_volatile,
    +	.reg_defaults = tas2505_reg_defaults,
    +	.num_reg_defaults = ARRAY_SIZE(tas2505_reg_defaults),
    +	.cache_type = REGCACHE_RBTREE,
    +	.ranges = tas2505_ranges,
    +	.num_ranges = ARRAY_SIZE(tas2505_ranges),
    +	.max_register = 69 * 128,
    +};
    +
    +struct tas2505_rate_divs {
    +	u32 mclk_p;
    +	u32 rate;
    +	u8 pll_r;
    +	u8 pll_j;
    +	u16 pll_d;
    +	u8 mdac;
    +	u8 ndac;
    +	u16 dosr;
    +};
    +
    +static const struct tas2505_rate_divs tas2505_divs_mclksrc[] = {
    +	{ 12288000, 44100, 1, 7, 35, 4, 4, 128 },
    +	{ 12288000, 48000, 1, 7, 0, 7, 2, 128 },
    +	{ 2822400, 44100, 1, 8, 4672, 3, 5, 128 },
    +	{ 11289600, 44100, 1, 8, 0, 4, 8, 64 },
    +	{ 11289600, 22050, 1, 8, 0, 4, 8, 128 },
    +	{ 2822400, 44100, 1, 8, 4672, 3, 5, 128 },
    +	{ 2822400, 22050, 1, 8, 4672, 3, 5, 256 },
    +};
    +
    +static const struct tas2505_rate_divs tas2505_divs_bclksrc[] = {
    +	{ 1536000, 48000, 1, 56, 0, 2, 7, 128 },
    +	{ 1411200, 44100, 1, 60, 0, 5, 3, 128 },
    +	{ 3072000, 48000, 1, 28, 0, 2, 7, 128 },
    +	{ 2822400, 44100, 1, 30, 0, 5, 3, 128 },
    +	{ 1024000, 32000, 2, 40, 0, 5, 4, 128 },
    +	{ 2048000, 32000, 1, 40, 0, 5, 4, 128 },
    +};
    +
    +struct tas2505_priv {
    +	void *codec;
    +	struct device *dev;
    +	struct regmap *regmap;
    +	u32 sysclk;
    +	u32 clk_src;
    +	u32 rate;
    +	int rate_div_line;
    +	int pll_clkin;
    +	int frame_size;
    +	u8 p_div;
    +};
    +
    +static int tas2505_setup_pll(struct snd_soc_component *codec)
    +{
    +	struct tas2505_priv *tas2505 = snd_soc_component_get_drvdata(codec);
    +	int mclk_p = tas2505->sysclk / tas2505->p_div;
    +	struct tas2505_rate_divs *rate_divs;
    +	int match = -1;
    +	u8 p_div;
    +	int i;
    +
    +	if (tas2505->clk_src == MCLK) {
    +		for (i = 0; i < ARRAY_SIZE(tas2505_divs_mclksrc); i++) {
    +			if (
    +				tas2505_divs_mclksrc[i].rate == tas2505->rate &&
    +				tas2505_divs_mclksrc[i].mclk_p == mclk_p
    +			) {
    +				match = i;
    +				break;
    +			}
    +		}
    +
    +		if (match == -1) {
    +			dev_err(codec->dev,
    +				"Sample rate (%u) and format not supported\n",
    +				tas2505->rate);
    +			return -EINVAL;
    +		}
    +
    +		tas2505->rate_div_line = match;
    +		rate_divs = (struct tas2505_rate_divs *)tas2505_divs_mclksrc;
    +	} else {
    +		for (i = 0; i < ARRAY_SIZE(tas2505_divs_bclksrc); i++) {
    +			if (tas2505_divs_bclksrc[i].rate ==
    +				tas2505->rate) {
    +				match = i;
    +				break;
    +			}
    +		}
    +
    +		if (match == -1) {
    +			dev_err(codec->dev,
    +				"Sample rate (%u) and format not supported\n",
    +				tas2505->rate);
    +			return -EINVAL;
    +		}
    +		rate_divs = (struct tas2505_rate_divs *)tas2505_divs_bclksrc;
    +	}
    +
    +	p_div = (tas2505->p_div == 8) ? 0 : tas2505->p_div;
    +	p_div <<= TAS2505_PLLPR_P_SHIFT;
    +	p_div |= rate_divs[match].pll_r;
    +	p_div |= TAS2505_PM_MASK;
    +
    +	snd_soc_component_write(codec, TAS2505_PLLPR, p_div);
    +	snd_soc_component_write(codec, TAS2505_PLLJ,
    +		rate_divs[match].pll_j);
    +	snd_soc_component_write(codec, TAS2505_PLLDMSB,
    +		rate_divs[match].pll_d >> 8);
    +	snd_soc_component_write(codec, TAS2505_PLLDLSB,
    +		rate_divs[match].pll_d & 0xff);
    +	mdelay(15);
    +	snd_soc_component_write(codec, TAS2505_NDAC,
    +		TAS2505_PM_MASK | rate_divs[match].ndac);
    +	snd_soc_component_write(codec, TAS2505_MDAC,
    +		TAS2505_PM_MASK | rate_divs[match].mdac);
    +	snd_soc_component_write(codec, TAS2505_DOSRMSB,
    +		rate_divs[match].dosr >> 8);
    +	snd_soc_component_write(codec, TAS2505_DOSRLSB,
    +		rate_divs[match].dosr & 0xff);
    +	if (tas2505->clk_src != MCLK)
    +		snd_soc_component_update_bits(codec, TAS2505_BCLKNDIV,
    +			TAS2505_BCLKNDIV_MASK,
    +			(rate_divs[match].dosr * rate_divs[match].mdac) /
    +			tas2505->frame_size);
    +
    +	return 0;
    +}
    +
    +static int tas2505_hw_params(struct snd_pcm_substream *substream,
    +	struct snd_pcm_hw_params *params, struct snd_soc_dai *dai)
    +{
    +	struct snd_soc_component *codec = dai->component;
    +	struct tas2505_priv *tas2505 = snd_soc_component_get_drvdata(codec);
    +	u8 data = 0;
    +
    +	switch (params_width(params)) {
    +	case 16:
    +		break;
    +
    +	case 20:
    +		data = TAS2505_WORD_LEN_20BITS;
    +		break;
    +
    +	case 24:
    +		data = TAS2505_WORD_LEN_24BITS;
    +		break;
    +
    +	case 32:
    +		data = TAS2505_WORD_LEN_32BITS;
    +		break;
    +
    +	default:
    +		dev_err(codec->dev, "Unsupported width %d\n",
    +			params_width(params));
    +		return -EINVAL;
    +	}
    +	dev_info(codec->dev, "%s: bit width = %d\n",
    +				__func__, params_width(params));
    +	data <<= TAS2505_IFACE1_DATALEN_SHIFT;
    +
    +	snd_soc_component_update_bits(codec, TAS2505_IFACE1,
    +		TAS2505_IFACE1_DATALEN_MASK, data);
    +	tas2505->rate = params_rate(params);
    +	tas2505->frame_size = snd_soc_params_to_frame_size(params);
    +
    +	return tas2505_setup_pll(codec);
    +}
    +
    +static int tas2505_dac_mute(struct snd_soc_dai *dai, int mute,
    +	int stream)
    +{
    +	struct snd_soc_component *codec = dai->component;
    +
    +	if (mute) {
    +		snd_soc_component_update_bits(codec, TAS2505_DACSETUP2,
    +			TAS2505_DACSETUP2_MUTE_MASK,
    +			TAS2505_DACSETUP2_MUTE_MASK);
    +		snd_soc_component_update_bits(codec, TAS2505_DACSETUP1,
    +			0x80, 0x00);
    +	} else {
    +		snd_soc_component_update_bits(codec, TAS2505_DACSETUP1,
    +			0x80, 0x80);
    +		snd_soc_component_update_bits(codec, TAS2505_DACSETUP2,
    +			TAS2505_DACSETUP2_MUTE_MASK, 0x0);
    +	}
    +
    +	return 0;
    +}
    +
    +static int tas2505_set_dai_fmt(struct snd_soc_dai *codec_dai,
    +	unsigned int fmt)
    +{
    +	struct snd_soc_component *codec = codec_dai->component;
    +	u8 iface_reg1 = 0;
    +	u8 iface_reg3 = 0;
    +
    +	switch (fmt & SND_SOC_DAIFMT_MASTER_MASK) {
    +	case SND_SOC_DAIFMT_CBS_CFS:
    +		break;
    +
    +	case SND_SOC_DAIFMT_CBM_CFM:
    +		iface_reg1 |= TAS2505_IFACE1_BCLKDIR_MASK;
    +		iface_reg1 |= TAS2505_IFACE1_WCLKDIR_MASK;
    +		break;
    +
    +	default:
    +		dev_err(codec->dev,
    +			"%s SND_SOC_DAIFMT_MASTER_MASK 0x%x \n",__FUNCTION__,fmt);
    +		return -EINVAL;
    +	}
    +
    +	switch (fmt & SND_SOC_DAIFMT_INV_MASK) {
    +	case SND_SOC_DAIFMT_NB_NF:
    +		break;
    +
    +	case SND_SOC_DAIFMT_IB_NF:
    +		iface_reg3 |= TAS2505_IFACE3_BCLKINV_MASK;
    +		break;
    +
    +	default:
    +		dev_err(codec->dev,
    +			"tas2505_set_dai_fmt SND_SOC_DAIFMT_INV_MASK 0x%x \n",fmt);
    +		return -EINVAL;
    +	}
    +
    +	switch (fmt & SND_SOC_DAIFMT_FORMAT_MASK) {
    +	case SND_SOC_DAIFMT_I2S:
    +		break;
    +
    +	case SND_SOC_DAIFMT_DSP_A:
    +	case SND_SOC_DAIFMT_DSP_B:
    +		iface_reg1 |= (TAS2505_DSP_MODE <<
    +			TAS2505_IFACE1_INTERFACE_SHIFT);
    +		break;
    +
    +	case SND_SOC_DAIFMT_RIGHT_J:
    +		iface_reg1 |= (TAS2505_RJF_MODE <<
    +			TAS2505_IFACE1_INTERFACE_SHIFT);
    +		break;
    +
    +	case SND_SOC_DAIFMT_LEFT_J:
    +		iface_reg1 |= (TAS2505_LJF_MODE <<
    +			TAS2505_IFACE1_INTERFACE_SHIFT);
    +		break;
    +
    +	default:
    +		dev_err(codec->dev, "Invalid DAI interface format\n");
    +		return -EINVAL;
    +	}
    +
    +	snd_soc_component_write(codec, TAS2505_IFACE1, iface_reg1);
    +	snd_soc_component_update_bits(codec, TAS2505_IFACE3,
    +		TAS2505_IFACE3_BCLKINV_MASK | TAS2505_IFACE3_BDIVCLKIN_MASK,
    +		iface_reg3);
    +
    +	return 0;
    +}
    +
    +static int tas2505_set_dai_sysclk(struct snd_soc_dai *codec_dai,
    +	int clk_id, unsigned int freq, int dir)
    +{
    +	struct snd_soc_component *codec = codec_dai->component;
    +	struct tas2505_priv *tas2505 = snd_soc_component_get_drvdata(codec);
    +	int i, x;
    +	int ret = 0;
    +
    +	dev_info(tas2505->dev, "%s: clk_id: %d, freq: %d\n",
    +		__func__, clk_id, freq);
    +
    +	if (tas2505->clk_src == MCLK) {
    +		for (i = 0; i < ARRAY_SIZE(tas2505_divs_mclksrc); i++) {
    +			for (x = 1; x < 9; x++) {
    +				if ((freq / x) == tas2505_divs_mclksrc[i].mclk_p) {
    +					tas2505->p_div = x;
    +					break;
    +				}
    +			}
    +			if (x < 9)
    +				break;
    +		}
    +
    +		if (i != ARRAY_SIZE(tas2505_divs_mclksrc)) {
    +		} else {
    +			dev_err(tas2505->dev,
    +				"Can't produce required "
    +				"PLL_CLKIN frequency\n");
    +			ret = -EINVAL;
    +		}
    +		tas2505->pll_clkin = clk_id;
    +	} else {
    +		tas2505->pll_clkin = 1;
    +		tas2505->p_div = 1;
    +	}
    +
    +	if (!ret) {
    +		snd_soc_component_write(codec, TAS2505_CLKMUX,
    +			(tas2505->pll_clkin << TAS2505_PLL_CLKIN_SHIFT) |
    +			TAS2505_CODEC_CLKIN_PLL);
    +
    +		tas2505->sysclk = freq;
    +	}
    +	return ret;
    +
    +}
    +
    +static void tas2505_power_on(struct snd_soc_component *codec)
    +{
    +	snd_soc_component_update_bits(codec, TAS2505_LDO_CTRL,
    +		TAS2505_LDO_PLL_HP_LVL_MASK, 0);
    +	snd_soc_component_update_bits(codec, TAS2505_REF_POR_LDO_BGAP_CTRL,
    +		TAS2505_REF_POR_LDO_BGAP_MASTER_REF_MASK,
    +		TAS2505_REF_POR_LDO_BGAP_MASTER_REF_MASK);
    +}
    +
    +static void tas2505_power_off(struct snd_soc_component *codec)
    +{
    +	snd_soc_component_update_bits(codec, TAS2505_REF_POR_LDO_BGAP_CTRL,
    +		TAS2505_REF_POR_LDO_BGAP_MASTER_REF_MASK, 0);
    +	snd_soc_component_update_bits(codec, TAS2505_LDO_CTRL,
    +		TAS2505_LDO_PLL_HP_LVL_MASK,
    +		TAS2505_LDO_PLL_HP_LVL_MASK);
    +}
    +
    +static int tas2505_set_bias_level(struct snd_soc_component *codec,
    +	enum snd_soc_bias_level level)
    +{
    +	int current_lvl = snd_soc_component_get_bias_level(codec);
    +	int rc = 0;
    +
    +	switch (level) {
    +	case SND_SOC_BIAS_ON:
    +		break;
    +	case SND_SOC_BIAS_PREPARE:
    +		break;
    +	case SND_SOC_BIAS_STANDBY:
    +		if (current_lvl == SND_SOC_BIAS_OFF) {
    +			tas2505_power_on(codec);
    +			dev_info(codec->dev,
    +				"%s:power on\n", __func__);
    +		} else
    +			dev_info(codec->dev,
    +				"%s:SND_SOC_BIAS_STANDBY\n",
    +				__func__);
    +		break;
    +	case SND_SOC_BIAS_OFF:
    +		if (current_lvl == SND_SOC_BIAS_STANDBY) {
    +			tas2505_power_off(codec);
    +			dev_info(codec->dev,
    +				"%s:power off\n",
    +				__func__);
    +		} else
    +			dev_info(codec->dev,
    +				"%s:SND_SOC_BIAS_OFF\n",
    +				__func__);
    +		break;
    +	default:
    +		dev_err(codec->dev, "Invalid bias level\n");
    +		rc = -EINVAL;
    +	}
    +
    +	return rc;
    +}
    +
    +static int tas2505_codec_probe(struct snd_soc_component *codec)
    +{
    +	struct tas2505_priv *tas2505 = snd_soc_component_get_drvdata(codec);
    +
    +	tas2505->codec = codec;
    +	tas2505_vol.dac_vol = 0x00;
    +	tas2505_vol.spk_vol1 = 0x00;
    +
    +	snd_soc_component_write(codec, TAS2505_RESET, 1);
    +
    +	 dev_info(codec->dev,"%s: Probe finished\n", __func__);
    +	return 0;
    +}
    +
    +static const struct snd_soc_component_driver soc_codec_driver_tas2505 = {
    +	.probe			= tas2505_codec_probe,
    +	.set_bias_level		= tas2505_set_bias_level,
    +	.suspend_bias_off	= true,
    +
    +	.controls		= tas2505_snd_controls,
    +	.num_controls		= ARRAY_SIZE(tas2505_snd_controls),
    +	.dapm_widgets		= tas2505_dapm_widgets,
    +	.num_dapm_widgets	= ARRAY_SIZE(tas2505_dapm_widgets),
    +	.dapm_routes		= tas2505_audio_map,
    +	.num_dapm_routes	= ARRAY_SIZE(tas2505_audio_map),
    +};
    +
    +static const struct snd_soc_dai_ops tas2505_dai_ops = {
    +	.hw_params	= tas2505_hw_params,
    +	.set_sysclk	= tas2505_set_dai_sysclk,
    +	.set_fmt	= tas2505_set_dai_fmt,
    +	.mute_stream	= tas2505_dac_mute,
    +};
    +
    +static struct snd_soc_dai_driver tas2505_dai_driver[] = {
    +	{
    +		.name = "tas2505-hifi",
    +		.playback = {
    +			.stream_name	= "Playback",
    +			.channels_min	= 1,
    +			.channels_max	= 2,
    +			.rates		= TAS2505_RATES,
    +			.formats	= TAS2505_FORMATS,
    +		},
    +		.ops = &tas2505_dai_ops,
    +		.symmetric_rate = 1,
    +	},
    +};
    +
    +static int tas2505_i2c_probe(struct i2c_client *i2c,
    +	const struct i2c_device_id *id)
    +{
    +	struct tas2505_priv *tas2505;
    +	struct device_node *np = i2c->dev.of_node;
    +	const struct regmap_config *regmap_config = &tas2505_i2c_regmap;
    +	int ret;
    +
    +	tas2505 = devm_kzalloc(&i2c->dev, sizeof(*tas2505), GFP_KERNEL);
    +	if (tas2505 == NULL)
    +		return -ENOMEM;
    +
    +	tas2505->regmap = devm_regmap_init_i2c(i2c, regmap_config);
    +	if (IS_ERR(tas2505->regmap)) {
    +		ret = PTR_ERR(tas2505->regmap);
    +		dev_err(&i2c->dev, "Failed to allocate register map: %d\n",
    +			ret);
    +		return ret;
    +	}
    +
    +	ret = of_get_named_gpio(np, "gpio-reset", 0);
    +	if ((ret > 0) && gpio_is_valid(ret)) {
    +		devm_gpio_request_one(&i2c->dev, ret, GPIOF_OUT_INIT_HIGH,
    +			"reset");
    +	}
    +
    +	ret = of_property_read_u32(np, "clock-source",
    +			&tas2505->clk_src);
    +
    +	dev_info(&i2c->dev, "%s: clock-source = %s\n", __func__,
    +		tas2505->clk_src?"BCLK":"MCLK");
    +
    +	tas2505->dev = &i2c->dev;
    +
    +	dev_set_drvdata(tas2505->dev, tas2505);
    +
    +	return snd_soc_register_component(&i2c->dev,
    +		&soc_codec_driver_tas2505, tas2505_dai_driver,
    +		ARRAY_SIZE(tas2505_dai_driver));
    +}
    +
    +static void tas2505_i2c_remove(struct i2c_client *i2c)
    +{
    +
    +	snd_soc_unregister_component(&i2c->dev);
    +
    +	//return 0;
    +}
    +
    +static const struct of_device_id tas2505_of_match[] = {
    +	{ .compatible = "ti,tas2505" },
    +	{},
    +};
    +MODULE_DEVICE_TABLE(of, tas2505_of_match);
    +
    +static const struct i2c_device_id tas2505_i2c_id[] = {
    +	{ "tas2505", 0 },
    +	{}
    +};
    +MODULE_DEVICE_TABLE(i2ic, tas2505_i2c_id);
    +
    +static struct i2c_driver tas2505_i2c_driver = {
    +	.driver = {
    +		.name		= "tas2505-codec",
    +		.of_match_table	= of_match_ptr(tas2505_of_match),
    +	},
    +	.probe		= tas2505_i2c_probe,
    +	.remove		= tas2505_i2c_remove,
    +	.id_table	= tas2505_i2c_id,
    +};
    +
    +module_i2c_driver(tas2505_i2c_driver);
    +
    +MODULE_DESCRIPTION("ASoC TAS2505 codec driver");
    +MODULE_AUTHOR("Hieu Tran Dang <dangtranhieu2012@gmail.com>");
    +MODULE_LICENSE("GPL");
    diff --git a/sound/soc/codecs/tas2505.h b/sound/soc/codecs/tas2505.h
    new file mode 100644
    index 000000000000..3e55df45f894
    --- /dev/null
    +++ b/sound/soc/codecs/tas2505.h
    @@ -0,0 +1,104 @@
    +/*
    + * ALSA SoC TAS2505 codec driver
    + *
    + * Author: Hieu Tran Dang <dangtranhieu2012@gmail.com>
    + *
    + * This package is free software; you can redistribute it and/or modify
    + * it under the terms of the GNU General Public License version 2 as
    + * published by the Free Software Foundation.
    + *
    + * THIS PACKAGE IS PROVIDED AS IS AND WITHOUT ANY EXPRESS OR
    + * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
    + * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
    + */
    +
    +#ifndef _TAS2505_H
    +#define _TAS2505_H
    +
    +#define TAS2505_RATES	(SNDRV_PCM_RATE_8000_96000)
    +#define TAS2505_FORMATS (SNDRV_PCM_FMTBIT_S16_LE | \
    +	SNDRV_PCM_FMTBIT_S24_LE | \
    +	SNDRV_PCM_FMTBIT_S32_LE)
    +
    +#define TAS2505_REG(page, reg)	((page * 128) + reg)
    +
    +#define TAS2505_PAGECTL			TAS2505_REG(0, 0)
    +#define TAS2505_RESET			TAS2505_REG(0, 1)
    +#define TAS2505_CLKMUX			TAS2505_REG(0, 4)
    +#define TAS2505_PLLPR			TAS2505_REG(0, 5)
    +#define TAS2505_PLLJ			TAS2505_REG(0, 6)
    +#define TAS2505_PLLDMSB			TAS2505_REG(0, 7)
    +#define TAS2505_PLLDLSB			TAS2505_REG(0, 8)
    +#define TAS2505_NDAC			TAS2505_REG(0, 11)
    +#define TAS2505_MDAC			TAS2505_REG(0, 12)
    +#define TAS2505_DOSRMSB			TAS2505_REG(0, 13)
    +#define TAS2505_DOSRLSB			TAS2505_REG(0, 14)
    +#define TAS2505_IFACE1			TAS2505_REG(0, 27)
    +#define TAS2505_IFACE3			TAS2505_REG(0, 29)
    +#define TAS2505_BCLKNDIV		TAS2505_REG(0, 30)
    +#define TAS2505_DACFLAG1		TAS2505_REG(0, 37)
    +#define TAS2505_DACFLAG2		TAS2505_REG(0, 38)
    +#define TAS2505_STICKYFLAG1		TAS2505_REG(0, 42)
    +#define TAS2505_INTFLAG1		TAS2505_REG(0, 43)
    +#define TAS2505_STICKYFLAG2		TAS2505_REG(0, 44)
    +#define TAS2505_INTFLAG2		TAS2505_REG(0, 46)
    +#define TAS2505_DACINSTRSET		TAS2505_REG(0, 60)
    +#define TAS2505_DACSETUP1		TAS2505_REG(0, 63)
    +#define TAS2505_DACSETUP2		TAS2505_REG(0, 64)
    +#define TAS2505_DACVOL			TAS2505_REG(0, 65)
    +#define TAS2505_REF_POR_LDO_BGAP_CTRL	TAS2505_REG(1, 1)
    +#define TAS2505_LDO_CTRL		TAS2505_REG(1, 2)
    +#define TAS2505_PLAYBACKCONF1		TAS2505_REG(1, 3)
    +#define TAS2505_SPKAMPCTRL1		TAS2505_REG(1, 45)
    +#define TAS2505_SPKVOL1			TAS2505_REG(1, 46)
    +#define TAS2505_SPKVOL2			TAS2505_REG(1, 48)
    +#define TAS2505_DACANLGAINFLAG		TAS2505_REG(1, 63)
    +
    +#define TAS2505_PLLPR_P_MASK				(0x70)
    +#define TAS2505_PLLPR_R_MASK				(0xf)
    +#define TAS2505_PLL_DAC_MASK				(0x7f)
    +#define TAS2505_BCLKNDIV_MASK				(0x7f)
    +#define TAS2505_IFACE1_DATALEN_MASK			(0x30)
    +#define TAS2505_IFACE1_WCLKDIR_MASK			(0x4)
    +#define TAS2505_IFACE1_BCLKDIR_MASK			(0x8)
    +#define TAS2505_IFACE1_INTERFACE_MASK			(0xc0)
    +#define TAS2505_IFACE3_BDIVCLKIN_MASK			(0x1)
    +#define TAS2505_IFACE3_BCLKINV_MASK			(0x8)
    +#define TAS2505_DACSETUP1_PATH_CTRL_MSK			(0x30)
    +#define TAS2505_DACSETUP2_MUTE_MASK			(0x8)
    +#define TAS2505_PM_MASK					(0x80)
    +#define TAS2505_LDO_PLL_HP_LVL_MASK			(0x8)
    +#define TAS2505_REF_POR_LDO_BGAP_MASTER_REF_MASK	(0x10)
    +#define TAS2505_SPKVOL2_MSK				(0x70)
    +#define TAS2505_CODEC_CLKIN_MSK				(0x3)
    +#define TAS2505_PLL_INPUT_CLK_MSK			(0xC)
    +#define TAS2505_SPKAMPCTRL1_SPKDRV_MSK			BIT(1)
    +
    +#define TAS2505_PLLPR_P_SHIFT			(4)
    +#define TAS2505_PLL_CLKIN_SHIFT			(2)
    +#define TAS2505_IFACE1_DATALEN_SHIFT		(4)
    +#define TAS2505_IFACE1_INTERFACE_SHIFT		(6)
    +#define TAS2505_IFACE3_BCLKINV_SHIFT		(4)
    +#define TAS2505_SPKVOL2_6DB_SHIFT		(4)
    +#define TAS2505_DACSETUP1_PATH_CTRL_SHIFT	(4)
    +
    +#define TAS2505_WORD_LEN_20BITS			(1)
    +#define TAS2505_WORD_LEN_24BITS			(2)
    +#define TAS2505_WORD_LEN_32BITS			(3)
    +
    +#define TAS2505_DSP_MODE			(1)
    +#define TAS2505_RJF_MODE			(2)
    +#define TAS2505_LJF_MODE			(3)
    +
    +#define TAS2505_PLL_CLKIN_MCLK			(0)
    +#define TAS2505_PLL_CLKIN_BCLK			(1)
    +#define TAS2505_PLL_CLKIN_GPIO			(2)
    +#define TAS2505_PLL_CLKIN_DIN			(3)
    +#define TAS2505_CODEC_CLKIN_PLL			(3)
    +#define TAS2505_SPKVOL2_MUTE			(0)
    +#define TAS2505_SPKVOL2_6DB			(1)
    +#define TAS2505_DACSETUP1_PATH_CTRL_LRDIV2	(3)
    +#define TAS2505_SPKAMPCTRL1_SPKDRV_PWD		(0)
    +#define TAS2505_SPKAMPCTRL1_SPKDRV_PWU		(1)
    +
    +#endif
    

        (TAS2505 engineer (Kevin Lu) suggusts us to get support for dts of "simple-audio-card" driver and also Pinmuxing)

    2) "Simple-audio-card" driver's dts in this ticket, we follow the reference dts in SDK 9.0.

        Unluckly, we "don't see" the sound card device file is created. Then we cannot do aplay.

    root@am62xx-evm:/dev/snd# ls
    timer
    root@am62xx-evm:/dev/snd# cd ~
    root@am62xx-evm:~# cat /proc/asound/cards
    --- no soundcards ---

        Our kernel log:

        

    U-Boot SPL 2023.04-g24098ea90d (Jul 06 2023 - 12:59:40 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.5--v09.00.05 (Kool Koala)')
    SPL initial stack usage: 13376 bytes
    Trying to boot from MMC2
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Starting ATF on ARM64 core...
    
    NOTICE:  BL31: v2.8(release):v2.8-226-g2fcd408bb3-dirty
    NOTICE:  BL31: Built : 00:42:57, Jan 13 2023
    
    U-Boot SPL 2023.04-g24098ea90d (Jul 06 2023 - 12:59:40 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.5--v09.00.05 (Kool Koala)')
    SPL initial stack usage: 1856 bytes
    Trying to boot from MMC2
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    
    
    U-Boot 2023.04-g24098ea90d (Jul 06 2023 - 12:59:40 +0000)
    
    SoC:   AM62X SR1.0 GP
    Model: Texas Instruments AM625 SK
    EEPROM not available at 80, trying to read at 81
    Reading on-board EEPROM at 0x51 failed -1
    DRAM:  2 GiB
    Core:  70 devices, 31 uclasses, devicetree: separate
    MMC:   mmc@fa10000: 0, mmc@fa00000: 1
    Loading Environment from nowhere... OK
    In:    serial
    Out:   serial
    Err:   serial
    EEPROM not available at 80, trying to read at 81
    Reading on-board EEPROM at 0x51 failed -1
    Net:   eth0: ethernet@8000000port@1
    Hit any key to stop autoboot:  0
    switch to partitions #0, OK
    mmc1 is current device
    SD/MMC found on device 1
    Failed to load 'boot.scr'
    574 bytes read in 17 ms (32.2 KiB/s)
    Loaded env from uEnv.txt
    Importing environment from mmc1 ...
    ## Error: "main_cpsw0_qsgmii_phyinit" not defined
    20513280 bytes read in 836 ms (23.4 MiB/s)
    58488 bytes read in 21 ms (2.7 MiB/s)
    Working FDT set to 88000000
    ## Flattened Device Tree blob at 88000000
       Booting using the fdt blob at 0x88000000
    Working FDT set to 88000000
    ERROR: reserving fdt memory region failed (addr=ff700000 size=8ca000 flags=4)
       Loading Device Tree to 000000008feee000, end 000000008fffffff ... OK
    Working FDT set to 8feee000
    
    Starting kernel ...
    
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
    [    0.000000] Linux version 6.1.33-g40c32565ca (oe-user@oe-host) (aarch64-oe-linux-gcc (GCC) 11.3.0, GNU ld (GNU Binutils) 2.38.20220708) #1 SMP PREEMPT Thu Jul  6 14:17:24 UTC 2023
    [    0.000000] Machine model: Texas Instruments AM625 SK
    [    0.000000] earlycon: ns16550a0 at MMIO32 0x0000000002800000 (options '')
    [    0.000000] printk: bootconsole [ns16550a0] enabled
    [    0.000000] efi: UEFI not found.
    [    0.000000] Reserved memory: created CMA memory pool at 0x00000000f7600000, size 128 MiB
    [    0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009c800000, size 3 MiB
    [    0.000000] OF: reserved mem: initialized node ipc-memories@9c800000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009cb00000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node m4f-dma-memory@9cb00000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009cc00000, size 14 MiB
    [    0.000000] OF: reserved mem: initialized node m4f-memory@9cc00000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009da00000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-dma-memory@9da00000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009db00000, size 12 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-memory@9db00000, compatible id shared-dma-pool
    [    0.000000] Zone ranges:
    [    0.000000]   DMA      [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000]   DMA32    empty
    [    0.000000]   Normal   empty
    [    0.000000] Movable zone start for each node
    [    0.000000] Early memory node ranges
    [    0.000000]   node   0: [mem 0x0000000080000000-0x000000009c7fffff]
    [    0.000000]   node   0: [mem 0x000000009c800000-0x000000009e6fffff]
    [    0.000000]   node   0: [mem 0x000000009e700000-0x000000009e77ffff]
    [    0.000000]   node   0: [mem 0x000000009e780000-0x000000009fffffff]
    [    0.000000]   node   0: [mem 0x00000000a0000000-0x00000000ff6fffff]
    [    0.000000]   node   0: [mem 0x00000000ff700000-0x00000000fffc9fff]
    [    0.000000]   node   0: [mem 0x00000000fffca000-0x00000000ffffffff]
    [    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000] psci: probing for conduit method from DT.
    [    0.000000] psci: PSCIv1.1 detected in firmware.
    [    0.000000] psci: Using standard PSCI v0.2 function IDs
    [    0.000000] psci: Trusted OS migration not required
    [    0.000000] psci: SMC Calling Convention v1.2
    [    0.000000] percpu: Embedded 19 pages/cpu s38376 r8192 d31256 u77824
    [    0.000000] Detected VIPT I-cache on CPU0
    [    0.000000] CPU features: detected: GIC system register CPU interface
    [    0.000000] CPU features: detected: ARM erratum 845719
    [    0.000000] alternatives: applying boot alternatives
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 516096
    [    0.000000] Kernel command line: console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000 mtdparts=spi-nand0:512k(ospi.tiboot3),2m(ospi.tispl),4m(ospi.u-boot),256k(ospi.env),256k(ospi.env.backup),98048k@32m(ospi.rootfs),256k@130816k(ospi.phypattern);omap2-nand.0:2m(NAND.tiboot3),2m(NAND.tispl),2m(NAND.tiboot3.backup),4m(NAND.u-boot),256k(NAND.u-boot-env),256k(NAND.u-boot-env.backup),-(NAND.file-system) root=PARTUUID=0fbb14c3-02 rw rootfstype=ext4 rootwait
    [    0.000000] Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
    [    0.000000] Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
    [    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] Memory: 1838156K/2097152K available (12416K kernel code, 1280K rwdata, 4056K rodata, 2176K init, 493K bss, 127924K reserved, 131072K cma-reserved)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
    [    0.000000] rcu: Preemptible hierarchical RCU implementation.
    [    0.000000] rcu:     RCU event tracing is enabled.
    [    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=4.
    [    0.000000]  Trampoline variant of Tasks RCU enabled.
    [    0.000000]  Tracing variant of Tasks RCU enabled.
    [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
    [    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4
    [    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
    [    0.000000] GICv3: GIC: Using split EOI/Deactivate mode
    [    0.000000] GICv3: 256 SPIs implemented
    [    0.000000] GICv3: 0 Extended SPIs implemented
    [    0.000000] Root IRQ handler: gic_handle_irq
    [    0.000000] GICv3: GICv3 features: 16 PPIs
    [    0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001880000
    [    0.000000] ITS [mem 0x01820000-0x0182ffff]
    [    0.000000] GIC: enabling workaround for ITS: Socionext Synquacer pre-ITS
    [    0.000000] ITS@0x0000000001820000: Devices Table too large, reduce ids 20->19
    [    0.000000] ITS@0x0000000001820000: allocated 524288 Devices @80800000 (flat, esz 8, psz 64K, shr 0)
    [    0.000000] ITS: using cache flushing for cmd queue
    [    0.000000] GICv3: using LPI property table @0x0000000080040000
    [    0.000000] GIC: using cache flushing for LPI property table
    [    0.000000] GICv3: CPU0: using allocated LPI pending table @0x0000000080050000
    [    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
    [    0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys).
    [    0.000000] clocksource: arch_sys_counter: mask: 0x3ffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
    [    0.000001] sched_clock: 58 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
    [    0.008603] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=800000)
    [    0.019290] pid_max: default: 32768 minimum: 301
    [    0.024078] LSM: Security Framework initializing
    [    0.028966] Mount-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
    [    0.036559] Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
    [    0.046738] cblist_init_generic: Setting adjustable number of callback queues.
    [    0.054213] cblist_init_generic: Setting shift to 2 and lim to 1.
    [    0.060524] cblist_init_generic: Setting shift to 2 and lim to 1.
    [    0.066949] rcu: Hierarchical SRCU implementation.
    [    0.071860] rcu:     Max phase no-delay instances is 1000.
    [    0.077525] Platform MSI: msi-controller@1820000 domain created
    [    0.083892] PCI/MSI: /bus@f0000/interrupt-controller@1800000/msi-controller@1820000 domain created
    [    0.093799] EFI services will not be available.
    [    0.098786] smp: Bringing up secondary CPUs ...
    [    0.104188] Detected VIPT I-cache on CPU1
    [    0.104329] GICv3: CPU1: found redistributor 1 region 0:0x00000000018a0000
    [    0.104347] GICv3: CPU1: using allocated LPI pending table @0x0000000080060000
    [    0.104418] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
    [    0.105268] Detected VIPT I-cache on CPU2
    [    0.105354] GICv3: CPU2: found redistributor 2 region 0:0x00000000018c0000
    [    0.105377] GICv3: CPU2: using allocated LPI pending table @0x0000000080070000
    [    0.105419] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
    [    0.106160] Detected VIPT I-cache on CPU3
    [    0.106262] GICv3: CPU3: found redistributor 3 region 0:0x00000000018e0000
    [    0.106275] GICv3: CPU3: using allocated LPI pending table @0x0000000080080000
    [    0.106314] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
    [    0.106401] smp: Brought up 1 node, 4 CPUs
    [    0.186139] SMP: Total of 4 processors activated.
    [    0.190952] CPU features: detected: 32-bit EL0 Support
    [    0.196223] CPU features: detected: CRC32 instructions
    [    0.201559] CPU: All CPU(s) started at EL2
    [    0.205760] alternatives: applying system-wide alternatives
    [    0.213751] devtmpfs: initialized
    [    0.226837] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
    [    0.236866] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
    [    0.249515] pinctrl core: initialized pinctrl subsystem
    [    0.255669] DMI not present or invalid.
    [    0.260357] NET: Registered PF_NETLINK/PF_ROUTE protocol family
    [    0.267809] DMA: preallocated 256 KiB GFP_KERNEL pool for atomic allocations
    [    0.275442] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
    [    0.283582] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
    [    0.291789] audit: initializing netlink subsys (disabled)
    [    0.297526] audit: type=2000 audit(0.188:1): state=initialized audit_enabled=0 res=1
    [    0.298040] thermal_sys: Registered thermal governor 'step_wise'
    [    0.305460] thermal_sys: Registered thermal governor 'power_allocator'
    [    0.311661] cpuidle: using governor menu
    [    0.322567] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
    [    0.329614] ASID allocator initialised with 65536 entries
    [    0.349907] platform 30200000.dss: Fixed dependency cycle(s) with /display
    [    0.359754] KASLR disabled due to lack of seed
    [    0.371974] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages
    [    0.378960] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page
    [    0.385370] HugeTLB: registered 32.0 MiB page size, pre-allocated 0 pages
    [    0.392310] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page
    [    0.398719] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
    [    0.405658] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
    [    0.412066] HugeTLB: registered 64.0 KiB page size, pre-allocated 0 pages
    [    0.419005] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page
    [    0.427503] k3-chipinfo 43000014.chipid: Family:AM62X rev:SR1.0 JTAGID[0x0bb7e02f] Detected
    [    0.438304] iommu: Default domain type: Translated
    [    0.443362] iommu: DMA domain TLB invalidation policy: strict mode
    [    0.450127] SCSI subsystem initialized
    [    0.454455] usbcore: registered new interface driver usbfs
    [    0.460119] usbcore: registered new interface driver hub
    [    0.465603] usbcore: registered new device driver usb
    [    0.471473] pps_core: LinuxPPS API ver. 1 registered
    [    0.476553] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.485910] PTP clock support registered
    [    0.490075] EDAC MC: Ver: 3.0.0
    [    0.494427] omap-mailbox 29000000.mailbox: omap mailbox rev 0x66fc9100
    [    0.501681] FPGA manager framework
    [    0.505296] Advanced Linux Sound Architecture Driver Initialized.
    [    0.512687] clocksource: Switched to clocksource arch_sys_counter
    [    0.519249] VFS: Disk quotas dquot_6.6.0
    [    0.523310] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
    [    0.531670] NET: Registered PF_INET protocol family
    [    0.536943] IP idents hash table entries: 32768 (order: 6, 262144 bytes, linear)
    [    0.546314] tcp_listen_portaddr_hash hash table entries: 1024 (order: 2, 16384 bytes, linear)
    [    0.555145] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
    [    0.563093] TCP established hash table entries: 16384 (order: 5, 131072 bytes, linear)
    [    0.571316] TCP bind hash table entries: 16384 (order: 7, 524288 bytes, linear)
    [    0.579446] TCP: Hash tables configured (established 16384 bind 16384)
    [    0.586416] UDP hash table entries: 1024 (order: 3, 32768 bytes, linear)
    [    0.593361] UDP-Lite hash table entries: 1024 (order: 3, 32768 bytes, linear)
    [    0.600963] NET: Registered PF_UNIX/PF_LOCAL protocol family
    [    0.607366] RPC: Registered named UNIX socket transport module.
    [    0.613455] RPC: Registered udp transport module.
    [    0.618267] RPC: Registered tcp transport module.
    [    0.623075] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.629668] NET: Registered PF_XDP protocol family
    [    0.634590] PCI: CLS 0 bytes, default 64
    [    0.639549] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 counters available
    [    0.650042] Initialise system trusted keyrings
    [    0.654931] workingset: timestamp_bits=46 max_order=19 bucket_order=0
    [    0.668035] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    0.674881] NFS: Registering the id_resolver key type
    [    0.680140] Key type id_resolver registered
    [    0.684418] Key type id_legacy registered
    [    0.688590] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    0.695456] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
    [    0.703265] 9p: Installing v9fs 9p2000 file system support
    [    0.744046] Key type asymmetric registered
    [    0.748237] Asymmetric key parser 'x509' registered
    [    0.753305] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
    [    0.761074] io scheduler mq-deadline registered
    [    0.765716] io scheduler kyber registered
    [    0.773723] pinctrl-single 4084000.pinctrl: 34 pins, size 136
    [    0.780565] pinctrl-single f4000.pinctrl: 171 pins, size 684
    [    0.787497] pinctrl-single a40000.pinctrl: 512 pins, size 2048
    [    0.802456] Serial: 8250/16550 driver, 12 ports, IRQ sharing enabled
    [    0.820446] loop: module loaded
    [    0.825352] megasas: 07.719.03.00-rc1
    [    0.834150] tun: Universal TUN/TAP device driver, 1.6
    [    0.840232] thunder_xcv, ver 1.0
    [    0.843597] thunder_bgx, ver 1.0
    [    0.846931] nicpf, ver 1.0
    [    0.850175] hns3: Hisilicon Ethernet Network Driver for Hip08 Family - version
    [    0.857574] hns3: Copyright (c) 2017 Huawei Corporation.
    [    0.863084] hclge is initializing
    [    0.866500] e1000: Intel(R) PRO/1000 Network Driver
    [    0.871486] e1000: Copyright (c) 1999-2006 Intel Corporation.
    [    0.877400] e1000e: Intel(R) PRO/1000 Network Driver
    [    0.882475] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
    [    0.888559] igb: Intel(R) Gigabit Ethernet Network Driver
    [    0.894079] igb: Copyright (c) 2007-2014 Intel Corporation.
    [    0.899811] igbvf: Intel(R) Gigabit Virtual Function Network Driver
    [    0.906218] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
    [    0.912442] sky2: driver version 1.30
    [    0.917032] VFIO - User Level meta-driver version: 0.3
    [    0.923271] usbcore: registered new interface driver usb-storage
    [    0.930197] i2c_dev: i2c /dev entries driver
    [    0.937129] sdhci: Secure Digital Host Controller Interface driver
    [    0.943484] sdhci: Copyright(c) Pierre Ossman
    [    0.948520] Synopsys Designware Multimedia Card Interface Driver
    [    0.955185] sdhci-pltfm: SDHCI platform and OF driver helper
    [    0.962041] ledtrig-cpu: registered to indicate activity on CPUs
    [    0.968427] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
    [    0.975478] usbcore: registered new interface driver usbhid
    [    0.981189] usbhid: USB HID core driver
    [    0.986667] optee: probing for conduit method.
    [    0.991286] optee: revision 3.20 (8e74d476)
    [    0.991683] optee: dynamic shared memory is enabled
    [    1.001271] optee: initialized driver
    [    1.008060] Initializing XFRM netlink socket
    [    1.012522] NET: Registered PF_PACKET protocol family
    [    1.017986] 9pnet: Installing 9P2000 support
    [    1.022451] Key type dns_resolver registered
    [    1.027358] registered taskstats version 1
    [    1.031603] Loading compiled-in X.509 certificates
    [    1.046465] ti-sci 44043000.system-controller: ABI: 3.1 (firmware rev 0x0009 '9.0.5--v09.00.05 (Kool Koala)')
    [    1.122670] at24 0-0051: supply vcc not found, using dummy regulator
    [    1.152863] at24 0-0051: 65536 byte 24c512 EEPROM, writable, 64 bytes/write
    [    1.160390] omap_i2c 20000000.i2c: bus 0 rev0.12 at 400 kHz
    [    1.168176] tas2505-codec 1-0018: tas2505_i2c_probe: clock-source = MCLK
    [    1.175447] omap_i2c 20010000.i2c: bus 1 rev0.12 at 100 kHz
    [    1.181602] ti-sci-intr 4210000.interrupt-controller: Interrupt Router 5 domain created
    [    1.189982] ti-sci-intr bus@f0000:interrupt-controller@a00000: Interrupt Router 3 domain created
    [    1.199275] ti-sci-inta 48000000.interrupt-controller: Interrupt Aggregator domain 28 created
    [    1.209542] ti-udma 485c0100.dma-controller: Number of rings: 82
    [    1.218122] ti-udma 485c0100.dma-controller: Channels: 48 (bchan: 18, tchan: 12, rchan: 18)
    [    1.229743] ti-udma 485c0000.dma-controller: Number of rings: 150
    [    1.240255] ti-udma 485c0000.dma-controller: Channels: 35 (tchan: 20, rchan: 15)
    [    1.250982] printk: console [ttyS2] disabled
    [    1.255520] 2800000.serial: ttyS2 at MMIO 0x2800000 (irq = 240, base_baud = 3000000) is a 8250
    [    1.264437] printk: console [ttyS2] enabled
    [    1.264437] printk: console [ttyS2] enabled
    [    1.272897] printk: bootconsole [ns16550a0] disabled
    [    1.272897] printk: bootconsole [ns16550a0] disabled
    [    1.284083] omap8250 2840000.serial: PM domain pd:155 will not be powered off
    [    1.291584] 2840000.serial: ttyS4 at MMIO 0x2840000 (irq = 242, base_baud = 3000000) is a 8250
    [    1.301710] 2860000.serial: ttyS6 at MMIO 0x2860000 (irq = 243, base_baud = 3000000) is a 8250
    [    1.313594] spi-nor spi0.0: s28hs512t (65536 Kbytes)
    [    1.318703] 7 fixed-partitions partitions found on MTD device fc40000.spi.0
    [    1.325663] Creating 7 MTD partitions on "fc40000.spi.0":
    [    1.331057] 0x000000000000-0x000000080000 : "ospi.tiboot3"
    [    1.338000] 0x000000080000-0x000000280000 : "ospi.tispl"
    [    1.344637] 0x000000280000-0x000000680000 : "ospi.u-boot"
    [    1.351337] 0x000000680000-0x0000006c0000 : "ospi.env"
    [    1.357753] 0x0000006c0000-0x000000700000 : "ospi.env.backup"
    [    1.364777] 0x000000800000-0x000003fc0000 : "ospi.rootfs"
    [    1.371494] 0x000003fc0000-0x000004000000 : "ospi.phypattern"
    [    1.380348] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    1.424711] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    1.434117] mdio_bus 8000f00.mdio: MDIO device at address 1 is missing.
    [    1.440747] davinci_mdio 8000f00.mdio: phy[0]: device 8000f00.mdio:00, driver TI DP83867
    [    1.448871] am65-cpsw-nuss 8000000.ethernet: initializing am65 cpsw nuss version 0x6BA01103, cpsw version 0x6BA81103 Ports: 3 quirks:00000006
    [    1.461875] am65-cpsw-nuss 8000000.ethernet: Use random MAC address
    [    1.468150] am65-cpsw-nuss 8000000.ethernet: initialized cpsw ale version 1.5
    [    1.475276] am65-cpsw-nuss 8000000.ethernet: ALE Table size 512
    [    1.481889] pps pps0: new PPS source ptp0
    [    1.486241] am65-cpsw-nuss 8000000.ethernet: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 pps:1
    [    1.497008] am65-cpsw-nuss 8000000.ethernet: set new flow-id-base 19
    [    1.509445] mmc0: CQHCI version 5.10
    [    1.514975] omap8250 2840000.serial: Failed to create device link (0x180) with 4201000.gpio
    [    1.530521] Goodix-TS 0-0014: supply AVDD28 not found, using dummy regulator
    [    1.537766] Goodix-TS 0-0014: supply VDDIO not found, using dummy regulator
    [    1.554564] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit
    [    1.620863] mmc0: Command Queue Engine enabled
    [    1.625363] mmc0: new HS200 MMC card at address 0001
    [    1.631677] mmcblk0: mmc0:0001 0IM20E 29.6 GiB
    [    1.639328] mmcblk0boot0: mmc0:0001 0IM20E 31.5 MiB
    [    1.645220] Goodix-TS 0-0014: ID 911, version: 1060
    [    1.645950] mmcblk0boot1: mmc0:0001 0IM20E 31.5 MiB
    [    1.650329] Goodix-TS 0-0014: Direct firmware load for goodix_911_cfg.bin failed with error -2
    [    1.656284] mmcblk0rpmb: mmc0:0001 0IM20E 4.00 MiB, chardev (240:0)
    [    1.668186] Goodix-TS 0-0014: Invalid config (799, 479, 0), using defaults
    [    1.677077] pca953x 1-0022: supply vcc not found, using dummy regulator
    [    1.677111] input: Goodix Capacitive TouchScreen as /devices/platform/bus@f0000/20000000.i2c/i2c-0/0-0014/input/input0
    [    1.683907] pca953x 1-0022: using AI
    [    1.720837] pca953x 1-0022: failed writing register
    [    1.726026] pca953x: probe of 1-0022 failed with error -121
    [    1.734495] mmc1: CQHCI version 5.10
    [    1.734796] tas2505-codec 1-0018: tas2505_codec_probe: Probe finished
    [    1.744804] tas2505-codec 1-0018: tas2505_set_dai_sysclk: clk_id: 0, freq: 12288000
    [    1.756014] asoc-simple-card sound: ASoC: no source widget found for HPLOUT
    [    1.763011] asoc-simple-card sound: ASoC: Failed to add route HPLOUT -> direct -> Headphone Jack
    [    1.771793] asoc-simple-card sound: ASoC: no source widget found for HPROUT
    [    1.775378] mmc1: SDHCI controller on fa00000.mmc [fa00000.mmc] using ADMA 64-bit
    [    1.778748] asoc-simple-card sound: ASoC: Failed to add route HPROUT -> direct -> Headphone Jack
    [    1.778755] asoc-simple-card sound: ASoC: no sink widget found for LINE1L
    [    1.778760] asoc-simple-card sound: ASoC: Failed to add route Line In -> direct -> LINE1L
    [    1.809937] asoc-simple-card sound: ASoC: no sink widget found for LINE1R
    [    1.816724] asoc-simple-card sound: ASoC: Failed to add route Line In -> direct -> LINE1R
    [    1.824890] asoc-simple-card sound: ASoC: no sink widget found for MIC3R
    [    1.824959] mmc1: new high speed SDHC card at address aaaa
    [    1.831588] asoc-simple-card sound: ASoC: Failed to add route Microphone Jack -> direct -> MIC3R
    [    1.831596] asoc-simple-card sound: ASoC: no source widget found for Mic Bias
    [    1.838025] mmcblk1: mmc1:aaaa SC16G 14.8 GiB
    [    1.845865] asoc-simple-card sound: ASoC: Failed to add route Mic Bias -> direct -> Microphone Jack
    [    1.859847]  mmcblk1: p1 p2
    [    1.868260] debugfs: Directory 'pd:182' with parent 'pm_genpd' already present!
    [    1.891232] ALSA device list:
    [    1.894250]   No soundcards found.
    [    1.951935] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Quota mode: none.
    [    1.960645] VFS: Mounted root (ext4 filesystem) on device 179:98.
    [    1.971245] devtmpfs: mounted
    [    1.975935] Freeing unused kernel memory: 2176K
    [    1.980706] Run /sbin/init as init process
    [    3.423957] systemd[1]: System time before build time, advancing clock.
    [    3.700615] NET: Registered PF_INET6 protocol family
    [    3.708474] Segment Routing with IPv6
    [    3.712268] In-situ OAM (IOAM) with IPv6
    [    3.869072] systemd[1]: systemd 250.5+ running in system mode (+PAM -AUDIT -SELINUX -APPARMOR +IMA -SMACK +SECCOMP -GCRYPT -GNUTLS -OPENSSL +ACL +BLKID -CURL -ELFUTILS -FIDO2 -IDN2 -IDN -IPTC +KMOD -LIBCRYPTSETUP +LIBFDISK -PCRE2 -PWQUALITY -P11KIT -QRENCODE -BZIP2 -LZ4 -XZ -ZLIB +ZSTD -BPF_FRAMEWORK +XKBCOMMON +UTMP +SYSVINIT default-hierarchy=hybrid)
    [    3.902513] systemd[1]: Detected architecture arm64.
    
    Welcome to Arago 2023.04!
    
    [    4.034870] systemd[1]: Hostname set to <am62xx-evm>.
    [    4.085313] systemd[1]: Initializing machine ID from random generator.
    [    4.469357] systemd-sysv-generator[156]: SysV service '/etc/init.d/reboot' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.498546] systemd-sysv-generator[156]: SysV service '/etc/init.d/single' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.522723] systemd-sysv-generator[156]: SysV service '/etc/init.d/dropbear' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.547214] systemd-sysv-generator[156]: SysV service '/etc/init.d/docker.init' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.574239] systemd-sysv-generator[156]: SysV service '/etc/init.d/psplash.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.598657] systemd-sysv-generator[156]: SysV service '/etc/init.d/save-rtc.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.624246] systemd-sysv-generator[156]: SysV service '/etc/init.d/inetd.busybox' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.649355] systemd-sysv-generator[156]: SysV service '/etc/init.d/thermal-zone-init' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.674316] systemd-sysv-generator[156]: SysV service '/etc/init.d/umountfs' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.700355] systemd-sysv-generator[156]: SysV service '/etc/init.d/netopeer2-server' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.726527] systemd-sysv-generator[156]: SysV service '/etc/init.d/umountnfs.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.751240] systemd-sysv-generator[156]: SysV service '/etc/init.d/telnetd' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.776979] systemd-sysv-generator[156]: SysV service '/etc/init.d/netperf' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.803132] systemd-sysv-generator[156]: SysV service '/etc/init.d/halt' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.828905] systemd-sysv-generator[156]: SysV service '/etc/init.d/sysrepo' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.874355] systemd-sysv-generator[156]: SysV service '/etc/init.d/resize_rootfs.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.900115] systemd-sysv-generator[156]: SysV service '/etc/init.d/sendsigs' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    5.587426] systemd[1]: Configuration file /etc/systemd/system/ti-apps-launcher.service is marked executable. Please remove executable permission bits. Proceeding anyway.
    [    5.708961] systemd[1]: /lib/systemd/system/startwlansta.service:7: Unknown key name 'After' in section 'Service', ignoring.
    [    5.725660] systemd[1]: /lib/systemd/system/startwlanap.service:7: Unknown key name 'After' in section 'Service', ignoring.
    [    5.799695] systemd[1]: /lib/systemd/system/bt-enable.service:9: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
    [    5.905805] systemd[1]: /etc/systemd/system/sync-clocks.service:11: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
    [    6.050446] systemd[1]: Queued start job for default target Graphical Interface.
    [    6.145605] systemd[1]: Created slice Slice /system/getty.
    [  OK  ] Created slice Slice /system/getty.
    [    6.172649] systemd[1]: Created slice Slice /system/modprobe.
    [  OK  ] Created slice Slice /system/modprobe.
    [    6.197266] systemd[1]: Created slice Slice /system/serial-getty.
    [  OK  ] Created slice Slice /system/serial-getty.
    [    6.224021] systemd[1]: Created slice User and Session Slice.
    [  OK  ] Created slice User and Session Slice.
    [    6.245459] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
    [  OK  ] Started Dispatch Password …ts to Console Directory Watch.
    [    6.269323] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    [  OK  ] Started Forward Password R…uests to Wall Directory Watch.
    [    6.293642] systemd[1]: Reached target Path Units.
    [  OK  ] Reached target Path Units.
    [    6.309177] systemd[1]: Reached target Remote File Systems.
    [  OK  ] Reached target Remote File Systems.
    [    6.329003] systemd[1]: Reached target Slice Units.
    [  OK  ] Reached target Slice Units.
    [    6.345169] systemd[1]: Reached target Swaps.
    [  OK  ] Reached target Swaps.
    [    6.455434] systemd[1]: Listening on RPCbind Server Activation Socket.
    [  OK  ] Listening on RPCbind Server Activation Socket.
    [    6.477449] systemd[1]: Reached target RPC Port Mapper.
    [  OK  ] Reached target RPC Port Mapper.
    [    6.522640] systemd[1]: Listening on Process Core Dump Socket.
    [  OK  ] Listening on Process Core Dump Socket.
    [    6.545978] systemd[1]: Listening on initctl Compatibility Named Pipe.
    [  OK  ] Listening on initctl Compatibility Named Pipe.
    [    6.573221] systemd[1]: Listening on Journal Audit Socket.
    [  OK  ] Listening on Journal Audit Socket.
    [    6.598509] systemd[1]: Listening on Journal Socket (/dev/log).
    [  OK  ] Listening on Journal Socket (/dev/log).
    [    6.622881] systemd[1]: Listening on Journal Socket.
    [  OK  ] Listening on Journal Socket.
    [    6.641081] systemd[1]: Listening on Network Service Netlink Socket.
    [  OK  ] Listening on Network Service Netlink Socket.
    [    6.668124] systemd[1]: Listening on udev Control Socket.
    [  OK  ] Listening on udev Control Socket.
    [    6.691227] systemd[1]: Listening on udev Kernel Socket.
    [  OK  ] Listening on udev Kernel Socket.
    [    6.715468] systemd[1]: Listening on User Database Manager Socket.
    [  OK  ] Listening on User Database Manager Socket.
    [    6.777477] systemd[1]: Mounting Huge Pages File System...
             Mounting Huge Pages File System...
    [    6.801942] systemd[1]: Mounting POSIX Message Queue File System...
             Mounting POSIX Message Queue File System...
    [    6.849717] systemd[1]: Mounting Kernel Debug File System...
             Mounting Kernel Debug File System...
    [    6.866264] systemd[1]: Kernel Trace File System was skipped because of a failed condition check (ConditionPathExists=/sys/kernel/tracing).
    [    6.894202] systemd[1]: Mounting Temporary Directory /tmp...
             Mounting Temporary Directory /tmp...
    [    6.918221] systemd[1]: Starting Create List of Static Device Nodes...
             Starting Create List of Static Device Nodes...
    [    6.949268] systemd[1]: Starting Load Kernel Module configfs...
             Starting Load Kernel Module configfs...
    [    6.973241] systemd[1]: Starting Load Kernel Module drm...
             Starting Load Kernel Module drm...
    [    6.997765] systemd[1]: Starting Load Kernel Module fuse...
             Starting Load Kernel Module fuse...
    [    7.286353] fuse: init (API version 7.37)
    [    7.310155] systemd[1]: Starting Start psplash boot splash screen...
             Starting Start psplash boot splash screen...
    [    7.353611] systemd[1]: Starting RPC Bind...
             Starting RPC Bind...
    [    7.369662] systemd[1]: File System Check on Root Device was skipped because of a failed condition check (ConditionPathIsReadWrite=!/).
    [    7.397090] systemd[1]: Starting Journal Service...
             Starting Journal Service...
    [    7.530552] systemd[1]: Starting Load Kernel Modules...
             Starting Load Kernel Modules...
    [    7.558867] systemd[1]: Starting Generate network units from Kernel command line...
             Starting Generate network …ts from Kernel command line...
    [    7.618405] cryptodev: loading out-of-tree module taints kernel.
    [    7.634394] systemd[1]: Starting Remount Root and Kernel File Systems...
    [    7.637368] cryptodev: driver 1.12 loaded.
             Starting Remount Root and Kernel File Systems...
    [    7.678115] systemd[1]: Starting Coldplug All udev Devices...
             Starting Coldplug All udev Devices...
    [    7.687809] EXT4-fs (mmcblk1p2): re-mounted. Quota mode: none.
    [    7.710365] systemd[1]: Started RPC Bind.
    [  OK  ] Started RPC Bind.
    [    7.730047] systemd[1]: Mounted Huge Pages File System.
    [  OK  ] Mounted Huge Pages File System.
    [    7.753882] systemd[1]: Mounted POSIX Message Queue File System.
    [  OK  ] Mounted POSIX Message Queue File System.
    [    7.777815] systemd[1]: Mounted Kernel Debug File System.
    [  OK  ] Mounted Kernel Debug File System.
    [    7.805879] systemd[1]: Mounted Temporary Directory /tmp.
    [  OK  ] Mounted Temporary Directory /tmp.
    [    7.829826] systemd[1]: Started Journal Service.
    [  OK  ] Started Journal Service.
    [  OK  ] Finished Create List of Static Device Nodes.
    [  OK  ] Finished Load Kernel Module configfs.
    [  OK  ] Finished Load Kernel Module drm.
    [  OK  ] Finished Load Kernel Module fuse.
    [FAILED] Failed to start Start psplash boot splash screen.
    See 'systemctl status psplash-start.service' for details.
    [DEPEND] Dependency failed for Star…progress communication helper.
    [  OK  ] Finished Load Kernel Modules.
    [  OK  ] Finished Generate network units from Kernel command line.
    [  OK  ] Finished Remount Root and Kernel File Systems.
             Mounting FUSE Control File System...
             Mounting Kernel Configuration File System...
             Starting Flush Journal to Persistent Storage...
    [    8.160187] systemd-journald[173]: Received client request to flush runtime journal.
             Starting Apply Kernel Variables...
             Starting Create System Users...
    [  OK  ] Mounted FUSE Control File System.
    [  OK  ] Mounted Kernel Configuration File System.
    [  OK  ] Finished Flush Journal to Persistent Storage.
    [  OK  ] Finished Apply Kernel Variables.
    [  OK  ] Finished Create System Users.
             Starting Create Static Device Nodes in /dev...
    [  OK  ] Finished Create Static Device Nodes in /dev.
    [  OK  ] Reached target Preparation for Local File Systems.
             Mounting /media/ram...
             Mounting /var/volatile...
    [    8.543314] audit: type=1334 audit(1651167750.132:2): prog-id=5 op=LOAD
    [    8.550322] audit: type=1334 audit(1651167750.140:3): prog-id=6 op=LOAD
             Starting Rule-based Manage…for Device Events and Files...
    [  OK  ] Finished Coldplug All udev Devices.
    [  OK  ] Mounted /media/ram.
    [  OK  ] Mounted /var/volatile.
             Starting Load/Save Random Seed...
    [  OK  ] Reached target Local File Systems.
             Starting Rebuild Dynamic Linker Cache...
             Starting Create Volatile Files and Directories...
    [  OK  ] Finished Create Volatile Files and Directories.
             Starting Rebuild Journal Catalog...
             Starting Network Time Synchronization...
             Starting Record System Boot/Shutdown in UTMP...
    [  OK  ] Finished Record System Boot/Shutdown in UTMP.
    [  OK  ] Finished Rebuild Journal Catalog.
    [  OK  ] Started Rule-based Manager for Device Events and Files.
    [  OK  ] Started Network Time Synchronization.
    [  OK  ] Reached target System Time Set.
    [    9.760747] random: crng init done
    [  OK  ] Found device /dev/ttyS2.
    [    9.843672] pwm-backlight backlight: supply power not found, using dummy regulator
    [    9.844016] rtc rtc0: Unknown quartz-load-femtofarads value: 1250. Assuming 12500
    [    9.859302] rtc-pcf8523 1-0068: failed to set xtal load capacitance: -121
    [    9.866614] rtc-pcf8523: probe of 1-0068 failed with error -121
    [    9.970116] panel-simple display: supply power not found, using dummy regulator
    [    9.978288] panel-simple display: Specify missing bus_flags
    [   10.140517] rtc-ti-k3 2b1f0000.rtc: registered as rtc0
    [   10.146242] rtc-ti-k3 2b1f0000.rtc: setting system clock to 1970-01-01T00:00:16 UTC (16)
    [   10.157687] systemd-journald[173]: Time jumped backwards, rotating.
    [   10.201988] k3-m4-rproc 5000000.m4fss: assigned reserved memory node m4f-dma-memory@9cb00000
    [   10.211012] k3-m4-rproc 5000000.m4fss: configured M4 for remoteproc mode
    [   10.218061] k3-m4-rproc 5000000.m4fss: local reset is deasserted for device
    [   10.226001] remoteproc remoteproc0: 5000000.m4fss is available
    [  OK  ] Finished Load/Save Random Seed.
    [   10.298501] mc: Linux media interface: v0.10
    [   10.304988] CAN device driver interface
    [   10.715374] platform 78000000.r5f: R5F core may have been powered on by a different host, programmed state (0) != actual state (1)
    [   10.728218] platform 78000000.r5f: configured R5F for IPC-only mode
    [   10.735299] platform 78000000.r5f: assigned reserved memory node r5f-dma-memory@9da00000
    [   10.745193] remoteproc remoteproc1: 78000000.r5f is available
    [   10.751306] remoteproc remoteproc1: attaching to 78000000.r5f
    [   10.758822] platform 78000000.r5f: R5F core initialized in IPC-only mode
    [   10.765742] rproc-virtio rproc-virtio.1.auto: assigned reserved memory node r5f-dma-memory@9da00000
    [   10.780231] virtio_rpmsg_bus virtio0: rpmsg host is online
    [   10.782425] virtio_rpmsg_bus virtio0: creating channel ti.ipc4.ping-pong addr 0xd
    [   10.783724] videodev: Linux video capture interface: v2.00
    [   10.785981] rproc-virtio rproc-virtio.1.auto: registered virtio0 (type 7)
    [   10.793633] virtio_rpmsg_bus virtio0: creating channel rpmsg_chrdev addr 0xe
    [   10.798988] remoteproc remoteproc1: remote processor 78000000.r5f is now attached
    [   10.806294] PVR_K:  219: Device: fd00000.gpu
    [   10.826723] PVR_K:  219: Read BVNC 33.15.11.3 from HW device registers
    [   10.833591] PVR_K:  219: RGX Device registered with BVNC 33.15.11.3
    [   10.834413] m_can_platform 4e00000.can: m_can device registered (irq=0, version=32)
    [   10.846864] [drm] Initialized pvr 23.1.6404501 20170530 for fd00000.gpu on minor 0
    [   10.855987] m_can_platform 4e10000.can: m_can device registered (irq=0, version=32)
    [   10.898687] remoteproc remoteproc0: powering up 5000000.m4fss
    [   10.904589] remoteproc remoteproc0: Booting fw image am62-mcu-m4f0_0-fw, size 54860
    [   10.918145] rproc-virtio rproc-virtio.2.auto: assigned reserved memory node m4f-dma-memory@9cb00000
    [   10.932582] virtio_rpmsg_bus virtio1: rpmsg host is online
    [   10.940160] rproc-virtio rproc-virtio.2.auto: registered virtio1 (type 7)
    [   10.947114] remoteproc remoteproc0: remote processor 5000000.m4fss is now up
    [   10.954518] virtio_rpmsg_bus virtio1: creating channel ti.ipc4.ping-pong addr 0xd
    [   10.964007] virtio_rpmsg_bus virtio1: creating channel rpmsg_chrdev addr 0xe
    [   11.157691] [drm] Initialized tidss 1.0.0 20180215 for 30200000.dss on minor 1
    [   11.176544] tidss 30200000.dss: [drm] fb0: tidssdrmfb frame buffer device
    [  OK  ] Created slice Slice /system/systemd-backlight.
             Starting Load/Save Screen …ness of backlight:backlight...
    [   12.142896] remoteproc remoteproc2: 30074000.pru is available
    [   12.158716] remoteproc remoteproc3: 30078000.pru is available
    [  OK  ] Finished Load/Save Screen …htness[   12.187608] dwc3 31000000.usb: Configuration mismatch. dr_mode forced to gadget
     of backlight:backlight.
    [   12.281449] cdns-csi2rx: probe of 30101000.csi-bridge failed with error -22
    [  OK  ] Reached target Hardware activated USB gadget.
    [   12.488528] xhci-hcd xhci-hcd.3.auto: xHCI Host Controller
    [   12.494276] xhci-hcd xhci-hcd.3.auto: new USB bus registered, assigned bus number 1
    [   12.502553] xhci-hcd xhci-hcd.3.auto: USB3 root hub has no ports
    [   12.508784] xhci-hcd xhci-hcd.3.auto: hcc params 0x0258fe6d hci version 0x110 quirks 0x0000000000010010
    [   12.518538] xhci-hcd xhci-hcd.3.auto: irq 458, io mem 0x31100000
    [   12.528083] hub 1-0:1.0: USB hub found
    [   12.532097] hub 1-0:1.0: 1 port detected
    [   12.792728] usb 1-1: new high-speed USB device number 2 using xhci-hcd
    [   12.950341] usb-storage 1-1:1.0: USB Mass Storage device detected
    [   12.958814] scsi host0: usb-storage 1-1:1.0
    [   13.985135] scsi 0:0:0:0: Direct-Access     SanDisk  Cruzer Blade     1.00 PQ: 0 ANSI: 6
    [   14.011318] sd 0:0:0:0: [sda] 30031872 512-byte logical blocks: (15.4 GB/14.3 GiB)
    [   14.020251] sd 0:0:0:0: [sda] Write Protect is off
    [   14.026041] sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
    [   14.047994]  sda: sda1
    [   14.051224] sd 0:0:0:0: [sda] Attached SCSI removable disk
    [  OK  ] Created slice Slice /system/systemd-fsck.
    [  OK  ] Found device Cruzer_Blade MYUSB.
             Starting File System Check on /dev/sda1...
    [  OK  ] Found device /dev/mmcblk1p1.
             Starting File System Check on /dev/mmcblk1p1...
    [  OK  ] Finished File System Check on /dev/sda1.
             Mounting /run/media/MYUSB-sda1...
    [  OK  ] Mounted /run/media/MYUSB-sda1.
    [  OK  ] Finished File System Check on /dev/mmcblk1p1.
             Mounting /run/media/boot-mmcblk1p1...
    [  OK  ] Mounted /run/media/boot-mmcblk1p1.
    [    **] A start job is running for Rebuild …amic Linker Cache (16s / no limit)
    [   22.684590] platform regulator-6: deferred probe pending
    [   22.690109] platform regulator-7: deferred probe pending
    [   22.695570] platform regulator-8: deferred probe pending
    [  OK  ] Finished Rebuild Dynamic Linker Cache.
             Starting Run pending postinsts...
             Starting Update is Completed...
    [  OK  ] Finished Update is Completed.
    [  OK  ] Finished Run pending postinsts.
    [  OK  ] Reached target System Initialization.
    [  OK  ] Started Daily rotation of log files.
    [  OK  ] Started Daily Cleanup of Temporary Directories.
    [  OK  ] Reached target Timer Units.
    [  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
    [  OK  ] Listening on D-Bus System Message Bus Socket.
             Starting Docker Socket for the API...
    [  OK  ] Listening on dropbear.socket.
             Starting Weston socket...
             Starting D-Bus System Message Bus...
             Starting Reboot and dump vmcore via kexec...
    [  OK  ] Listening on Docker Socket for the API.
    [  OK  ] Listening on Weston socket.
    [  OK  ] Finished Reboot and dump vmcore via kexec.
    [  OK  ] Reached target Socket Units.
    [  OK  ] Started D-Bus System Message Bus.
    [  OK  ] Reached target Basic System.
    [  OK  ] Started Job spooling tools.
    [  OK  ] Started Periodic Command Scheduler.
             Starting Print notice about GPLv3 packages...
             Starting IPv6 Packet Filtering Framework...
             Starting IPv4 Packet Filtering Framework...
    [  OK  ] Started irqbalance daemon.
             Starting startwlanap...
             Starting startwlansta...
    [   29.609282] audit: type=1334 audit(35.960:4): prog-id=7 op=LOAD
    [   29.615457] audit: type=1334 audit(35.964:5): prog-id=8 op=LOAD
             Starting User Login Management...
    [  OK  ] Started TEE Supplicant.
             Starting telnetd.service...
    [  OK  ] Started ti-apps-launcher service.
    [  OK  ] Finished IPv6 Packet Filtering Framework.
    [  OK  ] Finished IPv4 Packet Filtering Framework.
    [  OK  ] Started startwlanap.
    [  OK  ] Started startwlansta.
    [  OK  ] Reached target Preparation for Network.
             Starting Network Configuration...
    [  OK  ] Started telnetd.service.
             Starting LSB: Expand Rootfs of boot device...
    [  OK  ] Started User Login Management.
    [  OK  ] Listening on Load/Save RF …itch Status /dev/rfkill Watch.
    [   30.561852] cfg80211: Loading compiled-in X.509 certificates for regulatory database
    [   30.583139] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
    [  OK  ] Started Network Configuration.
             Starting Wait for Network to be Configured...
             Starting Network Name Resolution...
    [   31.612258] am65-cpsw-nuss 8000000.ethernet eth0: PHY [8000f00.mdio:00] driver [TI DP83867] (irq=POLL)
    [   31.623052] am65-cpsw-nuss 8000000.ethernet eth0: configuring for phy/rgmii-rxid link mode
    [  OK  ] Started Network Name Resolution.
    [  OK  ] Reached target Network.
    [  OK  ] Reached target Host and Network Name Lookups.
             Starting Avahi mDNS/DNS-SD Stack...
             Starting Enable and configure wl18xx bluetooth stack...
             Starting containerd container runtime...
    [  OK  ] Started Netperf Benchmark Server.
    [  OK  ] Started NFS status monitor for NFSv2/3 locking..
             Starting Simple Network Ma…ent Protocol (SNMP) Daemon....
             Starting Permit User Sessions...
    [  OK  ] Finished Enable and configure wl18xx bluetooth stack.
    [  OK  ] Finished Permit User Sessions.
    [  OK  ] Started Serial Getty on ttyS2.
    [  OK  ] Reached target Login Prompts.
             Starting Synchronize System and HW clocks...
    [  OK  ] Started Avahi mDNS/DNS-SD Stack.
    [  OK  ] Finished Synchronize System and HW clocks.
    [   36.568663] EXT4-fs (mmcblk1p2): resizing filesystem from 2358290 to 3856512 blocks
    
     _____                    _____           _         _
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|
                  |___|                    |___|
    
    Arago Project am62xx-evm -
    
    Arago 2023.04 am62xx-evm -
    
    am62xx-evm login: [   46.378675] EXT4-fs (mmcblk1p2): resized filesystem to 3856512
    root
    [   51.249878] audit: type=1334 audit(57.600:6): prog-id=9 op=LOAD
    [   51.255989] audit: type=1334 audit(57.604:7): prog-id=10 op=LOAD
    [   52.258238] audit: type=1006 audit(58.608:8): pid=764 uid=0 old-auid=4294967295 auid=0 tty=(none) old-ses=4294967295 ses=1 res=1
    [   52.269987] audit: type=1300 audit(58.608:8): arch=c00000b7 syscall=64 success=yes exit=1 a0=8 a1=fffff2bf3dc8 a2=1 a3=ffff9b3e7020 items=0 ppid=1 pid=764 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=1 comm="(systemd)" exe="/lib/systemd/systemd" key=(null)
    [   52.295632] audit: type=1327 audit(58.608:8): proctitle="(systemd)"
    [   52.400464] audit: type=1334 audit(58.748:9): prog-id=11 op=LOAD
    [   52.406613] audit: type=1300 audit(58.748:9): arch=c00000b7 syscall=280 success=yes exit=8 a0=5 a1=fffffad0d540 a2=78 a3=0 items=0 ppid=1 pid=764 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=1 comm="systemd" exe="/lib/systemd/systemd" key=(null)
    [   52.431311] audit: type=1327 audit(58.748:9): proctitle="(systemd)"
    [   52.437665] audit: type=1334 audit(58.748:10): prog-id=11 op=UNLOAD
    [   52.444015] audit: type=1334 audit(58.748:11): prog-id=12 op=LOAD
    root@am62xx-evm:~# dmesg | grep sound
    [    1.733807] asoc-simple-card sound: GPIO lookup for consumer simple-audio-card,hp-det
    [    1.733815] asoc-simple-card sound: using device tree for GPIO lookup
    [    1.733827] of_get_named_gpiod_flags: can't parse 'simple-audio-card,hp-det-gpios' property of node '/sound[0]'
    [    1.733850] of_get_named_gpiod_flags: can't parse 'simple-audio-card,hp-det-gpio' property of node '/sound[0]'
    [    1.733865] asoc-simple-card sound: using lookup tables for GPIO lookup
    [    1.733873] asoc-simple-card sound: No GPIO consumer simple-audio-card,hp-det found
    [    1.733886] asoc-simple-card sound: GPIO lookup for consumer simple-audio-card,mic-det
    [    1.733891] asoc-simple-card sound: using device tree for GPIO lookup
    [    1.733900] of_get_named_gpiod_flags: can't parse 'simple-audio-card,mic-det-gpios' property of node '/sound[0]'
    [    1.733914] of_get_named_gpiod_flags: can't parse 'simple-audio-card,mic-det-gpio' property of node '/sound[0]'
    [    1.733926] asoc-simple-card sound: using lookup tables for GPIO lookup
    [    1.733932] asoc-simple-card sound: No GPIO consumer simple-audio-card,mic-det found
    [    1.756014] asoc-simple-card sound: ASoC: no source widget found for HPLOUT
    [    1.763011] asoc-simple-card sound: ASoC: Failed to add route HPLOUT -> direct -> Headphone Jack
    [    1.771793] asoc-simple-card sound: ASoC: no source widget found for HPROUT
    [    1.778748] asoc-simple-card sound: ASoC: Failed to add route HPROUT -> direct -> Headphone Jack
    [    1.778755] asoc-simple-card sound: ASoC: no sink widget found for LINE1L
    [    1.778760] asoc-simple-card sound: ASoC: Failed to add route Line In -> direct -> LINE1L
    [    1.809937] asoc-simple-card sound: ASoC: no sink widget found for LINE1R
    [    1.816724] asoc-simple-card sound: ASoC: Failed to add route Line In -> direct -> LINE1R
    [    1.824890] asoc-simple-card sound: ASoC: no sink widget found for MIC3R
    [    1.831588] asoc-simple-card sound: ASoC: Failed to add route Microphone Jack -> direct -> MIC3R
    [    1.831596] asoc-simple-card sound: ASoC: no source widget found for Mic Bias
    [    1.845865] asoc-simple-card sound: ASoC: Failed to add route Mic Bias -> direct -> Microphone Jack
    [    1.894250]   No soundcards found.
    root@am62xx-evm:~# dmesg | grep tas2505
    [    1.168176] tas2505-codec 1-0018: tas2505_i2c_probe: clock-source = MCLK
    [    1.734796] tas2505-codec 1-0018: tas2505_codec_probe: Probe finished
    [    1.744804] tas2505-codec 1-0018: tas2505_set_dai_sysclk: clk_id: 0, freq: 12288000
    root@am62xx-evm:~# cd /snd
    -sh: cd: /snd: No such file or directory
    root@am62xx-evm:~# cd /dev/snd/
    root@am62xx-evm:/dev/snd# ls
    timer
    root@am62xx-evm:/dev/snd# cd ~
    root@am62xx-evm:~# cat /proc/asound/cards
    --- no soundcards ---
    root@am62xx-evm:~# cat /proc/asound/
    cards    devices  pcm      timers   version
    root@am62xx-evm:~# cat /proc/asound/pcm
    root@am62xx-evm:~# speaker-test -t sine -f 1000 -c 2 -l 1
    
    speaker-test 1.2.6
    
    Playback device is default
    Stream parameters are 48000Hz, S16_LE, 2 channels
    Sine wave rate is 1000.0000Hz
    ALSA lib ../../alsa-lib-1.2.6.1/src/confmisc.c:855:(parse_card) cannot find card '0'
    ALSA lib ../../alsa-lib-1.2.6.1/src/conf.c:5178:(_snd_config_evaluate) function snd_func_card_inum returned error: No such file or directory
    ALSA lib ../../alsa-lib-1.2.6.1/src/confmisc.c:422:(snd_func_concat) error evaluating strings
    ALSA lib ../../alsa-lib-1.2.6.1/src/conf.c:5178:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory
    ALSA lib ../../alsa-lib-1.2.6.1/src/confmisc.c:1334:(snd_func_refer) error evaluating name
    ALSA lib ../../alsa-lib-1.2.6.1/src/conf.c:5178:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
    ALSA lib ../../alsa-lib-1.2.6.1/src/conf.c:5701:(snd_config_expand) Evaluate error: No such file or directory
    ALSA lib ../../../alsa-lib-1.2.6.1/src/pcm/pcm.c:2664:(snd_pcm_open_noupdate) Unknown PCM default
    Playback open error: -2,No such file or directory
    root@am62xx-evm:~#
    

    ============================

    So, our Request:

    a) What is the correct "simple-audio-card" dts we should use? in 1) or 2)?

    b) In the DTS, the audio routing setting is correct (default) for our custom  Arch (SoC -> i2s -> TAS2505-> Speaker)?  

    c) Our Pinmuxing is correct for our custom  Arch (SoC -> i2s -> TAS2505-> Speaker)?

    Or may you provide the dts setting for us to try?

    Additional info, 

    Our custom Audio Arch, we use MCASP1 which is similiar to below.

    =============================

     Suren: "Can you share the output of cat /proc/asound/cards on your setup."

     Ans: As in 2). there is no sound card define file is created. 

         

  • FYI, our mcasp1 current setting

    &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>;
    };

  • Hi Paul,

    For simple audio card DTS entries, please refer the below device tree documentation:

    https://www.kernel.org/doc/Documentation/devicetree/bindings/sound/simple-card.txt

    Also, In your hardware, what pins from SoC (McASP) are you connecting to TAS2505, based on the pinmux would change.

    Best Regards,

    Suren

  • Hello Suren

    May you check our dts and guide us how to fix this issue? 

    Now, it seems we can do aplay without error, but no audio output (no BCLK, no WCLK).

    tas2505: tas2505@18 {
    #sound-dai-cells = <0>;
    compatible = "ti,tas2505";
    reg = <0x18>;
    //reset-gpios = <&mcu_gpio0 3 GPIO_ACTIVE_LOW>;
    gpio-reset = <&main_gpio0 3 GPIO_ACTIVE_LOW>;
    clock-source = <1>;/* 0: MCLK, 1: BCLK */
    status = "ok";
    };

    clk_mcasp1_fixed: clk_mcasp1_fixed {
    #clock-cells = <0>;
    compatible = "fixed-clock";
    //clock-frequency = <24576000>;
    clock-frequency = <12288000>;
    };

    clk_mcasp1: clk_mcasp1 {
    #clock-cells = <0>;
    compatible = "gpio-gate-clock";
    clocks = <&clk_mcasp1_fixed>;
    //enable-gpios = <&gpio1 27 0>; // BeagleBone Black Clk enable on GPIO1_27
    };

    sound {
    compatible = "simple-audio-card";
    simple-audio-card,name = "TI AM62x";
    simple-audio-card,dai-link@0 {
    format = "dsp_a";
    bitclock-master = <&sound0_master>;
    frame-master = <&sound0_master>;
    sound0_master: cpu {
    sound-dai = <&mcasp1>;

    };
    codec {
    sound-dai = <&tas2505>;

    clocks = <&clk_mcasp1>;  /* From external crystal*/
    };
    };
    };

    main_mcasp1_pins_default: main-mcasp1-pins-default {
    pinctrl-single,pins = <
    AM62X_IOPAD(0x090, PIN_INPUT, 2) /* (M24) GPMC0_BE0N_CLE.MCASP1_ACLKX */
    AM62X_IOPAD(0x098, PIN_INPUT, 2) /* (U23) GPMC0_WAIT0.MCASP1_AFSX */
    AM62X_IOPAD(0x08c, PIN_OUTPUT, 2) /* (L25) GPMC0_WEN.MCASP1_AXR0 */
    AM62X_IOPAD(0x084, PIN_INPUT, 2) /* (L23) GPMC0_ADVN_ALE.MCASP1_AXR2 */
    >;
    };

    &mcasp1 {
    status = "okay";
    #sound-dai-cells = <0>;
    pinctrl-names = "default";
    pinctrl-0 = <&main_mcasp1_pins_default>;
    op-mode = <0>; /* MCASP_IIS_MODE */
    tdm-slots = <8>;
    serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
    2 2 1 0
    >;
    tx-num-evt = <32>;
    rx-num-evt = <32>;
    };

    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    -Boot SPL 2023.04-g24098ea90d (Jul 06 2023 - 12:59:40 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.5--v09.00.05 (Kool Koala)')
    SPL initial stack usage: 13376 bytes
    Trying to boot from MMC2
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Starting ATF on ARM64 core...
    
    NOTICE:  BL31: v2.8(release):v2.8-226-g2fcd408bb3-dirty
    NOTICE:  BL31: Built : 00:42:57, Jan 13 2023
    
    U-Boot SPL 2023.04-g24098ea90d (Jul 06 2023 - 12:59:40 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.5--v09.00.05 (Kool Koala)')
    SPL initial stack usage: 1856 bytes
    Trying to boot from MMC2
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    
    
    U-Boot 2023.04-g24098ea90d (Jul 06 2023 - 12:59:40 +0000)
    
    SoC:   AM62X SR1.0 GP
    Model: Texas Instruments AM625 SK
    EEPROM not available at 80, trying to read at 81
    Reading on-board EEPROM at 0x51 failed -1
    DRAM:  2 GiB
    Core:  70 devices, 31 uclasses, devicetree: separate
    MMC:   mmc@fa10000: 0, mmc@fa00000: 1
    Loading Environment from nowhere... OK
    In:    serial
    Out:   serial
    Err:   serial
    EEPROM not available at 80, trying to read at 81
    Reading on-board EEPROM at 0x51 failed -1
    Net:   eth0: ethernet@8000000port@1
    Hit any key to stop autoboot:  0
    switch to partitions #0, OK
    mmc1 is current device
    SD/MMC found on device 1
    Failed to load 'boot.scr'
    574 bytes read in 16 ms (34.2 KiB/s)
    Loaded env from uEnv.txt
    Importing environment from mmc1 ...
    ## Error: "main_cpsw0_qsgmii_phyinit" not defined
    20578816 bytes read in 837 ms (23.4 MiB/s)
    57996 bytes read in 21 ms (2.6 MiB/s)
    Working FDT set to 88000000
    ## Flattened Device Tree blob at 88000000
       Booting using the fdt blob at 0x88000000
    Working FDT set to 88000000
    ERROR: reserving fdt memory region failed (addr=ff700000 size=8ca000 flags=4)
       Loading Device Tree to 000000008feee000, end 000000008fffffff ... OK
    Working FDT set to 8feee000
    
    Starting kernel ...
    
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
    [    0.000000] Linux version 6.1.33-g40c32565ca (oe-user@oe-host) (aarch64-oe-linux-gcc (GCC) 11.3.0, GNU ld (GNU Binutils) 2.38.20220708) #1 SMP PREEMPT Thu Jul  6 14:17:24 UTC 2023
    [    0.000000] Machine model: Texas Instruments AM625 SK
    [    0.000000] earlycon: ns16550a0 at MMIO32 0x0000000002800000 (options '')
    [    0.000000] printk: bootconsole [ns16550a0] enabled
    [    0.000000] efi: UEFI not found.
    [    0.000000] Reserved memory: created CMA memory pool at 0x00000000f7600000, size 128 MiB
    [    0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009c800000, size 3 MiB
    [    0.000000] OF: reserved mem: initialized node ipc-memories@9c800000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009cb00000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node m4f-dma-memory@9cb00000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009cc00000, size 14 MiB
    [    0.000000] OF: reserved mem: initialized node m4f-memory@9cc00000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009da00000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-dma-memory@9da00000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009db00000, size 12 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-memory@9db00000, compatible id shared-dma-pool
    [    0.000000] Zone ranges:
    [    0.000000]   DMA      [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000]   DMA32    empty
    [    0.000000]   Normal   empty
    [    0.000000] Movable zone start for each node
    [    0.000000] Early memory node ranges
    [    0.000000]   node   0: [mem 0x0000000080000000-0x000000009c7fffff]
    [    0.000000]   node   0: [mem 0x000000009c800000-0x000000009e6fffff]
    [    0.000000]   node   0: [mem 0x000000009e700000-0x000000009e77ffff]
    [    0.000000]   node   0: [mem 0x000000009e780000-0x000000009fffffff]
    [    0.000000]   node   0: [mem 0x00000000a0000000-0x00000000ff6fffff]
    [    0.000000]   node   0: [mem 0x00000000ff700000-0x00000000fffc9fff]
    [    0.000000]   node   0: [mem 0x00000000fffca000-0x00000000ffffffff]
    [    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000] psci: probing for conduit method from DT.
    [    0.000000] psci: PSCIv1.1 detected in firmware.
    [    0.000000] psci: Using standard PSCI v0.2 function IDs
    [    0.000000] psci: Trusted OS migration not required
    [    0.000000] psci: SMC Calling Convention v1.2
    [    0.000000] percpu: Embedded 19 pages/cpu s38376 r8192 d31256 u77824
    [    0.000000] Detected VIPT I-cache on CPU0
    [    0.000000] CPU features: detected: GIC system register CPU interface
    [    0.000000] CPU features: detected: ARM erratum 845719
    [    0.000000] alternatives: applying boot alternatives
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 516096
    [    0.000000] Kernel command line: console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000 mtdparts=spi-nand0:512k(ospi.tiboot3),2m(ospi.tispl),4m(ospi.u-boot),256k(ospi.env),256k(ospi.env.backup),98048k@32m(ospi.rootfs),256k@130816k(ospi.phypattern);omap2-nand.0:2m(NAND.tiboot3),2m(NAND.tispl),2m(NAND.tiboot3.backup),4m(NAND.u-boot),256k(NAND.u-boot-env),256k(NAND.u-boot-env.backup),-(NAND.file-system) root=PARTUUID=e1b8abf8-02 rw rootfstype=ext4 rootwait
    [    0.000000] Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
    [    0.000000] Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
    [    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] Memory: 1838092K/2097152K available (12480K kernel code, 1280K rwdata, 4064K rodata, 2176K init, 493K bss, 127988K reserved, 131072K cma-reserved)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
    [    0.000000] rcu: Preemptible hierarchical RCU implementation.
    [    0.000000] rcu:     RCU event tracing is enabled.
    [    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=4.
    [    0.000000]  Trampoline variant of Tasks RCU enabled.
    [    0.000000]  Tracing variant of Tasks RCU enabled.
    [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
    [    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4
    [    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
    [    0.000000] GICv3: GIC: Using split EOI/Deactivate mode
    [    0.000000] GICv3: 256 SPIs implemented
    [    0.000000] GICv3: 0 Extended SPIs implemented
    [    0.000000] Root IRQ handler: gic_handle_irq
    [    0.000000] GICv3: GICv3 features: 16 PPIs
    [    0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001880000
    [    0.000000] ITS [mem 0x01820000-0x0182ffff]
    [    0.000000] GIC: enabling workaround for ITS: Socionext Synquacer pre-ITS
    [    0.000000] ITS@0x0000000001820000: Devices Table too large, reduce ids 20->19
    [    0.000000] ITS@0x0000000001820000: allocated 524288 Devices @80800000 (flat, esz 8, psz 64K, shr 0)
    [    0.000000] ITS: using cache flushing for cmd queue
    [    0.000000] GICv3: using LPI property table @0x0000000080040000
    [    0.000000] GIC: using cache flushing for LPI property table
    [    0.000000] GICv3: CPU0: using allocated LPI pending table @0x0000000080050000
    [    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
    [    0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys).
    [    0.000000] clocksource: arch_sys_counter: mask: 0x3ffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
    [    0.000001] sched_clock: 58 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
    [    0.008600] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=800000)
    [    0.019294] pid_max: default: 32768 minimum: 301
    [    0.024078] LSM: Security Framework initializing
    [    0.028966] Mount-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
    [    0.036557] Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
    [    0.046737] cblist_init_generic: Setting adjustable number of callback queues.
    [    0.054220] cblist_init_generic: Setting shift to 2 and lim to 1.
    [    0.060531] cblist_init_generic: Setting shift to 2 and lim to 1.
    [    0.066949] rcu: Hierarchical SRCU implementation.
    [    0.071863] rcu:     Max phase no-delay instances is 1000.
    [    0.077517] Platform MSI: msi-controller@1820000 domain created
    [    0.083882] PCI/MSI: /bus@f0000/interrupt-controller@1800000/msi-controller@1820000 domain created
    [    0.093788] EFI services will not be available.
    [    0.098764] smp: Bringing up secondary CPUs ...
    [    0.104189] Detected VIPT I-cache on CPU1
    [    0.104330] GICv3: CPU1: found redistributor 1 region 0:0x00000000018a0000
    [    0.104354] GICv3: CPU1: using allocated LPI pending table @0x0000000080060000
    [    0.104422] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
    [    0.105240] Detected VIPT I-cache on CPU2
    [    0.105339] GICv3: CPU2: found redistributor 2 region 0:0x00000000018c0000
    [    0.105353] GICv3: CPU2: using allocated LPI pending table @0x0000000080070000
    [    0.105393] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
    [    0.106123] Detected VIPT I-cache on CPU3
    [    0.106222] GICv3: CPU3: found redistributor 3 region 0:0x00000000018e0000
    [    0.106236] GICv3: CPU3: using allocated LPI pending table @0x0000000080080000
    [    0.106273] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
    [    0.106358] smp: Brought up 1 node, 4 CPUs
    [    0.186104] SMP: Total of 4 processors activated.
    [    0.190917] CPU features: detected: 32-bit EL0 Support
    [    0.196200] CPU features: detected: CRC32 instructions
    [    0.201540] CPU: All CPU(s) started at EL2
    [    0.205737] alternatives: applying system-wide alternatives
    [    0.213709] devtmpfs: initialized
    [    0.226605] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
    [    0.236640] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
    [    0.249256] pinctrl core: initialized pinctrl subsystem
    [    0.255415] DMI not present or invalid.
    [    0.260096] NET: Registered PF_NETLINK/PF_ROUTE protocol family
    [    0.267557] DMA: preallocated 256 KiB GFP_KERNEL pool for atomic allocations
    [    0.275188] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
    [    0.283316] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
    [    0.291525] audit: initializing netlink subsys (disabled)
    [    0.297256] audit: type=2000 audit(0.188:1): state=initialized audit_enabled=0 res=1
    [    0.297770] thermal_sys: Registered thermal governor 'step_wise'
    [    0.305188] thermal_sys: Registered thermal governor 'power_allocator'
    [    0.311385] cpuidle: using governor menu
    [    0.322286] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
    [    0.329334] ASID allocator initialised with 65536 entries
    [    0.349559] platform 30200000.dss: Fixed dependency cycle(s) with /display
    [    0.359493] KASLR disabled due to lack of seed
    [    0.371601] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages
    [    0.378586] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page
    [    0.384997] HugeTLB: registered 32.0 MiB page size, pre-allocated 0 pages
    [    0.391941] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page
    [    0.398353] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
    [    0.405292] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
    [    0.411700] HugeTLB: registered 64.0 KiB page size, pre-allocated 0 pages
    [    0.418639] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page
    [    0.427141] k3-chipinfo 43000014.chipid: Family:AM62X rev:SR1.0 JTAGID[0x0bb7e02f] Detected
    [    0.438012] iommu: Default domain type: Translated
    [    0.443086] iommu: DMA domain TLB invalidation policy: strict mode
    [    0.449840] SCSI subsystem initialized
    [    0.454150] usbcore: registered new interface driver usbfs
    [    0.459822] usbcore: registered new interface driver hub
    [    0.465325] usbcore: registered new device driver usb
    [    0.471193] pps_core: LinuxPPS API ver. 1 registered
    [    0.476275] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.485631] PTP clock support registered
    [    0.489791] EDAC MC: Ver: 3.0.0
    [    0.494165] omap-mailbox 29000000.mailbox: omap mailbox rev 0x66fc9100
    [    0.501413] FPGA manager framework
    [    0.505009] Advanced Linux Sound Architecture Driver Initialized.
    [    0.512394] clocksource: Switched to clocksource arch_sys_counter
    [    0.518948] VFS: Disk quotas dquot_6.6.0
    [    0.523012] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
    [    0.531344] NET: Registered PF_INET protocol family
    [    0.536681] IP idents hash table entries: 32768 (order: 6, 262144 bytes, linear)
    [    0.546044] tcp_listen_portaddr_hash hash table entries: 1024 (order: 2, 16384 bytes, linear)
    [    0.554867] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
    [    0.562813] TCP established hash table entries: 16384 (order: 5, 131072 bytes, linear)
    [    0.571034] TCP bind hash table entries: 16384 (order: 7, 524288 bytes, linear)
    [    0.579147] TCP: Hash tables configured (established 16384 bind 16384)
    [    0.586128] UDP hash table entries: 1024 (order: 3, 32768 bytes, linear)
    [    0.593079] UDP-Lite hash table entries: 1024 (order: 3, 32768 bytes, linear)
    [    0.600647] NET: Registered PF_UNIX/PF_LOCAL protocol family
    [    0.607042] RPC: Registered named UNIX socket transport module.
    [    0.613132] RPC: Registered udp transport module.
    [    0.617947] RPC: Registered tcp transport module.
    [    0.622755] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.629354] NET: Registered PF_XDP protocol family
    [    0.634276] PCI: CLS 0 bytes, default 64
    [    0.639251] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 counters available
    [    0.649756] Initialise system trusted keyrings
    [    0.654659] workingset: timestamp_bits=46 max_order=19 bucket_order=0
    [    0.667617] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    0.674456] NFS: Registering the id_resolver key type
    [    0.679691] Key type id_resolver registered
    [    0.683971] Key type id_legacy registered
    [    0.688140] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    0.695006] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
    [    0.702807] 9p: Installing v9fs 9p2000 file system support
    [    0.743140] Key type asymmetric registered
    [    0.747338] Asymmetric key parser 'x509' registered
    [    0.752395] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
    [    0.760158] io scheduler mq-deadline registered
    [    0.764807] io scheduler kyber registered
    [    0.772884] pinctrl-single 4084000.pinctrl: 34 pins, size 136
    [    0.779518] pinctrl-single f4000.pinctrl: 171 pins, size 684
    [    0.786366] pinctrl-single a40000.pinctrl: 512 pins, size 2048
    [    0.795017] clk_mcasp1: gpio_clk_driver_probe: Can't get 'enable' named GPIO property
    [    0.803063] gpio-clk: probe of clk_mcasp1 failed with error -2
    [    0.815281] Serial: 8250/16550 driver, 12 ports, IRQ sharing enabled
    [    0.833248] loop: module loaded
    [    0.838102] megasas: 07.719.03.00-rc1
    [    0.846839] tun: Universal TUN/TAP device driver, 1.6
    [    0.852913] thunder_xcv, ver 1.0
    [    0.856255] thunder_bgx, ver 1.0
    [    0.859598] nicpf, ver 1.0
    [    0.862838] hns3: Hisilicon Ethernet Network Driver for Hip08 Family - version
    [    0.870226] hns3: Copyright (c) 2017 Huawei Corporation.
    [    0.875727] hclge is initializing
    [    0.879149] e1000: Intel(R) PRO/1000 Network Driver
    [    0.884135] e1000: Copyright (c) 1999-2006 Intel Corporation.
    [    0.890047] e1000e: Intel(R) PRO/1000 Network Driver
    [    0.895124] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
    [    0.901219] igb: Intel(R) Gigabit Ethernet Network Driver
    [    0.906738] igb: Copyright (c) 2007-2014 Intel Corporation.
    [    0.912471] igbvf: Intel(R) Gigabit Virtual Function Network Driver
    [    0.918883] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
    [    0.925097] sky2: driver version 1.30
    [    0.929697] VFIO - User Level meta-driver version: 0.3
    [    0.935896] usbcore: registered new interface driver usb-storage
    [    0.942466] Gt9xx driver installing..
    [    0.946253] >> i2c_add_driver - ret : 0x0
    [    0.950898] i2c_dev: i2c /dev entries driver
    [    0.957996] sdhci: Secure Digital Host Controller Interface driver
    [    0.964395] sdhci: Copyright(c) Pierre Ossman
    [    0.969425] Synopsys Designware Multimedia Card Interface Driver
    [    0.976104] sdhci-pltfm: SDHCI platform and OF driver helper
    [    0.982954] ledtrig-cpu: registered to indicate activity on CPUs
    [    0.989350] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
    [    0.996393] usbcore: registered new interface driver usbhid
    [    1.002093] usbhid: USB HID core driver
    [    1.007579] optee: probing for conduit method.
    [    1.012204] optee: revision 3.20 (8e74d476)
    [    1.012640] optee: dynamic shared memory is enabled
    [    1.022332] optee: initialized driver
    [    1.029363] Initializing XFRM netlink socket
    [    1.033804] NET: Registered PF_PACKET protocol family
    [    1.039169] 9pnet: Installing 9P2000 support
    [    1.043621] Key type dns_resolver registered
    [    1.048611] registered taskstats version 1
    [    1.052837] Loading compiled-in X.509 certificates
    [    1.067821] ti-sci 44043000.system-controller: ABI: 3.1 (firmware rev 0x0009 '9.0.5--v09.00.05 (Kool Koala)')
    [    1.143239] at24 0-0051: supply vcc not found, using dummy regulator
    [    1.172560] at24 0-0051: 65536 byte 24c512 EEPROM, writable, 64 bytes/write
    [    1.180043] omap_i2c 20000000.i2c: bus 0 rev0.12 at 400 kHz
    [    1.187595] tas2505-codec 1-0018: tas2505_i2c_probe: clock-source = BCLK
    [    1.194910] omap_i2c 20010000.i2c: bus 1 rev0.12 at 100 kHz
    [    1.201063] ti-sci-intr 4210000.interrupt-controller: Interrupt Router 5 domain created
    [    1.209443] ti-sci-intr bus@f0000:interrupt-controller@a00000: Interrupt Router 3 domain created
    [    1.218729] ti-sci-inta 48000000.interrupt-controller: Interrupt Aggregator domain 28 created
    [    1.228962] ti-udma 485c0100.dma-controller: Number of rings: 82
    [    1.237414] ti-udma 485c0100.dma-controller: Channels: 48 (bchan: 18, tchan: 12, rchan: 18)
    [    1.248956] ti-udma 485c0000.dma-controller: Number of rings: 150
    [    1.259507] ti-udma 485c0000.dma-controller: Channels: 35 (tchan: 20, rchan: 15)
    [    1.270067] printk: console [ttyS2] disabled
    [    1.274600] 2800000.serial: ttyS2 at MMIO 0x2800000 (irq = 240, base_baud = 3000000) is a 8250
    [    1.283522] printk: console [ttyS2] enabled
    [    1.283522] printk: console [ttyS2] enabled
    [    1.291985] printk: bootconsole [ns16550a0] disabled
    [    1.291985] printk: bootconsole [ns16550a0] disabled
    [    1.303143] omap8250 2840000.serial: PM domain pd:155 will not be powered off
    [    1.310658] 2840000.serial: ttyS4 at MMIO 0x2840000 (irq = 242, base_baud = 3000000) is a 8250
    [    1.320703] 2860000.serial: ttyS6 at MMIO 0x2860000 (irq = 243, base_baud = 3000000) is a 8250
    [    1.332680] spi-nor spi0.0: s28hs512t (65536 Kbytes)
    [    1.337843] 7 fixed-partitions partitions found on MTD device fc40000.spi.0
    [    1.344807] Creating 7 MTD partitions on "fc40000.spi.0":
    [    1.350214] 0x000000000000-0x000000080000 : "ospi.tiboot3"
    [    1.357159] 0x000000080000-0x000000280000 : "ospi.tispl"
    [    1.363747] 0x000000280000-0x000000680000 : "ospi.u-boot"
    [    1.370317] 0x000000680000-0x0000006c0000 : "ospi.env"
    [    1.376730] 0x0000006c0000-0x000000700000 : "ospi.env.backup"
    [    1.383673] 0x000000800000-0x000003fc0000 : "ospi.rootfs"
    [    1.390380] 0x000003fc0000-0x000004000000 : "ospi.phypattern"
    [    1.399265] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    1.444422] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    1.454505] davinci_mdio 8000f00.mdio: phy[0]: device 8000f00.mdio:00, driver TI DP83867
    [    1.462608] davinci_mdio 8000f00.mdio: phy[1]: device 8000f00.mdio:01, driver unknown
    [    1.470500] am65-cpsw-nuss 8000000.ethernet: initializing am65 cpsw nuss version 0x6BA01103, cpsw version 0x6BA81103 Ports: 3 quirks:00000006
    [    1.483520] am65-cpsw-nuss 8000000.ethernet: Use random MAC address
    [    1.489795] am65-cpsw-nuss 8000000.ethernet: initialized cpsw ale version 1.5
    [    1.496927] am65-cpsw-nuss 8000000.ethernet: ALE Table size 512
    [    1.503479] pps pps0: new PPS source ptp0
    [    1.507841] am65-cpsw-nuss 8000000.ethernet: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 pps:1
    [    1.518511] am65-cpsw-nuss 8000000.ethernet: set new flow-id-base 19
    [    1.531180] mmc0: CQHCI version 5.10
    [    1.536346] omap8250 2840000.serial: Failed to create device link (0x180) with 4201000.gpio
    [    1.551619] [gtp_probe:1947]
    [    1.555507] goodix-ts 0-005d: GTP Driver Version: V2.8.0.2<2017/12/14>
    [    1.562033] goodix-ts 0-005d: GTP I2C Address: 0x5d
    [    1.566916] goodix-ts 0-005d: Unset touchscreen-max-id, use default
    [    1.573181] goodix-ts 0-005d: Unset touchscreen-max-w, use default
    [    1.576322] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit
    [    1.579491] goodix-ts 0-005d: Unset touchscreen-max-p, use default
    [    1.593112] goodix-ts 0-005d: touch input parameters is [id x y w p]<16 800 480 1024 1024>
    [    1.601389] goodix-ts 0-005d: Failed get int-trigger-type from dts,set default
    [    1.608752] goodix-ts 0-005d: supply vdd_ana not found, using dummy regulator
    [    1.616128] goodix-ts 0-005d: supply vcc_i2c not found, using dummy regulator
    [    1.623361] goodix-ts 0-005d: No pinctrl found
    [    1.627812] goodix-ts 0-005d: Success request irq-gpio
    [    1.632951] goodix-ts 0-005d: Success request rst-gpio
    [    1.638084] goodix-ts 0-005d: Guitar reset
    [    1.661963] mmc0: Command Queue Engine enabled
    [    1.666462] mmc0: new HS200 MMC card at address 0001
    [    1.672525] mmcblk0: mmc0:0001 0IM20E 29.6 GiB
    [    1.679983] mmcblk0boot0: mmc0:0001 0IM20E 31.5 MiB
    [    1.683217] goodix-ts 0-005d: I2c read failed,dev:5d,reg:8047,size:1
    [    1.686459] mmcblk0boot1: mmc0:0001 0IM20E 31.5 MiB
    [    1.691355] goodix-ts 0-005d: GTP i2c test failed time 1
    [    1.702801] mmcblk0rpmb: mmc0:0001 0IM20E 4.00 MiB, chardev (240:0)
    [    1.713211] goodix-ts 0-005d: I2c read failed,dev:5d,reg:8047,size:1
    [    1.719566] goodix-ts 0-005d: GTP i2c test failed time 2
    [    1.746680] goodix-ts 0-005d: I2c read failed,dev:5d,reg:8047,size:1
    [    1.753034] goodix-ts 0-005d: GTP i2c test failed time 3
    [    1.769359] goodix-ts 0-005d: Failed communicate with IC use I2C
    [    1.775394] goodix-ts 0-005d: Regulator vcc_i2c disabled
    [    1.780710] goodix-ts 0-005d: Regulator vdd_ana disabled
    [    1.786411] goodix-ts: probe of 0-005d failed with error -11
    [    1.796269] pca953x 1-0022: supply vcc not found, using dummy regulator
    [    1.803066] pca953x 1-0022: using AI
    [    1.828536] pca953x 1-0022: failed writing register
    [    1.833689] pca953x: probe of 1-0022 failed with error -121
    [    1.842751] mmc1: CQHCI version 5.10
    [    1.843005] tas2505-codec 1-0018: tas2505_codec_probe: Probe finished
    [    1.862102] debugfs: Directory 'pd:182' with parent 'pm_genpd' already present!
    [    1.883811] ALSA device list:
    [    1.886825]   #0: TI AM62x
    [    1.888892] mmc1: SDHCI controller on fa00000.mmc [fa00000.mmc] using ADMA 64-bit
    [    1.898427] Waiting for root device PARTUUID=e1b8abf8-02...
    [    1.949258] mmc1: new high speed SDHC card at address aaaa
    [    1.956143] mmcblk1: mmc1:aaaa SC16G 14.8 GiB
    [    1.968131]  mmcblk1: p1 p2
    [    2.025681] EXT4-fs (mmcblk1p2): recovery complete
    [    2.030544] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Quota mode: none.
    [    2.039183] VFS: Mounted root (ext4 filesystem) on device 179:98.
    [    2.049614] devtmpfs: mounted
    [    2.054367] Freeing unused kernel memory: 2176K
    [    2.059043] Run /sbin/init as init process
    [    3.524876] systemd[1]: System time before build time, advancing clock.
    [    3.780138] NET: Registered PF_INET6 protocol family
    [    3.787324] Segment Routing with IPv6
    [    3.791088] In-situ OAM (IOAM) with IPv6
    [    3.947177] systemd[1]: systemd 250.5+ running in system mode (+PAM -AUDIT -SELINUX -APPARMOR +IMA -SMACK +SECCOMP -GCRYPT -GNUTLS -OPENSSL +ACL +BLKID -CURL -ELFUTILS -FIDO2 -IDN2 -IDN -IPTC +KMOD -LIBCRYPTSETUP +LIBFDISK -PCRE2 -PWQUALITY -P11KIT -QRENCODE -BZIP2 -LZ4 -XZ -ZLIB +ZSTD -BPF_FRAMEWORK +XKBCOMMON +UTMP +SYSVINIT default-hierarchy=hybrid)
    [    3.980442] systemd[1]: Detected architecture arm64.
    
    Welcome to Arago 2023.04!
    
    [    4.110665] systemd[1]: Hostname set to <am62xx-evm>.
    [    4.407038] systemd-sysv-generator[157]: SysV service '/etc/init.d/docker.init' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.444072] systemd-sysv-generator[157]: SysV service '/etc/init.d/sysrepo' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.473934] systemd-sysv-generator[157]: SysV service '/etc/init.d/thermal-zone-init' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.500713] systemd-sysv-generator[157]: SysV service '/etc/init.d/inetd.busybox' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.531753] systemd-sysv-generator[157]: SysV service '/etc/init.d/dropbear' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.556328] systemd-sysv-generator[157]: SysV service '/etc/init.d/telnetd' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.581148] systemd-sysv-generator[157]: SysV service '/etc/init.d/single' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.607236] systemd-sysv-generator[157]: SysV service '/etc/init.d/resize_rootfs.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.631899] systemd-sysv-generator[157]: SysV service '/etc/init.d/umountfs' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.655817] systemd-sysv-generator[157]: SysV service '/etc/init.d/reboot' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.679554] systemd-sysv-generator[157]: SysV service '/etc/init.d/umountnfs.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.703839] systemd-sysv-generator[157]: SysV service '/etc/init.d/psplash.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.728662] systemd-sysv-generator[157]: SysV service '/etc/init.d/save-rtc.sh' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.753086] systemd-sysv-generator[157]: SysV service '/etc/init.d/halt' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.780222] systemd-sysv-generator[157]: SysV service '/etc/init.d/sendsigs' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.804207] systemd-sysv-generator[157]: SysV service '/etc/init.d/netopeer2-server' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    4.828822] systemd-sysv-generator[157]: SysV service '/etc/init.d/netperf' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    5.422562] systemd[1]: Configuration file /etc/systemd/system/ti-apps-launcher.service is marked executable. Please remove executable permission bits. Proceeding anyway.
    [    5.564583] systemd[1]: /lib/systemd/system/startwlansta.service:7: Unknown key name 'After' in section 'Service', ignoring.
    [    5.581041] systemd[1]: /lib/systemd/system/startwlanap.service:7: Unknown key name 'After' in section 'Service', ignoring.
    [    5.655857] systemd[1]: /lib/systemd/system/bt-enable.service:9: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
    [    5.765659] systemd[1]: /etc/systemd/system/sync-clocks.service:11: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
    [    5.897910] systemd[1]: Queued start job for default target Graphical Interface.
    [    5.989331] systemd[1]: Created slice Slice /system/getty.
    [  OK  ] Created slice Slice /system/getty.
    [    6.016244] systemd[1]: Created slice Slice /system/modprobe.
    [  OK  ] Created slice Slice /system/modprobe.
    [    6.035894] systemd[1]: Created slice Slice /system/serial-getty.
    [  OK  ] Created slice Slice /system/serial-getty.
    [    6.067739] systemd[1]: Created slice User and Session Slice.
    [  OK  ] Created slice User and Session Slice.
    [    6.089163] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
    [  OK  ] Started Dispatch Password …ts to Console Directory Watch.
    [    6.113021] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    [  OK  ] Started Forward Password R…uests to Wall Directory Watch.
    [    6.137328] systemd[1]: Reached target Path Units.
    [  OK  ] Reached target Path Units.
    [    6.152742] systemd[1]: Reached target Remote File Systems.
    [  OK  ] Reached target Remote File Systems.
    [    6.172790] systemd[1]: Reached target Slice Units.
    [  OK  ] Reached target Slice Units.
    [    6.188751] systemd[1]: Reached target Swaps.
    [  OK  ] Reached target Swaps.
    [    6.291911] systemd[1]: Listening on RPCbind Server Activation Socket.
    [  OK  ] Listening on RPCbind Server Activation Socket.
    [    6.317140] systemd[1]: Reached target RPC Port Mapper.
    [  OK  ] Reached target RPC Port Mapper.
    [    6.362506] systemd[1]: Listening on Process Core Dump Socket.
    [  OK  ] Listening on Process Core Dump Socket.
    [    6.386549] systemd[1]: Listening on initctl Compatibility Named Pipe.
    [  OK  ] Listening on initctl Compatibility Named Pipe.
    [    6.412648] systemd[1]: Listening on Journal Audit Socket.
    [  OK  ] Listening on Journal Audit Socket.
    [    6.438262] systemd[1]: Listening on Journal Socket (/dev/log).
    [  OK  ] Listening on Journal Socket (/dev/log).
    [    6.463563] systemd[1]: Listening on Journal Socket.
    [  OK  ] Listening on Journal Socket.
    [    6.484867] systemd[1]: Listening on Network Service Netlink Socket.
    [  OK  ] Listening on Network Service Netlink Socket.
    [    6.511950] systemd[1]: Listening on udev Control Socket.
    [  OK  ] Listening on udev Control Socket.
    [    6.534890] systemd[1]: Listening on udev Kernel Socket.
    [  OK  ] Listening on udev Kernel Socket.
    [    6.559195] systemd[1]: Listening on User Database Manager Socket.
    [  OK  ] Listening on User Database Manager Socket.
    [    6.629368] systemd[1]: Mounting Huge Pages File System...
             Mounting Huge Pages File System...
    [    6.655351] systemd[1]: Mounting POSIX Message Queue File System...
             Mounting POSIX Message Queue File System...
    [    6.689626] systemd[1]: Mounting Kernel Debug File System...
             Mounting Kernel Debug File System...
    [    6.709352] systemd[1]: Kernel Trace File System was skipped because of a failed condition check (ConditionPathExists=/sys/kernel/tracing).
    [    6.757226] systemd[1]: Mounting Temporary Directory /tmp...
             Mounting Temporary Directory /tmp...
    [    6.790458] systemd[1]: Starting Create List of Static Device Nodes...
             Starting Create List of Static Device Nodes...
    [    6.820951] systemd[1]: Starting Load Kernel Module configfs...
             Starting Load Kernel Module configfs...
    [    6.844994] systemd[1]: Starting Load Kernel Module drm...
             Starting Load Kernel Module drm...
    [    6.869428] systemd[1]: Starting Load Kernel Module fuse...
             Starting Load Kernel Module fuse...
    [    7.053820] systemd[1]: Starting Start psplash boot splash screen...
             Starting Start psplash boot splash screen.[    7.061330] fuse: init (API version 7.37)
    ..
    [    7.093423] systemd[1]: Starting RPC Bind...
             Starting RPC Bind...
    [    7.113371] systemd[1]: File System Check on Root Device was skipped because of a failed condition check (ConditionPathIsReadWrite=!/).
    [    7.162152] systemd[1]: Starting Journal Service...
             Starting Journal Service...
    [    7.269880] systemd[1]: Starting Load Kernel Modules...
             Starting Load Kernel Modules...
    [    7.302617] systemd[1]: Starting Generate network units from Kernel command line...
             Starting Generate network …ts from Kernel command line...
    [    7.357949] cryptodev: loading out-of-tree module taints kernel.
    [    7.366384] cryptodev: driver 1.12 loaded.
    [    7.369899] systemd[1]: Starting Remount Root and Kernel File Systems...
             Starting Remount Root and Kernel File Systems...
    [    7.401996] systemd[1]: Starting Coldplug All udev Devices...
             Starting Coldplug All udev Devices...[    7.413340] EXT4-fs (mmcblk1p2): re-mounted. Quota mode: none.
    
    [    7.446767] systemd[1]: Started RPC Bind.
    [  OK  ] Started RPC Bind.
    [    7.461809] systemd[1]: Mounted Huge Pages File System.
    [  OK  ] Mounted Huge Pages File System.
    [    7.485545] systemd[1]: Mounted POSIX Message Queue File System.
    [  OK  ] Mounted POSIX Message Queue File System.
    [    7.509534] systemd[1]: Mounted Kernel Debug File System.
    [  OK  ] Mounted Kernel Debug File System.
    [    7.533584] systemd[1]: Mounted Temporary Directory /tmp.
    [  OK  ] Mounted Temporary Directory /tmp.
    [    7.557610] systemd[1]: Started Journal Service.
    [  OK  ] Started Journal Service.
    [  OK  ] Finished Create List of Static Device Nodes.
    [  OK  ] Finished Load Kernel Module configfs.
    [  OK  ] Finished Load Kernel Module drm.
    [  OK  ] Finished Load Kernel Module fuse.
    [FAILED] Failed to start Start psplash boot splash screen.
    See 'systemctl status psplash-start.service' for details.
    [DEPEND] Dependency failed for Star…progress communication helper.
    [  OK  ] Finished Load Kernel Modules.
    [  OK  ] Finished Generate network units from Kernel command line.
    [  OK  ] Finished Remount Root and Kernel File Systems.
             Mounting FUSE Control File System...
             Mounting Kernel Configuration File System...
             Starting Flush Journal to Persistent Storage...
             Starting Apply Kernel Variables...
    [    7.909186] systemd-journald[173]: Received client request to flush runtime journal.
             Starting Create Static Device Nodes in /dev...
    [  OK  ] Mounted FUSE Control File System.
    [  OK  ] Mounted Kernel Configuration File System.
    [  OK  ] Finished Flush Journal to Persistent Storage.
    [  OK  ] Finished Apply Kernel Variables.
    [  OK  ] Finished Create Static Device Nodes in /dev.
    [  OK  ] Reached target Preparation for Local File Systems.
             Mounting /media/ram...
             Mounting /var/volatile...
    [    8.155002] audit: type=1334 audit(1651167749.644:2): prog-id=5 op=LOAD
    [    8.161842] audit: type=1334 audit(1651167749.652:3): prog-id=6 op=LOAD
             Starting Rule-based Manage…for Device Events and Files...
    [  OK  ] Mounted /media/ram.
    [  OK  ] Mounted /var/volatile.
             Starting Load/Save Random Seed...
    [  OK  ] Reached target Local File Systems.
             Starting Create Volatile Files and Directories...
    [  OK  ] Finished Coldplug All udev Devices.
    [  OK  ] Finished Create Volatile Files and Directories.
             Starting Network Time Synchronization...
             Starting Record System Boot/Shutdown in UTMP...
    [  OK  ] Finished Record System Boot/Shutdown in UTMP.
    [  OK  ] Started Rule-based Manager for Device Events and Files.
    [  OK  ] Started Network Time Synchronization.
    [  OK  ] Reached target System Initialization.
    [  OK  ] Started Daily Cleanup of Temporary Directories.
    [  OK  ] Reached target System Time Set.
    [  OK  ] Started Daily rotation of log files.
    [  OK  ] Reached target Timer Units.
    [  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
    [  OK  ] Listening on D-Bus System Message Bus Socket.
             Starting Docker Socket for the API...
    [    9.143113] mc: Linux media interface: v0.10
    [    9.160506] pwm-backlight backlight: supply power not found, using dummy regulator
    [    9.197880] rtc rtc0: Unknown quartz-load-femtofarads value: 1250. Assuming 12500
    [    9.205717] rtc-pcf8523 1-0068: failed to set xtal load capacitance: -121
    [    9.212974] rtc-pcf8523: probe of 1-0068 failed with error -121
    [  OK  ] Listening on dropbear.socket.
    [    9.252733] videodev: Linux video capture interface: v2.00
             Starting Weston socket...
             Starting D-Bus System Message Bus...
    [    9.392471] random: crng init done
    [    9.403095] k3-m4-rproc 5000000.m4fss: assigned reserved memory node m4f-dma-memory@9cb00000
    [    9.404960] CAN device driver interface
    [    9.417474] k3-m4-rproc 5000000.m4fss: configured M4 for remoteproc mode
             Starting Reboot and dump vmcore via kexec.[    9.425101] k3-m4-rproc 5000000.m4fss: local reset is deasserted for device
    ..
    [    9.440777] remoteproc remoteproc0: 5000000.m4fss is available
    [  OK  ] Finished Load/Save Random Seed.
    [  OK  ] Listening on Docker Socket for the API.
    [  OK  ] Listening on Weston socket.
    [    9.527117] remoteproc remoteproc0: powering up 5000000.m4fss
    [    9.533081] remoteproc remoteproc0: Booting fw image am62-mcu-m4f0_0-fw, size 54860
    [  OK  ] Found device /dev/ttyS2.
    [    9.547937] rproc-virtio rproc-virtio.0.auto: assigned reserved memory node m4f-dma-memory@9cb00000
    [    9.559503] rproc-virtio rproc-virtio.0.auto: registered virtio0 (type 7)
    [  OK  ] Reached target Socket Units.
    [    9.569296] remoteproc remoteproc0: remote processor 5000000.m4fss is now up
    [    9.643067] m_can_platform 4e00000.can: m_can device registered (irq=0, version=32)
    [    9.654327] m_can_platform 4e10000.can: m_can device registered (irq=0, version=32)
    [    9.727124] rtc-ti-k3 2b1f0000.rtc: registered as rtc0
    [    9.732562] rtc-ti-k3 2b1f0000.rtc: setting system clock to 1970-01-01T00:00:15 UTC (15)
    [    9.742714] systemd-journald[173]: Time jumped backwards, rotating.
    [    9.956315] virtio_rpmsg_bus virtio0: rpmsg host is online
    [    9.956911] virtio_rpmsg_bus virtio0: creating channel ti.ipc4.ping-pong addr 0xd
    [    9.969934] virtio_rpmsg_bus virtio0: creating channel rpmsg_chrdev addr 0xe
    [   10.211931] platform 78000000.r5f: R5F core may have been powered on by a different host, programmed state (0) != actual state (1)
    [   10.226216] platform 78000000.r5f: configured R5F for IPC-only mode
    [   10.233983] platform 78000000.r5f: assigned reserved memory node r5f-dma-memory@9da00000
    [   10.243047] PVR_K:  218: Device: fd00000.gpu
    [   10.243886] remoteproc remoteproc1: 78000000.r5f is available
    [   10.247767] PVR_K:  218: Read BVNC 33.15.11.3 from HW device registers
    [   10.253247] remoteproc remoteproc1: attaching to 78000000.r5f
    [   10.265503] PVR_K:  218: RGX Device registered with BVNC 33.15.11.3
    [   10.268128] platform 78000000.r5f: R5F core initialized in IPC-only mode
    [   10.272870] [drm] Initialized pvr 23.1.6404501 20170530 for fd00000.gpu on minor 0
    [   10.278866] rproc-virtio rproc-virtio.2.auto: assigned reserved memory node r5f-dma-memory@9da00000
    [   10.296561] virtio_rpmsg_bus virtio1: rpmsg host is online
    [   10.297934] virtio_rpmsg_bus virtio1: creating channel ti.ipc4.ping-pong addr 0xd
    [   10.302276] rproc-virtio rproc-virtio.2.auto: registered virtio1 (type 7)
    [   10.314856] virtio_rpmsg_bus virtio1: creating channel rpmsg_chrdev addr 0xe
    [   10.316465] remoteproc remoteproc1: remote processor 78000000.r5f is now attached
    [   10.362157] panel-simple display: supply power not found, using dummy regulator
    [   10.371044] panel-simple display: Specify missing bus_flags
    [   10.384553] [drm] Initialized tidss 1.0.0 20180215 for 30200000.dss on minor 1
    [   10.406316] tidss 30200000.dss: [drm] fb0: tidssdrmfb frame buffer device
    [  OK  ] Finished Reboot and dump vmcore via kexec.
    [  OK  ] Started D-Bus System Message Bus.
    [  OK  ] Reached target Basic System.
    [  OK  ] Started Job spooling tools.
    [  OK  ] Started Periodic Command Scheduler.
             Starting Print notice about GPLv3 packages...
             Starting IPv6 Packet Filtering Framework...
             Starting IPv4 Packet Filtering Framework...
    [  OK  ] Started irqbalance daemon.
             Starting startwlanap...
             Starting startwlansta...
    [   11.123355] audit: type=1334 audit(16.884:4): prog-id=7 op=LOAD
    [   11.132564] audit: type=1334 audit(16.896:5): prog-id=8 op=LOAD
             Starting User Login Management...
    [  OK  ] Started TEE Supplicant.
             Starting telnetd.service...
    [  OK  ] Started ti-apps-launcher service.
    [  OK  ] Finished IPv6 Packet Filtering Framework.
    [  OK  ] Finished IPv4 Packet Filtering Framework.
    [  OK  ] Started startwlanap.
    [  OK  ] Started startwlansta.
    [  OK  ] Started telnetd.service.
    [   11.398149] remoteproc remoteproc2: 30074000.pru is available
    [   11.503755] remoteproc remoteproc3: 30078000.pru is available
    [   11.520807] dwc3 31000000.usb: Configuration mismatch. dr_mode forced to gadget
    [   11.694445] xhci-hcd xhci-hcd.3.auto: xHCI Host Controller
    [   11.700089] xhci-hcd xhci-hcd.3.auto: new USB bus registered, assigned bus number 1
    [  OK  ] Created slice Slice /system/systemd[   11.708042] xhci-hcd xhci-hcd.3.auto: USB3 root hub has no ports
    -backlight.
    [   11.719559] xhci-hcd xhci-hcd.3.auto: hcc params 0x0258fe6d hci version 0x110 quirks 0x0000000000010010
    [  OK  ] Reached target Preparation for Netw[   11.730427] xhci-hcd xhci-hcd.3.auto: irq 458, io mem 0x31100000
    ork.
    [  OK  ] Reached target Hardware activated U[   11.743150] hub 1-0:1.0: USB hub found
    SB gadget.
    [   11.752266] hub 1-0:1.0: 1 port detected
             Starting Save/Restore Sound Card State...
             Starting LSB: Expand Rootfs of boot device...
             Starting Load/Save Screen …ness of backlight[   11.800247] cdns-csi2rx: probe of 30101000.csi-bridge failed with error -22
    :backlight...
             Starting Network Configuration...
    [  OK  ] Finished Save/Restore Sound Card State.
    [  OK  ] Started User Login Management.
    [  OK  ] Reached target Sound Card.
    [   12.012498] usb 1-1: new high-speed USB device number 2 using xhci-hcd
    [  OK  ] Finished Load/Save Screen …htness of backlight:backlight.
    [   12.166111] usb-storage 1-1:1.0: USB Mass Storage device detected
    [   12.173171] scsi host0: usb-storage 1-1:1.0
    [  OK  ] Listening on Load/Save RF …itch S[   12.825366] cfg80211: Loading compiled-in X.509 certificates for regulatory database
    tatus /dev/rfkill Watch.
    [   12.834775] FAT-fs (mmcblk1p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
    [   12.859497] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
    [   13.210137] scsi 0:0:0:0: Direct-Access     SanDisk  Cruzer Blade     1.00 PQ: 0 ANSI: 6
    [   13.225715] sd 0:0:0:0: [sda] 30031872 512-byte logical blocks: (15.4 GB/14.3 GiB)
    [   13.235404] sd 0:0:0:0: [sda] Write Protect is off
    [   13.241232] sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
    [   13.264121]  sda: sda1
    [   13.267423] sd 0:0:0:0: [sda] Attached SCSI removable disk
    [  OK  ] Started LSB: Expand Rootfs of boot device.
    [  OK  ] Started Network Configuration.
             Starting Wait for Network to be Configured...
             Starting Network Name Resolution...
    [   14.006112] am65-cpsw-nuss 8000000.ethernet eth1: PHY [8000f00.mdio:01] driver [Generic PHY] (irq=POLL)
    [   14.016557] am65-cpsw-nuss 8000000.ethernet eth1: configuring for phy/rgmii-rxid link mode
    [   14.041607] am65-cpsw-nuss 8000000.ethernet eth1: Link is Up - Unknown/Unknown - flow control off
    [   14.071018] am65-cpsw-nuss 8000000.ethernet eth0: PHY [8000f00.mdio:00] driver [TI DP83867] (irq=POLL)
    [   14.080543] am65-cpsw-nuss 8000000.ethernet eth0: configuring for phy/rgmii-rxid link mode
    [  OK  ] Started Network Name Resolution.
    [  OK  ] Reached target Network.
    [  OK  ] Reached target Host and Network Name Lookups.
             Starting Avahi mDNS/DNS-SD Stack...
             Starting Enable and configure wl18xx bluetooth stack...
             Starting containerd container runtime...
    [  OK  ] Started Netperf Benchmark Server.
    [  OK  ] Started NFS status monitor for NFSv2/3 locking..
             Starting Simple Network Ma…ent Protocol (SNMP) Daemon....
             Starting Permit User Sessions...
    [  OK  ] Finished Enable and configure wl18xx bluetooth stack.
    [  OK  ] Finished Permit User Sessions.
    [  OK  ] Created slice Slice /system/systemd-fsck.
    [  OK  ] Started Serial Getty on ttyS2.
    [  OK  ] Reached target Login Prompts.
             Starting Synchronize System and HW clocks...
             Starting File System Check on /dev/mmcblk1p1...
    [  OK  ] Found device Cruzer_Blade MYUSB.
             Starting File System Check on /dev/sda1...
    [  OK  ] Started Avahi mDNS/DNS-SD Stack.
    [  OK  ] Finished Synchronize System and HW clocks.
    [  OK  ] Finished File System Check on /dev/mmcblk1p1.
             Mounting /run/media/boot-mmcblk1p1...
    [  OK  ] Mounted /run/media/boot-mmcblk1p1.
    [  OK  ] Finished File System Check on /dev/sda1.
             Mounting /run/media/MYUSB-sda1...
    [  OK  ] Mounted /run/media/MYUSB-sda1.
    [   17.113993] am65-cpsw-nuss 8000000.ethernet eth1: Link is Down
    
     _____                    _____           _         _
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|
                  |___|                    |___|
    
    Arago Project am62xx-evm -
    
    Arago 2023.04 am62xx-evm -
    
    am62xx-evm login: root
    [   24.225007] platform regulator-6: deferred probe pending
    [   24.230577] platform regulator-7: deferred probe pending
    [   24.236039] platform regulator-8: deferred probe pending
    [   24.241516] platform fa20000.mmc: deferred probe pending
    [   24.281400] am65-cpsw-nuss 8000000.ethernet eth1: Link is Up - 100Mbps/Full - flow control rx/tx
    [   25.138242] audit: type=1334 audit(30.900:6): prog-id=9 op=LOAD
    [   25.144344] audit: type=1334 audit(30.904:7): prog-id=10 op=LOAD
    [   26.104676] audit: type=1006 audit(31.868:8): pid=735 uid=0 old-auid=4294967295 auid=0 tty=(none) old-ses=4294967295 ses=1 res=1
    [   26.116605] audit: type=1300 audit(31.868:8): arch=c00000b7 syscall=64 success=yes exit=1 a0=8 a1=ffffc1e7dfe8 a2=1 a3=ffff80ff8020 items=0 ppid=1 pid=735 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=1 comm="(systemd)" exe="/lib/systemd/systemd" key=(null)
    [   26.142359] audit: type=1327 audit(31.868:8): proctitle="(systemd)"
    [   26.215404] audit: type=1334 audit(31.976:9): prog-id=11 op=LOAD
    [   26.221684] audit: type=1300 audit(31.976:9): arch=c00000b7 syscall=280 success=yes exit=8 a0=5 a1=ffffca65dd60 a2=78 a3=0 items=0 ppid=1 pid=735 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=1 comm="systemd" exe="/lib/systemd/systemd" key=(null)
    [   26.246419] audit: type=1327 audit(31.976:9): proctitle="(systemd)"
    [   26.252775] audit: type=1334 audit(31.976:10): prog-id=11 op=UNLOAD
    [   26.259088] audit: type=1334 audit(31.976:11): prog-id=12 op=LOAD
    [   27.353407] am65-cpsw-nuss 8000000.ethernet eth1: Link is Down
    root@am62xx-evm:~# cat /proc/a[   35.545361] am65-cpsw-nuss 8000000.ethernet eth1: Link is Up - 100Mbps/Full - flow control rx/tx
    sound/p[   37.593454] am65-cpsw-nuss 8000000.ethernet eth1: Link is Down
    
    root@am62xx-evm:~# dmesg |[   43.002360] kauditd_printk_skb: 3 callbacks suppressed
    [   43.002383] audit: type=1701 audit(48.764:13): auid=4294967295 uid=0 gid=0 ses=4294967295 pid=411 comm="ti-apps-launche" exe="/usr/bin/ti-apps-launcher" sig=11 res=1
     [   43.065801] audit: type=1334 audit(48.828:14): prog-id=13 op=LOAD
    [   43.071995] audit: type=1334 audit(48.832:15): prog-id=14 op=LOAD
    grep [   43.737301] am65-cpsw-nuss 8000000.ethernet eth1: Link is Up - 100Mbps/Full - flow control rx/tx
    tas25[   45.208662] audit: type=1334 audit(50.972:16): prog-id=14 op=UNLOAD
    [   45.215023] audit: type=1334 audit(50.972:17): prog-id=13 op=UNLOAD
    
    [    1.187595] tas2505-codec 1-0018: tas2505_i2c_probe: clock-source = BCLK
    [    1.843005] tas2505-codec 1-0018: tas2505_codec_probe: Probe finished
    root@am62xx-evm:~# [   45.785912] am65-cpsw-nuss 8000000.ethernet eth1: Link is Down
    
    root@am62xx-evm:~# [   46.809986] am65-cpsw-nuss 8000000.ethernet eth1: Link is Up - Unknown/Unknown - flow control off
    
    root@am62xx-evm:~#
    root@am62xx-evm:~# dmesg | grep tas25[   47.834673] am65-cpsw-nuss 8000000.ethernet eth1: Link is Down
    
    [    1.187595] tas2505-codec 1-0018: tas2505_i2c_probe: clock-source = BCLK
    [    1.843005] tas2505-codec 1-0018: tas2505_codec_probe: Probe finished
    root@am62xx-evm:~#
    root@am62xx-evm:~#
    root@am62xx-evm:~# dmesg | grep sound
    [    1.841897] asoc-simple-card sound: GPIO lookup for consumer simple-audio-card,hp-det
    [    1.841909] asoc-simple-card sound: using device tree for GPIO lookup
    [    1.841925] of_get_named_gpiod_flags: can't parse 'simple-audio-card,hp-det-gpios' property of node '/sound[0]'
    [    1.841955] of_get_named_gpiod_flags: can't parse 'simple-audio-card,hp-det-gpio' property of node '/sound[0]'
    [    1.841976] asoc-simple-card sound: using lookup tables for GPIO lookup
    [    1.841986] asoc-simple-card sound: No GPIO consumer simple-audio-card,hp-det found
    [    1.841995] asoc-simple-card sound: GPIO lookup for consumer simple-audio-card,mic-det
    [    1.842005] asoc-simple-card sound: using device tree for GPIO lookup
    [    1.842019] of_get_named_gpiod_flags: can't parse 'simple-audio-card,mic-det-gpios' property of node '/sound[0]'
    [    1.842040] of_get_named_gpiod_flags: can't parse 'simple-audio-card,mic-det-gpio' property of node '/sound[0]'
    [    1.842056] asoc-simple-card sound: using lookup tables for GPIO lookup
    [    1.842064] asoc-simple-card sound: No GPIO consumer simple-audio-card,mic-det found
    root@am62xx-evm:~# cat /proc/asound/pcm
    00-00: davinci-mcasp.0-tas2505-hifi tas2505-hifi-0 : davinci-mcasp.0-tas2505-hifi tas2505-hifi-0 : playback 1
    root@am62xx-evm:~# cat /proc/asound/card
    cat: /proc/asound/card: No such file or directory
    root@am62xx-evm:~# cat /proc/asound/cards
     0 [AM62x          ]: simple-card - TI AM62x
                          TI AM62x
    root@am62xx-evm:~# cat /sys/bus/i2c/devices/
    cat: /sys/bus/i2c/devices/: Is a directory
    root@am62xx-evm:~# ls
    root@am62xx-evm:~# ls /sys/bus/i2c/devices/
    0-0051  0-005d  1-0018  1-0022  1-0068  i2c-0  i2c-1
    root@am62xx-evm:~# i2cdetect -y -r 0
         0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
    00:                         -- -- -- -- -- -- -- --
    10: -- -- -- -- 14 -- -- -- -- -- -- -- -- -- -- --
    20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    50: -- UU -- -- -- -- -- -- -- -- -- -- -- -- -- --
    60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    70: -- -- -- -- -- -- -- --
    root@am62xx-evm:~# i2cdetect -y -r 1
         0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
    00:                         -- -- -- -- -- -- -- --
    10: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- --
    20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    40: -- -- -- -- 44 -- -- -- -- -- -- -- -- -- -- --
    50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    70: -- -- -- -- -- -- -- --
    root@am62xx-evm:~# [  135.901286] am65-cpsw-nuss 8000000.ethernet eth1: Link is Up - 100Mbps/Full - flow control rx/tx
    [  136.921924] am65-cpsw-nuss 8000000.ethernet eth1: Link is Down
    [  146.381905] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
    [  146.406982] Bridge firewalling registered
    [  146.535943] audit: type=1325 audit(152.220:18): table=nat family=2 entries=0 op=xt_register pid=856 comm="iptables"
    [  146.546788] audit: type=1300 audit(152.220:18): arch=c00000b7 syscall=209 success=yes exit=0 a0=4 a1=0 a2=40 a3=ffffdc8b8708 items=0 ppid=817 pid=856 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm="iptables" exe="/usr/sbin/xtables-legacy-multi" key=(null)
    [  146.574360] audit: type=1327 audit(152.220:18): proctitle=2F7573722F7362696E2F69707461626C6573002D2D77616974002D74006E6174002D4C002D6E
    [  146.586672] audit: type=1325 audit(152.312:19): table=filter family=2 entries=0 op=xt_register pid=859 comm="iptables"
    [  146.597477] audit: type=1300 audit(152.312:19): arch=c00000b7 syscall=209 success=yes exit=0 a0=4 a1=0 a2=40 a3=fffffac6f5e8 items=0 ppid=817 pid=859 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm="iptables" exe="/usr/sbin/xtables-legacy-multi" key=(null)
    [  146.625141] audit: type=1327 audit(152.312:19): proctitle=2F7573722F7362696E2F69707461626C6573002D2D77616974002D4C002D6E
    [  146.740930] audit: type=1325 audit(152.504:20): table=nat family=2 entries=5 op=xt_replace pid=880 comm="iptables"
    [  146.751467] audit: type=1300 audit(152.504:20): arch=c00000b7 syscall=208 success=yes exit=0 a0=4 a1=0 a2=40 a3=3ef93a60 items=0 ppid=817 pid=880 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm="iptables" exe="/usr/sbin/xtables-legacy-multi" key=(null)
    [  146.778645] audit: type=1327 audit(152.504:20): proctitle=2F7573722F7362696E2F69707461626C6573002D2D77616974002D74006E6174002D4E00444F434B4552
    [  146.791528] audit: type=1325 audit(152.504:21): table=filter family=2 entries=4 op=xt_replace pid=882 comm="iptables"
    
    root@am62xx-evm:~# [  147.165287] am65-cpsw-nuss 8000000.ethernet eth1: Link is Up - 100Mbps/Full - flow control rx/tx
    speaker-test -t sine -f 1000 -c 2 -l 1
    
    speaker-test 1.2.6
    
    Playback device is default
    Stream parameters are 48000Hz, S16_LE, 2 channels
    Sine wave rate is 1000.0000Hz
    Rate set to 48000Hz (requested 48000Hz)
    Buffer size range from 139 to 142663
    Period size range from 69 [  148.502111] tas2505-codec 1-0018: tas2505_hw_params: bit width = 16
    to 17833
    Using max buffer size 142660
    Periods = 4
    [  148.513852] tas2505-codec 1-0018: tas2505_hw_params: tas2505->rate = 44100 , tas2505->frame_size = 32
    [  148.527644] tas2505-codec 1-0018: mclk_p (0) = tas2505->sysclk (0) Devide  tas2505->p_div (0)
    [  148.560034] davinci-mcasp 2b10000.audio-controller: Sample-rate is off by 400 PPM
    [  148.570423] tas2505-codec 1-0018: tas2505_set_bias_level:power on
    was set period_size = 2691
    was set buffer_size = 142660
     0 - Front Left
    [  149.209903] am65-cpsw-nuss 8000000.ethernet eth1: Link is Down
     1 - Front Right
    Time per period = 20.532408
    [  169.116460] tas2505-codec 1-0018: tas2505_set_bias_level:SND_SOC_BIAS_STANDBY
    [  169.125518] tas2505-codec 1-0018: tas2505_set_bias_level:power off
    [  170.136695] ti-udma 485c0100.dma-controller: chan1 teardown timeout!
    root@am62xx-evm:~# cd /tmp/
    root@am62xx-evm:/tmp# mkdir myusb
    root@am62xx-evm:/tmp# mount /dev/sda1  /tmp/myusb
    root@am62xx-evm:/tmp# cd myusb/
    root@am62xx-evm:/tmp/myusb# ls
     20Hzto20kHz.wav                           BabyElephantWalk60_44100.mp3                 SineWaveMinusSinged16bPCM_48khz.wav
     20Hzto20kHz_mono_44100hz_24b.wav          BabyElephantWalk60_44100Hz_32bitFloat.wav   'System Volume Information'
     20Hzto20kHz_mono_44100hz_32b.wav          BabyElephantWalk60_Signed16bit_44100Hz.wav  '[Volvo_Paver]AutoInstall'
     20Hzto20kHz_mono_48000hz_32bF.wav         CantinaBand3.wav                             default_gitlab20241011_Ver12PatchMP_changedLogo
     BabyElephantWalk60.mp3                    Fanfare60.wav                                sabresd
     BabyElephantWalk60.wav                    SineWaveMinus16.wav
     BabyElephantWalk60_32bitPCM_44100Hz.wav   SineWaveMinusSined16bPCM_44100Hz.wav
    root@am62xx-evm:/tmp/myusb# aplay 20Hzto20kHz_mono_44100hz_24b.wav
    Playing WAVE '20Hzto20kHz_mono_44100hz_24b.wav' : [  201.424046] tas2505-codec 1-0018: tas2505_hw_params: bit width = 16
    Signed 24 bit Little Endian in 3bytes, Rate 44100 Hz, Mono
    [  201.432267] tas2505-codec 1-0018: tas2505_hw_params: tas2505->rate = 44100 , tas2505->frame_size = 16
    [  201.446821] tas2505-codec 1-0018: mclk_p (0) = tas2505->sysclk (0) Devide  tas2505->p_div (0)
    [  201.447557] am65-cpsw-nuss 8000000.ethernet eth1: Link is Up - 100Mbps/Full - flow control rx/tx
    [  201.478279] davinci-mcasp 2b10000.audio-controller: Sample-rate is off by 400 PPM
    [  201.497123] tas2505-codec 1-0018: tas2505_set_bias_level:power on
    [  202.457608] am65-cpsw-nuss 8000000.ethernet eth1: Link is Down
    
    

  • Hi Paul,

    Can you set the alsa mixer controls and give it a try.

    In our AM62x I usually set these controls for record and playback use-case to function properly.

    root@am62xx-evm:~# amixer -c 0 cset numid=64 on                                                                                                                                                             
    numid=64,iface=MIXER,name='Left PGA Mixer Mic3L Switch'
      ; type=BOOLEAN,access=rw------,values=1
      : values=on
    root@am62xx-evm:~# amixer -c 0 cset numid=65 on                                                                                                                                                             
    numid=65,iface=MIXER,name='Left PGA Mixer Mic3R Switch'
      ; type=BOOLEAN,access=rw------,values=1
      : values=on
    root@am62xx-evm:~# amixer -c 0 cset numid=70 on                                                                                                                                                             
    numid=70,iface=MIXER,name='Right PGA Mixer Mic3L Switch'
      ; type=BOOLEAN,access=rw------,values=1
      : values=on
    root@am62xx-evm:~# amixer -c 0 cset numid=71 on                                                                                                                                                             
    numid=71,iface=MIXER,name='Right PGA Mixer Mic3R Switch'
      ; type=BOOLEAN,access=rw------,values=1
      : values=on
    root@am62xx-evm:~# amixer -c 0 cset numid=15 127
    numid=15,iface=MIXER,name='PCM Playback Volume'
      ; type=INTEGER,access=rw---R--,values=2,min=0,max=127,step=0
      : values=127,127
      | dBscale-min=-63.50dB,step=0.50dB,mute=0

    Best Regards,

    Suren

  • Hello Suren

    We try and below is the output. Any issue with our DTS configuration?

    root@am62xx-evm:/tmp/myusb# amixer -c 0 cset numid=64 on
    amixer: Cannot find the given element from control sysdefault:0

    root@am62xx-evm:/tmp/myusb# amixer -c 0 cset numid=65 on
    amixer: Cannot find the given element from control sysdefault:0

    root@am62xx-evm:/tmp/myusb# amixer -c 0 cset numid=70 on
    amixer: Cannot find the given element from control sysdefault:0

    root@am62xx-evm:/tmp/myusb# amixer -c 0 cset numid=71 on
    amixer: Cannot find the given element from control sysdefault:0

    root@am62xx-evm:/tmp/myusb# amixer -c 0 cset numid=15 127
    amixer: Cannot find the given element from control sysdefault:0

    kernel_log_20241016.txt

  • serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
    2 2 1 0
    >;

    Hi Paul,

    Can you modify this to 1 0 2 0  instead of 2 2 10 ? Are you using connecting 4 serializers to the data pins on your setup?

    Please refer the below document:

    https://www.ti.com/lit/an/sprack0/sprack0.pdf

    Best Regards,

    Suren

  • Hello Suren

    We try 1 0 2 0, but the result is the same.

    We connected to the 4 serial as the given schematic below.

    Current DTS setting:

    // SPDX-License-Identifier: GPL-2.0
    /*
     * Common dtsi for AM62x SK and derivatives
     *
     * Copyright (C) 2021-2023 Texas Instruments Incorporated - https://www.ti.com/
     */
    
    #include <dt-bindings/leds/common.h>
    #include <dt-bindings/gpio/gpio.h>
    #include <dt-bindings/net/ti-dp83867.h>
    #include "k3-am625.dtsi"
    
    / {
    	aliases {
    		serial2 = &main_uart0;
    		mmc0 = &sdhci0;
    		mmc1 = &sdhci1;
    		mmc2 = &sdhci2;
    		spi0 = &ospi0;
    		ethernet0 = &cpsw_port1;
    		ethernet1 = &cpsw_port2;
    		usb1 = &usb1;
    		gpio0 = &main_gpio0;
    	};
    
    	chosen {
    		stdout-path = "serial2:115200n8";
    		bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
    	};
    
    	memory@80000000 {
    		device_type = "memory";
    		/* 2G RAM */
    		reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
    
    	};
    
    	reserved-memory {
    		#address-cells = <2>;
    		#size-cells = <2>;
    		ranges;
    
    		ramoops@9c700000 {
    			compatible = "ramoops";
    			reg = <0x00 0x9c700000 0x00 0x00100000>;
    			record-size = <0x8000>;
    			console-size = <0x8000>;
    			ftrace-size = <0x00>;
    			pmsg-size = <0x8000>;
    		};
    
    		/* global cma region */
    		linux,cma {
    			compatible = "shared-dma-pool";
    			reusable;
    			size = <0x00 0x8000000>;
    			linux,cma-default;
    		};
    
    		rtos_ipc_memory_region: ipc-memories@9c800000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9c800000 0x00 0x00300000>;
    			no-map;
    		};
    
    		mcu_m4fss_dma_memory_region: m4f-dma-memory@9cb00000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9cb00000 0x00 0x100000>;
    			no-map;
    		};
    
    		mcu_m4fss_memory_region: m4f-memory@9cc00000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9cc00000 0x00 0xe00000>;
    			no-map;
    		};
    
    		wkup_r5fss0_core0_dma_memory_region: r5f-dma-memory@9da00000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9da00000 0x00 0x00100000>;
    			no-map;
    		};
    
    		wkup_r5fss0_core0_memory_region: r5f-memory@9db00000 {
    			compatible = "shared-dma-pool";
    			reg = <0x00 0x9db00000 0x00 0x00c00000>;
    			no-map;
    		};
    
    		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;
    		};
    
    		framebuffer: framebuffer@ff700000 {
    			reg = <0x00 0xff700000 0x00 0x008ca000>;
    			no-map;
    		};
    	};
    
    	lcd_bl: backlight {
                    compatible = "pwm-backlight";
                    pwms = <&epwm0 0 50000 0>;
                    brightness-levels =
                            <0 32 64 96 128 160 192 224 255>;
                    default-brightness-level = <8>;
            };
    
    	display {
    		compatible = "edt,et070080dh6";
    		backlight = <&lcd_bl>;
    		port {
    			lcd_in: endpoint {
    				remote-endpoint = <&dpi1_out>;
    			};
    		};
    	};
    
           
    	clk_mcasp1_fixed: clk_mcasp1_fixed {
    		#clock-cells = <0>;
    		compatible = "fixed-clock";
    		//clock-frequency = <24576000>;
    		clock-frequency = <12288000>;
    	};
    
    	clk_mcasp1: clk_mcasp1 {
    		#clock-cells = <0>;
    		compatible = "gpio-gate-clock";
    		clocks = <&clk_mcasp1_fixed>;
    		//enable-gpios = <&gpio1 27 0>; // BeagleBone Black Clk enable on GPIO1_27
    	};
    
    	sound {
    		compatible = "simple-audio-card";
    		simple-audio-card,name = "TI AM62x";
    		simple-audio-card,dai-link@0 {
    		simple-audio-card,widgets =
     			"Headphone", "Headphone Jack",
     			"Microphone", "Microphone Jack",
     			"Speaker", "Speaker";
    		simple-audio-card,routing =
     			"MIC1LP", "Microphone Jack",
     			"MIC1RP", "Microphone Jack",
     			"MIC1LP", "MICBIAS",
     			"MIC1RP", "MICBIAS",
     			"Headphone Jack", "HPL",
     			"Headphone Jack", "HPR",
     			"Speaker", "SPL",
     			"Speaker", "SPR";
    		format = "dsp_b";
    		bitclock-master = <&sound0_master>;
    		frame-master = <&sound0_master>;
    		sound0_master: cpu {
    				sound-dai = <&mcasp1>;
    				//clocks = <&clk_mcasp1>;
    		};
    		codec {
    				sound-dai = <&tas2505>;
    				 clocks = <&clk_mcasp1>;
    			};
    		};
            };
    	
    
    };
    
    &main_pmx0 {
    	/* First pad number is ALW package and second is AMC package */
    	main_uart0_pins_default: main-uart0-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14/A13) UART0_RXD */
    			AM62X_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (E14/E11) UART0_TXD */
    		>;
    	};
    
    	main_i2c0_pins_default: main-i2c0-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x1e0, PIN_INPUT_PULLUP, 0) /* (B16/E12) I2C0_SCL */
    			AM62X_IOPAD(0x1e4, PIN_INPUT_PULLUP, 0) /* (A16/D14) I2C0_SDA */
    		>;
    	};
    
    	main_i2c1_pins_default: main-i2c1-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x1e8, PIN_INPUT_PULLUP, 0) /* (B17/A17) I2C1_SCL */
    			AM62X_IOPAD(0x1ec, PIN_INPUT_PULLUP, 0) /* (A17/A16) I2C1_SDA */
    		>;
    	};
    	
    	/* main_i2c2_pins_default: main-i2c2-pins-default { */
    	/*	pinctrl-single,pins = < */
    	/*		AM62X_IOPAD(0x0b0, PIN_INPUT_PULLUP, 1) */ /* (K22/H18) GPMC0_CSn2.I2C2_SCL */
    	/*		AM62X_IOPAD(0x0b4, PIN_INPUT_PULLUP, 1) */ /* (K24/H19) GPMC0_CSn3.I2C2_SDA */
    	/*	>;*/
    	/*};*/
    	
    	main_mmc0_pins_default: main-mmc0-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x220, PIN_INPUT, 0) /* (Y3/V3) MMC0_CMD */
    			AM62X_IOPAD(0x218, PIN_INPUT, 0) /* (AB1/Y1) MMC0_CLK */
    			AM62X_IOPAD(0x214, PIN_INPUT, 0) /* (AA2/V2) MMC0_DAT0 */
    			AM62X_IOPAD(0x210, PIN_INPUT, 0) /* (AA1/V1) MMC0_DAT1 */
    			AM62X_IOPAD(0x20c, PIN_INPUT, 0) /* (AA3/W2) MMC0_DAT2 */
    			AM62X_IOPAD(0x208, PIN_INPUT, 0) /* (Y4/W1) MMC0_DAT3 */
    			AM62X_IOPAD(0x204, PIN_INPUT, 0) /* (AB2/Y2) MMC0_DAT4 */
    			AM62X_IOPAD(0x200, PIN_INPUT, 0) /* (AC1/W3) MMC0_DAT5 */
    			AM62X_IOPAD(0x1fc, PIN_INPUT, 0) /* (AD2/W4) MMC0_DAT6 */
    			AM62X_IOPAD(0x1f8, PIN_INPUT, 0) /* (AC2/V4) MMC0_DAT7 */
    		>;
    	};
    
    	main_mmc1_pins_default: main-mmc1-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x23c, PIN_INPUT, 0) /* (A21/C18) MMC1_CMD */
    			AM62X_IOPAD(0x234, PIN_INPUT, 0) /* (B22/A20) MMC1_CLK */
    			AM62X_IOPAD(0x230, PIN_INPUT, 0) /* (A22/A19) MMC1_DAT0 */
    			AM62X_IOPAD(0x22c, PIN_INPUT, 0) /* (B21/B19) MMC1_DAT1 */
    			AM62X_IOPAD(0x228, PIN_INPUT, 0) /* (C21/B20) MMC1_DAT2 */
    			AM62X_IOPAD(0x224, PIN_INPUT, 0) /* (D22/C19) MMC1_DAT3 */
    			AM62X_IOPAD(0x240, PIN_INPUT, 0) /* (D17/C15) MMC1_SDCD */
    		>;
    	};
    
    	usr_led_pins_default: usr-led-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x244, PIN_OUTPUT, 7) /* (C17/B15) MMC1_SDWP.GPIO1_49 */
    		>;
    	};
    
    	main_mdio1_pins_default: main-mdio1-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x160, PIN_OUTPUT, 0) /* (AD24/V17) MDIO0_MDC */
    			AM62X_IOPAD(0x15c, PIN_INPUT, 0) /* (AB22/U16) MDIO0_MDIO */
    		>;
    	};
    
    	main_rgmii1_pins_default: main-rgmii1-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x14c, PIN_INPUT, 0) /* (AB17/W15) RGMII1_RD0 */
    			AM62X_IOPAD(0x150, PIN_INPUT, 0) /* (AC17/Y16) RGMII1_RD1 */
    			AM62X_IOPAD(0x154, PIN_INPUT, 0) /* (AB16/AA17) RGMII1_RD2 */
    			AM62X_IOPAD(0x158, PIN_INPUT, 0) /* (AA15/Y15) RGMII1_RD3 */
    			AM62X_IOPAD(0x148, PIN_INPUT, 0) /* (AD17/AA16) RGMII1_RXC */
    			AM62X_IOPAD(0x144, PIN_INPUT, 0) /* (AE17/W14) RGMII1_RX_CTL */
    			AM62X_IOPAD(0x134, PIN_OUTPUT, 0) /* (AE20/U14) RGMII1_TD0 */
    			AM62X_IOPAD(0x138, PIN_OUTPUT, 0) /* (AD20/AA19) RGMII1_TD1 */
    			AM62X_IOPAD(0x13c, PIN_OUTPUT, 0) /* (AE18/Y17) RGMII1_TD2 */
    			AM62X_IOPAD(0x140, PIN_OUTPUT, 0) /* (AD18/AA18) RGMII1_TD3 */
    			AM62X_IOPAD(0x130, PIN_OUTPUT, 0) /* (AE19/W16) RGMII1_TXC */
    			AM62X_IOPAD(0x12c, PIN_OUTPUT, 0) /* (AD19/V15) RGMII1_TX_CTL */
    		>;
    	};
    
    	ospi0_pins_default: ospi0-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x000, PIN_OUTPUT, 0) /* (H24) OSPI0_CLK */
    			AM62X_IOPAD(0x02c, PIN_OUTPUT, 0) /* (F23) OSPI0_CSn0 */
    			AM62X_IOPAD(0x00c, PIN_INPUT, 0) /* (E25) OSPI0_D0 */
    			AM62X_IOPAD(0x010, PIN_INPUT, 0) /* (G24) OSPI0_D1 */
    			AM62X_IOPAD(0x014, PIN_INPUT, 0) /* (F25) OSPI0_D2 */
    			AM62X_IOPAD(0x018, PIN_INPUT, 0) /* (F24) OSPI0_D3 */
    			AM62X_IOPAD(0x01c, PIN_INPUT, 0) /* (J23) OSPI0_D4 */
    			AM62X_IOPAD(0x020, PIN_INPUT, 0) /* (J25) OSPI0_D5 */
    			AM62X_IOPAD(0x024, PIN_INPUT, 0) /* (H25) OSPI0_D6 */
    			AM62X_IOPAD(0x028, PIN_INPUT, 0) /* (J22) OSPI0_D7 */
    			AM62X_IOPAD(0x008, PIN_INPUT, 0) /* (J24) OSPI0_DQS */
    		>;
    	};
    
    	main_usb1_pins_default: main-usb1-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x0258, PIN_OUTPUT, 0) /* (F18/E16) USB1_DRVVBUS */
    		>;
    	};
    
    	main_mcasp1_pins_default: main-mcasp1-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x090, PIN_INPUT, 2) /* (M24) GPMC0_BE0N_CLE.MCASP1_ACLKX */
    			AM62X_IOPAD(0x098, PIN_INPUT, 2) /* (U23) GPMC0_WAIT0.MCASP1_AFSX */
    			AM62X_IOPAD(0x08c, PIN_OUTPUT, 2) /* (L25) GPMC0_WEN.MCASP1_AXR0 */
    			AM62X_IOPAD(0x084, PIN_INPUT, 2) /* (L23) GPMC0_ADVN_ALE.MCASP1_AXR2 */
    		>;
    	};
    
    	main_dss0_pins_default: main-dss0-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x0100, PIN_OUTPUT, 0) /* (AC25) VOUT0_VSYNC */
    			AM62X_IOPAD(0x00f8, PIN_OUTPUT, 0) /* (AB24) VOUT0_HSYNC */
    			AM62X_IOPAD(0x0104, PIN_OUTPUT, 0) /* (AC24) VOUT0_PCLK */
    			AM62X_IOPAD(0x00fc, PIN_OUTPUT, 0) /* (Y20) VOUT0_DE */
    			AM62X_IOPAD(0x00b8, PIN_OUTPUT, 0) /* (U22) VOUT0_DATA0 */
    			AM62X_IOPAD(0x00bc, PIN_OUTPUT, 0) /* (V24) VOUT0_DATA1 */
    			AM62X_IOPAD(0x00c0, PIN_OUTPUT, 0) /* (W25) VOUT0_DATA2 */
    			AM62X_IOPAD(0x00c4, PIN_OUTPUT, 0) /* (W24) VOUT0_DATA3 */
    			AM62X_IOPAD(0x00c8, PIN_OUTPUT, 0) /* (Y25) VOUT0_DATA4 */
    			AM62X_IOPAD(0x00cc, PIN_OUTPUT, 0) /* (Y24) VOUT0_DATA5 */
    			AM62X_IOPAD(0x00d0, PIN_OUTPUT, 0) /* (Y23) VOUT0_DATA6 */
    			AM62X_IOPAD(0x00d4, PIN_OUTPUT, 0) /* (AA25) VOUT0_DATA7 */
    			AM62X_IOPAD(0x00d8, PIN_OUTPUT, 0) /* (V21) VOUT0_DATA8 */
    			AM62X_IOPAD(0x00dc, PIN_OUTPUT, 0) /* (W21) VOUT0_DATA9 */
    			AM62X_IOPAD(0x00e0, PIN_OUTPUT, 0) /* (V20) VOUT0_DATA10 */
    			AM62X_IOPAD(0x00e4, PIN_OUTPUT, 0) /* (AA23) VOUT0_DATA11 */
    			AM62X_IOPAD(0x00e8, PIN_OUTPUT, 0) /* (AB25) VOUT0_DATA12 */
    			AM62X_IOPAD(0x00ec, PIN_OUTPUT, 0) /* (AA24) VOUT0_DATA13 */
    			AM62X_IOPAD(0x00f0, PIN_OUTPUT, 0) /* (Y22) VOUT0_DATA14 */
    			AM62X_IOPAD(0x00f4, PIN_OUTPUT, 0) /* (AA21) VOUT0_DATA15 */
    			AM62X_IOPAD(0x005c, PIN_OUTPUT, 1) /* (R24) GPMC0_AD8.VOUT0_DATA16 */
    			AM62X_IOPAD(0x0060, PIN_OUTPUT, 1) /* (R25) GPMC0_AD9.VOUT0_DATA17 */
    			AM62X_IOPAD(0x0064, PIN_OUTPUT, 1) /* (T25) GPMC0_AD10.VOUT0_DATA18 */
    			AM62X_IOPAD(0x0068, PIN_OUTPUT, 1) /* (R21) GPMC0_AD11.VOUT0_DATA19 */
    			AM62X_IOPAD(0x006c, PIN_OUTPUT, 1) /* (T22) GPMC0_AD12.VOUT0_DATA20 */
    			AM62X_IOPAD(0x0070, PIN_OUTPUT, 1) /* (T24) GPMC0_AD13.VOUT0_DATA21 */
    			AM62X_IOPAD(0x0074, PIN_OUTPUT, 1) /* (U25) GPMC0_AD14.VOUT0_DATA22 */
    			AM62X_IOPAD(0x0078, PIN_OUTPUT, 1) /* (U24) GPMC0_AD15.VOUT0_DATA23 */
    		>;
    	};
    
    	epwm0bl_pins_default: epwm0bl-default-pins {
                    pinctrl-single,pins = <
                            AM62X_IOPAD(0x01b4, PIN_OUTPUT_PULLUP, 2) /* (A13) SPI0_CS0.EHRPWM0_A */
                    >;
            };
    };
    
    &mcu_pmx0 {
    	touchscreen_pins_default: touchscreen-default-pins {
    		pinctrl-single,pins = <
    			AM62X_MCU_IOPAD(0x0024, PIN_INPUT, 0) /* (B4) WKUP_UART0_RXD */
    			AM62X_MCU_IOPAD(0x0028, PIN_OUTPUT, 0) /* (C5) WKUP_UART0_TXD */
    		>;
    	};
    };
    
    &wkup_uart0 {
    	/* WKUP UART0 is used by DM firmware */
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&touchscreen_pins_default>;	
    };
    
    &main_uart0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_uart0_pins_default>;
    	interrupts-extended = <&gic500 GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>,
    			       <&main_pmx0 0x1c8>; /* (D14) UART0_RXD PADCONFIG114 */
    	interrupt-names = "irq", "wakeup";
    };
    
    &main_uart1 {
    	/* Main UART1 is used by TIFS firmware */
    	status = "reserved";
    };
    
    &epwm0 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&epwm0bl_pins_default>;
    	status = "okay";
     };
    
    &main_gpio0 {
    	status = "okay";
    };
    
    &main_i2c0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_i2c0_pins_default>;
    	clock-frequency = <400000>;
    
            eeprom@51 {
                    compatible = "atmel,24c512";
                    reg = <0x51>;
    		pagesize = <64>;
            };
    
    	touchscreen@5d {
    		status = "okay";
                    compatible = "goodix,gt9xx";
                    reg = <0x5d>;
                    pinctrl-names = "default";
                    pinctrl-0 = <&touchscreen_pins_default>;
    		//pinctrl-0 = <&main_i2c0_pins_default>;
                    interrupt-parent = <&mcu_gpio0>;
                    interrupts = <9 IRQ_TYPE_EDGE_FALLING>;  //IRQ_TYPE_EDGE_FALLING
                    irq-gpios = <&mcu_gpio0 9 GPIO_ACTIVE_LOW>; //IRQ_TYPE_EDGE_FALLING
    		irq-flags = <2>;
                    reset-gpios = <&mcu_gpio0 10 GPIO_ACTIVE_LOW>;
                    touchscreen-size-x = <480>;
                    touchscreen-size-y = <800>;
    		touchscreen-max-w = <1024>;
                    touchscreen-max-p = <1024>;
                    goodix,type-a-report = <0>;
                    goodix,driver-send-cfg = <0>;
                    goodix,create-wr-node = <1>;
                    goodix,wakeup-with-reset = <0>;
                    goodix,resume-in-workqueue = <0>;
                    goodix,int-sync = <1>;
                    goodix,swap-x2y = <1>;
                    goodix,esd-protect = <1>;
                    goodix,auto-update-cfg = <0>;
                    goodix,power-off-sleep = <0>;
                    goodix,pen-suppress-finger = <0>;
        	};     
    
    	// taeha 190812 gt911 touch driver
            /*
            goodix@5d {
                            compatible = "goodix,gt9xx";
                            reg = <0x5d>;
                            pinctrl-names = "default";
                            pinctrl-0 = <&touchscreen_pins_default>;
                            reset-gpios = <&mcu_gpio0 10 GPIO_ACTIVE_LOW>;
                            irq-gpios = <&mcu_gpio0 9 GPIO_ACTIVE_LOW>;
                            touchscreen-size-x = <480>;
                            touchscreen-size-y = <800>;
                            touchscreen-max-w = <1024>;
                            touchscreen-max-p = <1024>;
                            goodix,type-a-report = <0>;
                            goodix,driver-send-cfg = <0>;
                            goodix,create-wr-node = <1>;
                            goodix,wakeup-with-reset = <0>;
                            goodix,resume-in-workqueue = <0>;
                            goodix,int-sync = <1>;
                            goodix,swap-x2y = <1>;
                            goodix,esd-protect = <1>;
                            goodix,auto-update-cfg = <0>;
                            goodix,power-off-sleep = <0>;
                            goodix,pen-suppress-finger = <0>;
            };
    
    	*/
    
    	/*
    	goodix_ts@5d {
    			compatible = "goodix,gt911";
    			status = "okay";
    			reg = <0x5d>;
    			interrupt-parent = <&mcu_gpio0>;
    			//interrupts = <17 0x2008>;
    			vdd_ana-supply = <&pm8226_l19>;
    			vcc_i2c-supply = <&pm8226_lvs1>;
    			//goodix,rst-gpio = <&mcu_gpio0 10 GPIO_ACTIVE_LOW>;
    			//goodix,irq-gpio = <&mcu_gpio0 9 GPIO_ACTIVE_LOW>;
    			touchscreen-size-x = <800>;
    			touchscreen-size-y = <480>;
    			touchscreen-inverted-x = <0>;
    			touchscreen-inverted-y = <0>;
    			goodix,cfg-group0 = [
    				42 D0 02 00 05 05 75 01 01 0F 24 
    				0F 64 3C 03 05 00 00 00 02 00 00 
    				00 16 19 1C 14 8C 0E 0E 24 00 31 
    				0D 00 00 00 83 33 1D 00 41 00 00 
    				00 00 00 08 0A 00 2B 1C 3C 94 D5 
    				03 08 00 00 04 93 1E 00 82 23 00 
    				74 29 00 69 2F 00 5F 37 00 5F 20 
    				40 60 00 F0 40 30 55 50 27 00 00 
    				00 00 00 00 00 00 00 00 00 00 00 
    				00 00 00 00 00 00 00 14 19 00 00 
    				50 50 02 04 06 08 0A 0C 0E 10 12 
    				14 16 18 1A 1C 00 00 00 00 00 00 
    				00 00 00 00 00 00 00 00 00 00 1D 
    				1E 1F 20 21 22 24 26 28 29 2A 1C 
    				18 16 14 13 12 10 0F 0C 0A 08 06 
    				04 02 00 00 00 00 00 00 00 00 00 
    				00 00 00 00 00 00 00 00 9C 01];
    			goodix,cfg-group2 = [
    				48 D0 02 00 05 05 75 01 01 0F 24 
    				0F 64 3C 03 05 00 00 00 02 00 00 
    				00 16 19 1C 14 8C 0E 0E 24 00 31 
    				0D 00 00 00 83 33 1D 00 41 00 00 
    				3C 0A 14 08 0A 00 2B 1C 3C 94 D5 
    				03 08 00 00 04 93 1E 00 82 23 00 
    				74 29 00 69 2F 00 5F 37 00 5F 20 
    				40 60 00 F0 40 30 55 50 27 00 00 
    				00 00 00 00 00 00 00 00 00 00 00 
    				00 00 00 00 00 00 00 14 19 00 00 
    				50 50 02 04 06 08 0A 0C 0E 10 12 
    				14 16 18 1A 1C 00 00 00 00 00 00 
    				00 00 00 00 00 00 00 00 00 00 1D 
    				1E 1F 20 21 22 24 26 28 29 2A 1C 
    				18 16 14 13 12 10 0F 0C 0A 08 06 
    				04 02 00 00 00 00 00 00 00 00 00 
    				00 00 00 00 00 00 00 00 3C 01];
    		};
    	*/
    };
    
    &main_i2c1 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_i2c1_pins_default>;
    	clock-frequency = <100000>;
    
            pcf8523_rtc: rtc@68 {
                    compatible = "nxp,pcf8523";
                    reg = <0x68>;
    		quartz-load-femtofarads = <1250>;
    	}; 
    
    	tas2505: tas2505@18 {
                    #sound-dai-cells = <0>;
                    compatible = "ti,tas2505";
                    reg = <0x18>;
                    //reset-gpios = <&mcu_gpio0 3 GPIO_ACTIVE_LOW>;
                    gpio-reset = <&mcu_gpio0 3 GPIO_ACTIVE_LOW>;
                    clock-source = <1>;/* 0: MCLK, 1: BCLK */
                    status = "ok";
            };
    
    };
    
    /*
    &main_i2c2 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_i2c2_pins_default>;
    	clock-frequency = <400000>;
    };
    */
    
    &sdhci0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_mmc0_pins_default>;
    	ti,driver-strength-ohm = <50>;
    	disable-wp;
    };
    
    &sdhci1 {
    	/* SD/MMC */
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_mmc1_pins_default>;
    	ti,driver-strength-ohm = <50>;
    	disable-wp;
    };
    
    &cpsw3g {
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_rgmii1_pins_default>;
    };
    
    &cpsw_port1 {
    	phy-mode = "rgmii-rxid";
    	phy-handle = <&cpsw3g_phy0>;
    };
    
    &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;
    	};
    };
    
    &mailbox0_cluster0 {
    	mbox_m4_0: mbox-m4-0 {
    		ti,mbox-rx = <0 0 0>;
    		ti,mbox-tx = <1 0 0>;
    	};
    
    	mbox_r5_0: mbox-r5-0 {
    		ti,mbox-rx = <2 0 0>;
    		ti,mbox-tx = <3 0 0>;
    	};
    };
    
    &mcu_m4fss {
    	mboxes = <&mailbox0_cluster0 &mbox_m4_0>;
    	memory-region = <&mcu_m4fss_dma_memory_region>,
    			<&mcu_m4fss_memory_region>;
    };
    
    &wkup_r5fss0_core0 {
    	mboxes = <&mailbox0_cluster0 &mbox_r5_0>;
    	memory-region = <&wkup_r5fss0_core0_dma_memory_region>,
    			<&wkup_r5fss0_core0_memory_region>;
    };
    
    &usbss0 {
    	status = "okay";
    	ti,vbus-divider;
    };
    
    &usbss1 {
    	status = "okay";
    	ti,vbus-divider;
    };
    
    &usb1 {
    	dr_mode = "host";
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_usb1_pins_default>;
    };
    
    &mcasp1 {
    	status = "okay";
    	#sound-dai-cells = <0>;
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_mcasp1_pins_default>;
    	op-mode = <0>;          /* MCASP_IIS_MODE */
    	tdm-slots = <8>;
    	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
    	       1 0 2 0
    	>;
    	tx-num-evt = <32>;
    	rx-num-evt = <32>;
    };
    
    &mcasp2 {
            status = "disabled";
    };
    
    &ospi0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&ospi0_pins_default>;
    };
    
    &ti_csi2rx0 {
    	status = "okay";
    };
    
    &dphy0 {
    	status = "okay";
    };
    
    &dss {
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_dss0_pins_default>;
    };
    
    &dss_ports {
    	/* VP2: DPI Output */
    	port@1 {
    		reg = <1>;
    
    		dpi1_out: endpoint {
    			remote-endpoint = <&lcd_in>;
    		};
    	};
    };
    
    &mcu_gpio0 {
            status = "okay";
    };
    
    &mcu_gpio_intr {
            status = "okay";
    };
    
    

    Kernel log:

    3323.kernel_log_20241016.txt

  • Paul,

    I am going to close this thread as we are already discussing it on the below one.

    https://e2e.ti.com/support/processors-group/processors/f/791/t/1417547

    Best Regards,

    Suren