I'm trying to use MicroSD on a custom carrier board

Hello,

I’m trying to use MicroSD on a custom carrier board.
The circuit diagram is shown in the picture below.
Are there any fixes related to DTB?
CD (Card Detector) is used together with FAN_TACH, but there is concern about interference.

Advice please

Thank you.

There are lots of users that already asked this question before.

The conclusion for the dtb change is here.

As for the hardware design, my colleague will help answer.

1 Like

GPIO08 (FAN_TACH) can be set as SDMMC3_CD in pinmux sheet. For SD card design, please check the Product Design Guide in DLC.

The SD card supply must be enabled with a GPIO to prevent back-driving the Tegra SDMMC interface during power-on sequencing. The GPIO should have power-on reset (POR) that will ensure the supply is not enabled by default.

1 Like

Hello,

As in this link, if the sd card is not detected when the kernel source is changed and built, what should I suspect?

Thank you.

Check the log and device tree.

1 Like

Hello,

How do I check the logs?

Thank you.

Inserted the card, boot up and check dmesg.

1 Like

Hello, @WayneWWW

Hello,

Is it correct to edit as above and proceed with the process of the next image?

Thank you.

Actually only the dts needs modification. Image does not.

1 Like

Hello,

Attach the log.
dmesg1.txt (65.2 KB)

Thank you.

Hello, @WayneWWW

What files do I need to overwrite after building?

Thank you.

You didn’t enable sdhci controller in your DT at all.

Check your dmesg and search keyword “dts”. It will teach you which file you need to modify and overwrite…

Honestly, you have been working on jetson nano for almost one year, this is the basic one and you should’ve already learned it…

1 Like

Hello,

Okay. I think so too. But I’m not used to it.

I modified the same as below and compiled the kernel, but why didn’t it apply?

Thank you.

Depends on how did you flash it to your board

1 Like

Hello,

dmesg2.txt (66.4 KB)

Edit the contents of the file as in the following article.

Build dtb with the following command and
make ARCH=arm64 O=$TEGRA_KERNEL_OUT dtbs
I proceeded to flash dtb with the followng command:
sudo ./flash.sh -r -k DTB jetson-nano-devkit-emmc mmcblk0p1

Looking at dmesg, it seems that the sd card is still not found.
Where did I make a mistake?

Thank you.

Did you ever put your modifed dtb to the Linux_For_Tegra folder?

1 Like

Hello,

yes.
cp tegra210-p3448-0002-p3449-0000-b00.dtb /Linux_for_Tegra/kernel/dtb

Thank you.

Hello,

The contents of dmesg have changed a bit.
dmesg3.txt (124.6 KB)

Thank you.

Please use dtc tool to convert your dtb back to dts and check if it is really as your modifications.

You can google search how to use dtc command.

1 Like

Hello,

The contents of dmesg have changed, can you please check it?
This is dmesg3.txt attached above.

Thank you.