Some sdcard identified failed

I have config sdmmc3 in the dts to support sdcard,
and it was worked success.

[   34.138001] vdd_sys_en: disabling
[   92.886655] mmc1: host does not support reading read-only switch, assuming write-enable
[   93.027609] mmc1: hw tuning done ...
[   93.027655] mmc1: new ultra high speed SDR104 SDHC card at address aaaa
[   93.028230] mmcblk1: mmc1:aaaa SC32G 29.7 GiB 
[   93.034306] GPT:last_usable_lbas don't match.
[   93.034417] GPT:62333887 != 62333918
[   93.034479] GPT:partition_entry_array_crc32 values don't match: 0x810a376f != 0x96a6f8db
[   93.034603] GPT: Use GNU Parted to correct GPT errors.
[   93.034714]  mmcblk1: p1 p2 p3 p4 p5
[  120.564398] mmc1: Disabling vmmc regulator
[  120.564532] mmc1: card aaaa removed
[  121.721158] mmc1: Enabling vmmc regulator
[  134.118753] mmc1: host does not support reading read-only switch, assuming write-enable
[  134.259397] mmc1: hw tuning done ...
[  134.259438] mmc1: new ultra high speed SDR104 SDHC card at address aaaa
[  134.260804] mmcblk1: mmc1:aaaa SC32G 29.7 GiB 
[  134.268788] GPT:last_usable_lbas don't match.
[  134.268911] GPT:62333887 != 62333918
[  134.268978] GPT:partition_entry_array_crc32 values don't match: 0x810a376f != 0x96a6f8db
[  134.269107] GPT: Use GNU Parted to correct GPT errors.
[  134.269214]  mmcblk1: p1 p2 p3 p4 p5
[  147.259279] mmc1: Disabling vmmc regulator
[  147.259433] mmc1: card aaaa removed
[  148.400898] mmc1: Enabling vmmc regulator

but when I try to use another sdcard,it was failed.
log is below :
dmesg_sdcard_failed.log (254.8 KB)

please try to format all the cards to ext4 and try again.

thank you for reply!
I 'll try it soon.

I change the format to EXT4, but the same error happened again.

this is the method how I switch the format

sudo umount /dev/sde
sudo mkfs.ext4 /dev/sde

Do you have AGX Xavier devkit that can reproduce this issue?

This is a nice direction, I never think it bofore.
I will try it tomorrow, thx u!

my devkit is Jetson Xavier Nx , it doesn’ t have a sdcard slot on carried board but on the SOM.
Do we have another method?

I said Xavier AGX devkit…

our machine structure is Jetson Xavier Nx SOM + cusomer carried board .
I’m not sure if we can flash Xavier AGX devkit in it.

No, I mean go get one AGX Xavier devkit and see if you can reproduce this on that…

What device tree change did you update for your carrier board?
And do you have schematic to share?

ohhh… I’m sorry for misunderstanding!!
I dont have a AGX Xavier devkit.
this is my change:

diff --git a/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-fixed-regulator-p3668.dtsi b/hardware/nvidia/platform/t19x/jakku/kernel-dts/commo
n/tegra194-fixed-regulator-p3668.dtsi
index 221cb168c..8de8a9c73 100644
--- a/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-fixed-regulator-p3668.dtsi
+++ b/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-fixed-regulator-p3668.dtsi
@@ -35,6 +35,18 @@
                        enable-active-high;
                };
 
+               //add by xiaoz regulator sdmmc3 control
+               p3668_vdd_sdmmc3_sw: regulator@108 {
+                        compatible = "regulator-fixed";
+                        reg = <108>;
+                        regulator-name = "vdd-sdmmc3-sw";
+                        regulator-min-microvolt = <3300000>;
+                        regulator-max-microvolt = <3300000>;
+                       //VCC3V3_SD #267
+                        gpio = <&tegra_aon_gpio TEGRA194_AON_GPIO(CC, 3) 0>;
+                        enable-active-high;
+                };
+
                p3668_vdd_1v8_sd: regulator@104 {
                        compatible = "regulator-fixed";
                        reg = <104>;
diff --git a/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-p3668-common.dtsi b/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-p3668-common.dtsi
index 05da4e3ac..64721d0a3 100644
--- a/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-p3668-common.dtsi
+++ b/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-p3668-common.dtsi
@@ -299,6 +298,18 @@
                vmmc-supply = <&p3668_vdd_sdmmc1_sw>;
                status = "okay";
        };
+       
+       //add by xiaoz enable sdmmc3 to support SD-card
+       sdhci_sd3: sdhci@3440000 {
+                mmc-ocr-mask = <0x0>;
+                cd-inverted;
+                cd-gpios = <&tegra_main_gpio TEGRA194_MAIN_GPIO(Z, 5) 0>;
+                nvidia,cd-wakeup-capable;
+                mmc-ocr-mask = <0>;
+                cd-inverted;
+                vmmc-supply = <&p3668_vdd_sdmmc3_sw>;
+                status = "okay";
+        };
 
        mipical@3990000 {
                status = "okay";
diff --git a/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-power-tree-p3668.dtsi b/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-power-tree-p3668.dtsi
index 6f62ee7b8..77467b373 100644
--- a/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-power-tree-p3668.dtsi
+++ b/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-power-tree-p3668.dtsi
@@ -27,6 +27,11 @@
                vmmc-supply = <&p3668_vdd_sdmmc1_sw>;
        };
 
+       //add by xiaoz sdmmc3 support SD-card
+       sdhci@3440000 {
+                vmmc-supply = <&p3668_vdd_sdmmc3_sw>;
+        };
+
        ether_qos@2490000 {
                vddio_sys_enet_bias-supply = <&battery_reg>;
                vddio_enet-supply = <&battery_reg>;

Do you have schematic to share?


this is the schematic

Hi, WayneWWW,
do u have any suggestion?

Could you share the schematic that has every pin in use here?

please check it
23-0321 sdcard.rar (253.3 KB)

Could you measure the 3v3 is really enabled by the EN pin when you plug in the sdcard?

before I plug in the sdcard, 3v3 is always high.
after I unplug the sdcard,3v3 is being pulled low and high in a short time

so I can make sure that 3v3 is really controlled.
and this is the plug sdcard and success log.

[  762.478752] mmc1: host does not support reading read-only switch, assuming write-enable
[  762.624922] GPT:last_usable_lbas don't match.
[  762.625045] GPT:62333887 != 62333918
[  762.625112] GPT:partition_entry_array_crc32 values don't match: 0x810a376f != 0x96a6f8db
[  762.625263] GPT: Use GNU Parted to correct GPT errors.

root@tegra-ubuntu:~# 
root@tegra-ubuntu:~# fdisk -l
...
Disk /dev/mmcblk1: 29.7 GiB, 31914983424 bytes, 62333952 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 23000000-0000-4C4A-8000-699000005ABB

Device          Start      End  Sectors  Size Type
/dev/mmcblk1p1  16384    24575     8192    4M unknown
/dev/mmcblk1p2  24576    32767     8192    4M unknown
/dev/mmcblk1p3  32768    98303    65536   32M unknown
/dev/mmcblk1p4  98304   163839    65536   32M unknown
/dev/mmcblk1p5 237568 62333887 62096320 29.6G unknown