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

error code “-16” means resource busy. Since this only appears after you adding the cd-gpios, it means your cd-gpios is occupied by other driver.

According to your device tree, it is occupied by this node underpfsd

tach_gpio = <0x5b 0xca 0x1>;

You can just remove the tach_gpio first.

1 Like

Hello,

Can I find the line containing tach_gpio in the dtsi files and delete it?

Thank you.

Yes, you can delete it.
Just grep the dtsi files you have and find it by yourself.

1 Like

Hello,

Can there be multiple things to delete?

Thank you.

I don’t know. Search it by yourself. Please stop asking such question. This is just basic code tracing. If you are a engineer, then it should be easy job for you.

1 Like

Hello,

Yes, it’s not hard to find.
tach_gpio is found in dts and dtsi files.
Can I delete all tach_gpio found?

Thank you.

Hello,

Share the dmesg after deleting tach_gpio and applying the built dtb to jetson nano.
dmesg7.txt (83.6 KB)

The sd card is still not recognized
[1.945149] sdhci: Secure Digital Host Controller Interface driver
[ 1.945151] sdhci: Copyright(c) Pierre Ossman
[ 1.945154] sdhci-pltfm: SDHCI platform and OF driver helper
[ 1.945513] sdhci-tegra sdhci-tegra.3: Client registration for eMC Successful
[ 1.949895] sdhci-tegra sdhci-tegra.2: Got CD GPIO
[ 1.950304] sdhci-tegra sdhci-tegra.2: Client registration for eMC Successful

[ 1.985984] mmc0: SDHCI controller on sdhci-tegra.3 [sdhci-tegra.3] using ADMA 64-bit with 64 bit addr
[ 1.995755] tegra-asoc: sound: ADMAIF1 <-> ADMAIF1 mapping ok
[ 1.995881] tegra-asoc: sound: ADMAIF2 <-> ADMAIF2 mapping ok
[ 1.996001] tegra-asoc: sound: ADMAIF3 <-> ADMAIF3 mapping ok
[ 1.996120] tegra-asoc: sound: ADMAIF4 <-> ADMAIF4 mapping ok
[ 1.996240] tegra-asoc: sound: ADMAIF5 <-> ADMAIF5 mapping ok
[ 1.996357] tegra-asoc: sound: ADMAIF6 <-> ADMAIF6 mapping ok
[ 1.996475] tegra-asoc: sound: ADMAIF7 <-> ADMAIF7 mapping ok
[ 1.996592] tegra-asoc: sound: ADMAIF8 <-> ADMAIF8 mapping ok
[ 1.996710] tegra-asoc: sound: ADMAIF9 <-> ADMAIF9 mapping ok
[ 1.996836] tegra-asoc: sound: ADMAIF10 <-> ADMAIF10 mapping ok
[ 1.998156] mmc1: SDHCI controller on sdhci-tegra.2 [sdhci-tegra.2] using ADMA 64-bit with 64 bit addr

This is what you see.

Thank you.

Please compare your full dts with this one.

If all the properties are same, then we should check the hardware design.

1 Like

Hello,

Are you talking about this file?

Thank you.

Hello,

I’m using the diff function of the editor to compare.
It seems that there are other parts.

I don’t know when I see it.
Could you please confirm?

tegra210-p3448-0002-p3449-0000-b00_my.dts (327.0 KB)
tegra210-p3448-0002-p3449-0000-b00.dts (349.1 KB)

Thank you.

Just compare the sdmmc3 controller part…

Hello,

Everything seems to be the same except for the address value.
May I ask you to cross check the file I gave you?
I’m not sure

Thank you.

Sdmmc3 controller means the sdhci where you added the cd gpios and always-on property

Hello,

The left is the dts file I made, and the right is the dts file I told you to compare.
Something is different. And vmmc-always-on is not applied to the dts file you told me to compare.

Thank you.

Just add those missing on your side back. Except the phandle.

And don’t remove the always-on. It is needed.

1 Like

Hello,

Thank you for your hard work.

everything you told me
tegra210-porg-p3448-common.dtsi

I have added it to sdhci@700b0400
Can I add it here as well?

Thank you.

Hello,

Is it possible to exclude all lines containing phandle as follows?
linux,phandle = <0xc4>;
phandle = <0xc4>;

phandle is just a id and it differs on each person’s device tree. Thus, no need to care about others’ phandle.

1 Like

Hello,

sd card still not recognized
dmesg is attached.

dmesg12.txt (84.1 KB)

Thank you.

Please also share me the full dts.

1 Like