You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Whenever I use the UEFI firmware on my UHS-I SanDisk Extreme 64GB microSD, it takes extremely long for the bootloader to start Linux. The process clearly gets stuck while loading the kernel & initrd into memory, as shown by systemd-analyze:
While I am using systemd-boot on my system, the exact same issue happens with GRUB. (Unfortunately, systemd-boot does not seem to have proper logging capabilities, and I didn't manage to get useful info trying to debug this with GRUB yet.) The only thing I can tell is that after the bootloader's picker is shown without issues and the boot has continued, it just stays at a black screen for a minute or two before Linux seems to have been loaded, which is when the following text is shown at once:
EFI stub: Booting Linux Kernel...
EFI stub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path
EFI stub: Using DTB from configuration table
EFI stub: Exiting boot services...
It seems that what took so long is for the kernel to load; and this is on a fresh install of NixOS, with a kernel image of just 70 MB. But once these messages have been shown after the wait, the Linux kernel starts booting quickly and properly as usual.
I can rule out that the card is not at fault, as it boots all non-UEFI configurations as quickly as expected. And even with UEFI, it performs well once the system has gotten past the point of loading the kernel into memory. Additionally, an identical install of UEFI + NixOS starts the kernel almost immediately on an USB 2.0 flash drive, although it's much slower than my microSD.
Is the card maybe simply running at an extremely low speed at that stage before the kernel has properly configured it? Linux does indeed only report it as sd high-speed with cat /sys/kernel/debug/mmc*/ios (which should be 25 MB/s) before I've properly applied the device-trees, and only then is it shown as sd uhs DDR50 (the expected UHS-I speed of 50 MB/s, which is what vanilla RPi OS reports too), although both should be fast enough. Let me know if I can provide any more information!
The text was updated successfully, but these errors were encountered:
I can confirm boot is really slow on Fedora IOT UEFI. I haven't tested with BIOS but checked with another SD Card that is slower and has raspbian on it and it's really fast to boot.
Whenever I use the UEFI firmware on my UHS-I SanDisk Extreme 64GB microSD, it takes extremely long for the bootloader to start Linux. The process clearly gets stuck while loading the kernel & initrd into memory, as shown by
systemd-analyze
:While I am using systemd-boot on my system, the exact same issue happens with GRUB. (Unfortunately, systemd-boot does not seem to have proper logging capabilities, and I didn't manage to get useful info trying to debug this with GRUB yet.) The only thing I can tell is that after the bootloader's picker is shown without issues and the boot has continued, it just stays at a black screen for a minute or two before Linux seems to have been loaded, which is when the following text is shown at once:
It seems that what took so long is for the kernel to load; and this is on a fresh install of NixOS, with a kernel image of just 70 MB. But once these messages have been shown after the wait, the Linux kernel starts booting quickly and properly as usual.
I can rule out that the card is not at fault, as it boots all non-UEFI configurations as quickly as expected. And even with UEFI, it performs well once the system has gotten past the point of loading the kernel into memory. Additionally, an identical install of UEFI + NixOS starts the kernel almost immediately on an USB 2.0 flash drive, although it's much slower than my microSD.
Is the card maybe simply running at an extremely low speed at that stage before the kernel has properly configured it? Linux does indeed only report it as
sd high-speed
withcat /sys/kernel/debug/mmc*/ios
(which should be 25 MB/s) before I've properly applied the device-trees, and only then is it shown assd uhs DDR50
(the expected UHS-I speed of 50 MB/s, which is what vanilla RPi OS reports too), although both should be fast enough. Let me know if I can provide any more information!The text was updated successfully, but these errors were encountered: