The solution is you should try to share useful information first.
-
Your board schematic
-
Your full dts converted from the dtb.
-
Your full dmesg.
Your first patch looks more correct but I guess it didn’t match your board design.
The solution is you should try to share useful information first.
Your board schematic
Your full dts converted from the dtb.
Your full dmesg.
Your first patch looks more correct but I guess it didn’t match your board design.
1.The hardware schematic diagram is shown in the figure below
2.the dts converted from the dtb
tegra210-p3448-0002-p3449-0000-b00_dts.dts (327.1 KB)
3.dmesg
dmesg.rtf (60.2 KB)
Are you using a 3v3 for VDD or a 1v8?
The sdmmc driver for sdmmc3 does not get probed correctly because of below log.
[ 1.385300] sdhci-tegra: probe of sdhci-tegra.2 failed with error -16\par
“16” in linux error code means resource busy. Thus probably the cd-gpio you are using here are occupied by other driver.
We use 3v3
How should this be modified
Disable that driver that occupied your gpio…
There are many configuration files. How can I find the occupied GPIO
Learn to use grep command.
I have disabled other occupied GPIO. Now there are some new problems. I can see the SD card through the instruction lsblk, but I can’t see the SD card using the ‘df -h’ instruction. Then dmesg also prints some error messages.
Check this post to know how to modify your device tree.
If they are all the same, then you can review your hardware design.
Where can I find the file 9875882.diff.zip
Based on l4t r32.5.1, I modified the following parts:
1./hardware/nvidia/platform/t210/common/kernel-dts/t210-common-platforms/tegra210-p2530-common.dtsi
2./hardware/nvidia/platform/t210/porg/kernel-dts/porg-plugin-manager/tegra210-porg-plugin-manager.dtsi
3./hardware/nvidia/platform/t210/porg/kernel-dts/tegra210-porg-p3448-common.dtsi
After modifying the above three files, dmesg shows that GPIO reuse exists, so I use grep - r 'TEGRA_GPIO(Z, 2) 'instruction finds and removes files using the GPIO.
1.nvidia/platform/t210/porg/kernel-dts/porg-platforms/tegra210-porg-pwm-fan.dtsi
2.nvidia/platform/t210/jetson/kernel-dts/tegra210-jetson-cv-base-p2597-2180-a00.dts
Through the above modifications, you can view the SD card through the lsblk command, as shown in the following figure;
However, the mounting of the device cannot be viewed through the df -h command, as shown in the following figure:
Our hardware circuit diagram is:
And dmesg also printed some errors. I have tried many modification methods and can’t solve them. I hope to get some technical support
dmesg4.5.1.docx (34.2 KB)
You should convert your dtb back to dts and attach it. I don’t really care what files you modified.
Just need to check the finalized dts.
OK, this is the DTS after I converted tegra210-p3448-0002-p3449-0000-b00.dtb.
tegra210-p3448-0002-p3449-0000-b00-dts.dts (327.0 KB)
Looks correct. Please review your hardware.
Do you have any suggestions for checking the hardware circuit, such as which aspect to check
Last week, I checked the hardware circuit. After changing the hardware circuit, I can read the SD card, but the reading speed is still very slow. I deleted the limited frequency (max-clk-limit) according to the modification suggestions of the forum, but the reading speed of the SD card has not improved much, and the clock frequency is only 25MHz by default, as shown in the figure below. How can I increase this frequency to improve the reading speed of the SD card?
dmesg:
dmesg.docx (31.3 KB)
DTS:
tegra210-p3448-0002-p3449-0000-b00-dts.dts (327.0 KB)
It is not “how to adjust frequency” problem. MMC tuning does not pass so it is using the lowest frequency.
From the past experience, it is probably still a hardware issue.
[ 3.020210] mmc1: tuning execution failed: -5
You can search sdmmc3 post on jetson nano forum and you will see DTS from other people.