Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pi5 does not boot past grub/uefi (EFI stub: exiting boot services...) #47

Open
Cajunvoodoo opened this issue Jan 22, 2025 · 4 comments
Open

Comments

@Cajunvoodoo
Copy link

Cajunvoodoo commented Jan 22, 2025

After fixing the framebuffer issue, I was able to see the UEFI screen and shell. However, when I attempted to boot anything (nixos, ubuntu), I would get the following behavior:

  • if no grub (i.e., nixos), hitting "enter" on the boot menu resulted in EFI stalling on a solid cursor
  • if grub, it will show up before sitting on a solid cursor.

The EFI issue is the following:

EFI stub: Booting Linux Kernel...
EFI stub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path
EFI stub: Generating empty DTB
EFI stub: Exiting boot services...
_

It does not progress any further.

Currently, I am cross-compiling the linux kernel with ACPI debugging on, but until that is done, I am not sure where to go from here. Any help is appreciated.

@samip5
Copy link

samip5 commented Jan 23, 2025

I was able to boot Talos with rpi5-uefi without issue, or rather it goes rpi5-uefi -> Grub -> Talos.

However I needed newer blobs than what are included.

@huesie
Copy link

huesie commented Jan 27, 2025

Hi @samip5 - I'm collecting notes on repro steps - on 16GB (D0 stepping) running DEBUG build and crash is the same for me even with updated blob.

I can't reproduce this as updated DTB didn't seem to change crash - can you share some additional info on your hardware and blob download url please?

@samip5
Copy link

samip5 commented Jan 27, 2025

crash is the same for me even with updated blob.

Hi @huesie Do you happen to have the debug probe? https://www.raspberrypi.com/documentation/microcontrollers/debug-probe.html
If you do, it's advised to look at uart.
The updated blob corresponds to each kernel release, so it needs to be taken from the kernel you're trying to boot, and if it's not the foundation's kernel, well it might not boot.

I think the issue here is that the kernel one is trying to boot doesn't support Pi5.

@Cajunvoodoo Which NixOS version was tried and how did you create the boot media?

Here's the UART output from booting my Pi5 via rpi5-uefi -> Grub to Talos:

  0.40 RPi: BOOTSYS release VERSION:4b019946 DATE: 2024/11/12 TIME: 16:10:44
  0.44 BOOTMODE: 0x06 partition 0 build-ts BUILD_TIMESTAMP=1731427844 serial <snip> boardrev d04170 stc 944643
  0.54 AON_RESET: 00000003 PM_RSTS 00001000
  0.62 RP1_BOOT chip ID: 0x20001927
  0.64 PM_RSTS: 0x00001000
  0.65 part 00000000 reset_info 00000000
  0.68 PMIC reset-event 00000000 rtc 67980440 alarm 00000000 enabled 0
  0.74 uSD voltage 3.3V
  1.94 Initialising SDRAM rank 2 total-size: 64 Gbit 4267 (0x14 0x00)
  1.97 DDR 4267 1 0 64 152 BL:-1
  2.66 OTP boardrev d04170 bootrom a a
  2.67 Customer key hash 0000000000000000000000000000000000000000000000000000000000000000
  2.75 VC-JTAG unlocked
  2.97 RP1_BOOT chip ID: 0x20001927

  3.24 RP1_BOOT chip ID: 0x20001927
  3.25 RP1_BOOT: fw size 45984
  4.50 PCI2 init
  4.50 PCI2 reset
  4.95 PCIe scan 00001de4:00000001
  4.96 RP1_CHIP_INFO 20001927

  4.98 RPi: BOOTLOADER release VERSION:4b019946 DATE: 2024/11/12 TIME: 16:10:44
  Booting `A - Talos v1.9.2-skylab.34'

EFI stub: Booting Linux Kernel...
EFI stub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path
EFI stub: Generating empty DTB
EFI stub: Exiting boot services...
[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x414fd0b1]
[    0.000000] Linux version 6.12.11-talos (@buildkitsandbox) (gcc (GCC) 14.2.0, GNU ld (GNU Binutils) 2.43.1) #1 SMP Sat Jan 25 20:40:07 UTC 2025
[    0.000000] KASLR enabled
[    0.000000] efi: EFI v2.7 by worproject
[    0.000000] efi: SMBIOS=0x37d00000 SMBIOS 3.0=0x37ce0000 MEMATTR=0x3a002018 ACPI 2.0=0x37e70018 INITRD=0x37f43e98 RNG=0x37e7fa18 MEMRESERVE=0x37f43d18 
[    0.000000] random: crng init done
<snip>

@huesie
Copy link

huesie commented Jan 28, 2025

@samip5 I have debug probe and I built a debug version of RPi5 UEFI v0.3 from source.

Thanks for the output I will compare it with mine but my crash happens earlier in UEFI - I am trying to help by triaging the various issues.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants