I’m seeing slow write speeds of 1.5 MB/s with the production module on our custom boards. We’re using L4T 32.4.4.
The write speeds appear normal initially and then regress to 1.5 MB/s. For eg. if I wget a large file to the SD card, at first I might see download speeds of 10 MB/s, but after a few minutes the download is bottlenecked by the SD card write speed to a very consistent 1.5 MB/s.
Here is /sys/kernel/debug/mmc1/ios (never changes for all suggested patches):
$ sudo cat /sys/kernel/debug/mmc1/ios clock: 50000000 Hz vdd: 21 (3.3 ~ 3.4 V) bus mode: 2 (push-pull) chip select: 0 (don't care) power mode: 2 (on) bus width: 2 (4 bits) timing spec: 2 (sd high-speed) signal voltage: 0 (3.30 V) driver type: 0 (driver type B)
This looks like a known issue with solutions in the following discussions:
- (1) Slow SD card access speed (read+write) with Jetson Nano production module
- (2) SD Card Read/Write speed is too slow
- (3) The speed of read and write of sd card is too slow
The solution in all 3 threads above is to remove
max-clk-limit = <400000>; in tegra210-porg-p3448-common.dtsi. After applying this patch and flashing the device, the problem persists for my board and the clock speed continues to show 50MHz.
In (3) above there is another patch marked as the solution which I have also tried with the previous patches and does not work.
Finally, I’ve tried adding
nvidia,vmmc-always-on to mmc1 and again this does not seem to work. Also, on neither hard or soft reboot the clock changes from 50Mhz.
Is there anything left to try? Another engineer more familiar with embedded systems mentioned that he believes the device tree is being changed by uboot because he’s seeing the sd card in the DTB file with a max-clk-limit 400000 after flashing, though I’m not sure how to verify this.