Embedded-Design-Tutorials
Embedded-Design-Tutorials copied to clipboard
using petalinux 2021.2 vitis 2021.2 image from eMMC (sd0) image.ub read by u-boot takes a long time (~19sec): Trying to load boot images from mmc0 286172648 bytes read in 18889 ms (14.4 MiB/s) how can i significantly increase transfer rate?
using petalinux 2021.2 vitis 2021.2 image from eMMC (sd0)
root FS type: initramfs FS
boot.bin, image.ub and boot.scr are located at FAT32 partition of the eMMC.
image.ub read by u-boot takes a long time (~19sec): Trying to load boot images from mmc0 286172648 bytes read in 18889 ms (14.4 MiB/s)
how can i significantly increase transfer rate?
hi,
here is the log from u-boot:
switch to partitions #0, OK
mmc0(part 0) is current device
Scanning mmc 0:1...
Found U-Boot script /boot.scr
2710 bytes read in 16 ms (165 KiB/s)
Executing script at 20000000
Trying to load boot images from mmc0
286172648 bytes read in 18889 ms (14.4 MiB/s)
Loading kernel from FIT Image at 10000000 ...
I GET while stop at u-boot stage:
ZynqMP> version
U-Boot 2021.01 (Oct 12 2021 - 09:28:42 +0000)
ZynqMP> mmc list
mmc@ff160000: 0 (eMMC)
mmc@ff170000: 1
ZynqMP> mmc dev 0
switch to partitions #0, OK
mmc0(part 0) is current device
ZynqMP> mmcinfo
Device: mmc@ff160000
Manufacturer ID: 70
OEM: 100
Name: W5251
Bus Speed: 199999998
Mode: HS200 (200MHz)
Rd Block Len: 512
MMC version 5.0
High Capacity: Yes
Capacity: 14.3 GiB
Bus Width: 8-bit
Erase Group Size: 512 KiB
HC WP Group Size: 16 MiB
User Capacity: 14.3 GiB
Boot Capacity: 4 MiB ENH
RPMB Capacity: 4 MiB ENH
Boot area 0 is not write protected
Boot area 1 is not write protected
as expected.
the big problem is:
**ZynqMP> fatload mmc 0 0x1000000 image.ub
286172648 bytes read in 18889 ms (14.4 MiB/s)
it takes 19 seconds to u-boot to read image.ub.
why read transfer rate is so slow, 14.4MiB/s??????**
**we have 200MHz reference clock from PS subsystem, 8 bus width, means 200MByte/s capacity..so according my calculation :
286172648/200000000 = 1.43 SECONDS.
am i wrong?**
in addition kernel debug is also fine:
root@petalinux:~# cat /sys/kernel/debug/mmc0/ios
clock: 200000000 Hz
actual clock: 200000000 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: 3 (8 bits)
timing spec: 9 (mmc HS200)
signal voltage: 1 (1.80 V)
driver type: 0 (driver type B)
can somebody help?
thanks and best regards