Nvidia Nano EMMC not detecting Partition on sdmmc3 SD Card

If I were to move R329 to R350 and leave R329 unpopulated, that would disconnect the SD-EN from the SD-CD line. R350 would act as a pull-down and then Pin 195 SD-EN would be used to enable and disable the load switch. Would this make more sense?

What would I need to change in the device tree config for the SD-EN line?


You can just write a similar regulator as other regulator samples but give your SD-EN GPIO to the regulaotr and assign this regulator to your vmmc-supply. Also, since this is not always-on, you don’t need to add always on property to your sdhci.

We got a little further along. At least now gdisk is no longer freezing.

I’ve attached our current dmesg and dts file along with the patches I used that show specifically where the changes are. Also, it should be mentioned that the errors indicate IO errors or corrupted file system, but the SD card can be read by the Nano just fine if we connect it using a USB SD card adapter. We are using

l4t_payload_updater_t210 bl_update_payload

to apply the device tree updates. Build.sh is the script that I am using to actually create the bl_update_payload file

./build.sh dev dtb bup

dev: don’t delete files at end and show all build.sh commands as they are run
dtb: build updated device-tree
bup: generate bup file

bl_update_payload (10.8 MB)
build.sh (34.4 KB)
20220222-gpio.dtsi (1.9 KB)
20210713-pinmux.dtsi (38.1 KB)
tegra210-p3448-0002-p3449-0000-b00.dts (318.6 KB)
tegra210-sdhci.dtsi.32.6.1.patch (434 Bytes)
tegra210-porg-fixed-p3448-0000-a00.dtsi.32.6.1.patch (527 Bytes)
tegra210-porg-p3448-common.dtsi.32.6.1.patch (384 Bytes)
dmesg_20220222_14G.txt (63.8 KB)
lsblk_output_20220223.txt (1.2 KB)

The changes to the hardware we made are to remove R329 and install a 100k resistor at R350.

Output from lsblk -l /dev/mmcblk1:

GPT fdisk (gdisk) version 1.0.3
Partition table scan:
MBR: not present
BSD: not present
APM: not present
GPT: not present
Creating new GPT entries.
Disk /dev/mmcblk1: 124735488 sectors, 59.5 GiB
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 2D7AAD38-B346-4C86-A5FE-BFD2F23D7E92
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 124735454
Partitions will be aligned on 2048-sector boundaries
Total free space is 124735421 sectors (59.5 GiB)
Number Start (sector) End (sector) Size Code Name

When the board starts, could you check whether the VDD from U51 is really 3.3v?

We found an issue where the 3v3 appeared to drop after power up. After correcting the issue and confirming a steady 3v3 supply to the sd card, the original problem came back. That is, we could see and identify the size of the sd card, but attempting to communicate with the sd card would cause the system to freeze.

Are there any settings we can change to isolate the cause of the problem? Are there some timings we can adjust to isolate the cause?

Make this more easier to understand

  1. If your power source is always there since the beginning of the board power on and it never goes down, then you need to add always-on to your device tree. And you don’t need to configure the gpio inside the regulator because it cannot control.

  2. If you need a GPIO to control the power source, then there is no always-on inside the sdhci device tree and regulator. Give the regulator that is with this GPIO to your vmmc-supply. Also, probe the 3v3 supply to make sure it is really up when sdhci driver is up.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.