Tool/software:
Hi, Sir:
Our codebase is ti-processor-sdk-linux-edgeai-am62a-evm-10_00_00_08
Based on our HW design (which is similar with EVM board), we use sdcard to boot up.
Following SK-AM62P-LP: How to Set SD Card to 3.3v only (low speed) to disable high speed mode.
And we also disable 2nd unused cpu.
But when booting up, we would get stuck in kernel to show below:
[ 12.037450] mmc0: CQHCI version 5.10 [ 12.080971] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit [ 12.262364] mmc0: Failed to initialize a non-removable card [ 12.329280] pca953x 1-0022: supply vcc not found, using dummy regulator [ 12.341668] pca953x 1-0022: using AI [ 12.345431] pca953x 1-0022: failed writing register [ 12.350478] pca953x: probe of 1-0022 failed with error -121 [ 12.360986] debugfs: Directory 'pd:182' with parent 'pm_genpd' already present! [ 12.368367] debugfs: Directory 'pd:182' with parent 'pm_genpd' already present! [ 12.377375] clk: Disabling unused clocks [ 12.385840] ALSA device list: [ 12.388906] No soundcards found. [ 12.393114] Waiting for root device PARTUUID=c818697e-02... [ 22.623569] platform fa00000.mmc: deferred probe pending [ 22.628935] platform regulator-3: deferred probe pending [ 22.634243] platform 2b300050.target-module: deferred probe pending
In uboot, we update sd-card low speed change and our ddr config settings.
In kernel, we update sd-card low speed, and disable 2nd cpu.
Here are our changes and logs, would you help check why we got this kind error?
Thanks.
diff --git a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi index 8be252991..b65ccf1b5 100644 --- a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi +++ b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi @@ -606,16 +606,16 @@ sdhci1: mmc@fa00000 { bus-width = <4>; ti,clkbuf-sel = <0x7>; ti,otap-del-sel-legacy = <0x8>; - ti,otap-del-sel-sd-hs = <0x0>; - ti,otap-del-sel-sdr12 = <0x0>; - ti,otap-del-sel-sdr25 = <0x0>; - ti,otap-del-sel-sdr50 = <0x8>; - ti,otap-del-sel-sdr104 = <0x7>; - ti,otap-del-sel-ddr50 = <0x4>; + //ti,otap-del-sel-sd-hs = <0x0>; + //ti,otap-del-sel-sdr12 = <0x0>; + //ti,otap-del-sel-sdr25 = <0x0>; + //ti,otap-del-sel-sdr50 = <0x8>; + //ti,otap-del-sel-sdr104 = <0x7>; + //ti,otap-del-sel-ddr50 = <0x4>; ti,itap-del-sel-legacy = <0xa>; - ti,itap-del-sel-sd-hs = <0x1>; - ti,itap-del-sel-sdr12 = <0xa>; - ti,itap-del-sel-sdr25 = <0x1>; + //ti,itap-del-sel-sd-hs = <0x1>; + //ti,itap-del-sel-sdr12 = <0xa>; + //ti,itap-del-sel-sdr25 = <0x1>; status = "disabled"; }; diff --git a/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts b/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts old mode 100644 new mode 100755 index 3047586a6..7a816c779 --- a/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts +++ b/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts @@ -76,17 +76,21 @@ wkup_r5fss0_core0_memory_region: r5f-dma-memory@9c900000 { reg = <0x00 0x9c900000 0x00 0x01e00000>; no-map; }; + /* disable mcu mcu_r5fss0_core0_dma_memory_region: r5f-dma-memory@9b800000 { compatible = "shared-dma-pool"; reg = <0x00 0x9b800000 0x00 0x100000>; no-map; }; + */ + /* disable mcu mcu_r5fss0_core0_memory_region: r5f-dma-memory@9b900000 { compatible = "shared-dma-pool"; reg = <0x00 0x9b900000 0x00 0x0f00000>; no-map; }; + */ c7x_0_dma_memory_region: c7x-dma-memory@99800000 { compatible = "shared-dma-pool"; @@ -689,7 +693,7 @@ &sdhci1 { /* SD/MMC */ status = "okay"; vmmc-supply = <&vdd_mmc1>; - vqmmc-supply = <&vddshv_sdio>; + //vqmmc-supply = <&vddshv_sdio>; pinctrl-names = "default"; pinctrl-0 = <&main_mmc1_pins_default>; disable-wp; @@ -840,6 +844,7 @@ mbox_c7x_0: mbox-c7x-0 { }; }; +/* disable mcu &mailbox0_cluster2 { ti,mbox-num-fifos = <2>; mbox_mcu_r5_0: mbox-mcu-r5-0 { @@ -847,6 +852,7 @@ mbox_mcu_r5_0: mbox-mcu-r5-0 { ti,mbox-tx = <1 0 0>; }; }; +*/ &c7x_0 { mboxes = <&mailbox0_cluster1>, <&mbox_c7x_0>; @@ -860,11 +866,18 @@ &wkup_r5fss0_core0 { <&wkup_r5fss0_core0_memory_region>; }; +/* disable mcu &mcu_r5fss0_core0 { mboxes = <&mailbox0_cluster2>, <&mbox_mcu_r5_0>; memory-region = <&mcu_r5fss0_core0_dma_memory_region>, <&mcu_r5fss0_core0_memory_region>; }; +*/ + +/* disable MCU R5F subsystem */ +&mcu_r5fss0 { + status = "disabled"; +}; #define K3_TS_OFFSET(pa, val) (0x4+(pa)*4) (0x10000 | val)
diff --git a/arch/arm/dts/k3-am62-main.dtsi b/arch/arm/dts/k3-am62-main.dtsi index 4d8ad7bd..430ab151 100644 --- a/arch/arm/dts/k3-am62-main.dtsi +++ b/arch/arm/dts/k3-am62-main.dtsi @@ -606,16 +606,16 @@ bus-width = <4>; ti,clkbuf-sel = <0x7>; ti,otap-del-sel-legacy = <0x8>; - ti,otap-del-sel-sd-hs = <0x0>; - ti,otap-del-sel-sdr12 = <0x0>; - ti,otap-del-sel-sdr25 = <0x0>; - ti,otap-del-sel-sdr50 = <0x8>; - ti,otap-del-sel-sdr104 = <0x7>; - ti,otap-del-sel-ddr50 = <0x4>; + //ti,otap-del-sel-sd-hs = <0x0>; + //ti,otap-del-sel-sdr12 = <0x0>; + //ti,otap-del-sel-sdr25 = <0x0>; + //ti,otap-del-sel-sdr50 = <0x8>; + //ti,otap-del-sel-sdr104 = <0x7>; + //ti,otap-del-sel-ddr50 = <0x4>; ti,itap-del-sel-legacy = <0xa>; - ti,itap-del-sel-sd-hs = <0x1>; - ti,itap-del-sel-sdr12 = <0xa>; - ti,itap-del-sel-sdr25 = <0x1>; + //ti,itap-del-sel-sd-hs = <0x1>; + //ti,itap-del-sel-sdr12 = <0xa>; + //ti,itap-del-sel-sdr25 = <0x1>; status = "disabled"; }; diff --git a/arch/arm/dts/k3-am62a7-r5-sk.dts b/arch/arm/dts/k3-am62a7-r5-sk.dts index fdae9fcd..c0d4a667 100644 --- a/arch/arm/dts/k3-am62a7-r5-sk.dts +++ b/arch/arm/dts/k3-am62a7-r5-sk.dts @@ -26,7 +26,7 @@ clocks = <&k3_clks 61 0>; assigned-clocks = <&k3_clks 61 0>, <&k3_clks 135 0>; assigned-clock-parents = <&k3_clks 61 2>; - assigned-clock-rates = <200000000>, <1200000000>; + assigned-clock-rates = <200000000>, <1000000000>; ti,sci = <&dmsc>; ti,sci-proc-id = <32>; ti,sci-host-id = <10>; diff --git a/arch/arm/dts/k3-am62a7-sk.dts b/arch/arm/dts/k3-am62a7-sk.dts index e87c8f90..86994163 100644 --- a/arch/arm/dts/k3-am62a7-sk.dts +++ b/arch/arm/dts/k3-am62a7-sk.dts @@ -690,7 +690,7 @@ /* SD/MMC */ status = "okay"; vmmc-supply = <&vdd_mmc1>; - vqmmc-supply = <&vddshv_sdio>; + //vqmmc-supply = <&vddshv_sdio>; pinctrl-names = "default"; pinctrl-0 = <&main_mmc1_pins_default>; disable-wp;