[syslinux] Boot Loop in efi
Erik Rull
erik.rull at rdsoftware.de
Mon Jun 22 14:15:35 PDT 2020
Ady via Syslinux wrote:
>
>> Thanks for the hints - I have NOT CONFIG_EFI enabled - do I need this actually?
>> I do not know which variables I need to boot... The kernel APPEND parameters are
>> sufficient for me... And the relocatable config is set already.
>>
>> .. I enabled the EFI kernel config parts - no change... the console prints:
>>
>> Booting System...
>> Loading linux... ok
>> Loading iramfs.gz...ok
>>
>> [then reboot]
>>
>> My syslinux.cfg is pretty simple:
>> DEFAULT linux
>> LABEL linux
>> SAY Booting System...
>> KERNEL linux
>> APPEND initrd=iramfs.gz apic=debug lapic acpi=ht consoleblank=0 vga=1
>> TIMEOUT 1
>>
>> I didn't find any documentation on the syslinux page for "linuxefi" command -
>> where is this documented?
>>
>> Or is there a "default" syslinux.cfg for efi that I could use as a template?
>>
>> I also moved the iramfs.gz to the separate INITRD command - still no change.
>>
>> Any further hints? How can I debug this?
>> I also change the vga=1 to vga=0 - without and effect...
>
>
> First, please _avoid_ top-posting.
>
> I would suggest:
>
> 1_ Completely ignore the comment about some "linuxefi" command; it does _not_
> exist in Syslinux.
>
> 2_ Change the /EFI/BOOT/syslinux.cfg file to:
>
> DEFAULT linux
> PROMPT 0
> TIMEOUT 1
> SAY Booting System...
> LABEL linux
> LINUX linux
> INITRD iramfs.gz
> APPEND (the APPENDing options are up to you)
>
ok, done.
> Please note that, for this cfg to work, the "linux" file (i.e. the kernel) and
> the "iramfs.gz" file should be located in the same "/EFI/BOOT/" directory as
> the "syslinux.cfg" file. Also the UEFI bootloader and the modules should be
> located in the same directory, and this directory should be located within the
> EFI System Partition (ESP).
my EFI partition now looks like this with pre1 (syslinux.efi doesn't work, but
BOOTX64.efi works)
./EFI
./EFI/BOOT
./EFI/BOOT/syslinux.efi
./EFI/BOOT/ldlinux.e64
./EFI/BOOT/BOOTX64.efi
./EFI/BOOT/syslinux.cfg
./EFI/BOOT/linux
./EFI/BOOT/iramfs.gz
> 3_ The Linux kernel requires to be built with adequate config options for UEFI.
> The same (and more) is true for booting with mixed bitness under UEFI.
> Otherwise, it is no surprise if it fails to boot under UEFI (+ mixed bitness).
I have mixed bitness - of course a 64 bit BIOS bit a 32 bit OS - the 32 bit
syslinux files do not work. But the mixed mode is only available "the other way
round" - 64 bit kernels on 32 bit BIOS...
> 4_ Instead of using Syslinux 6.03, it is strongly recommended to test at least
> 6.04-pre1, especially when 6.03 fails. You _might_ have luck with pre2 and/or
> pre3, but the basic test should include pre1. Several Linux distributions
> already have 6.04-pre1 binaries, with additional patches already applied.
> Please remember not to mix binaries from different versions / builds.
I tried 6.04-pre1 - it boots! :-)
>
> Regards,
> Ady.
Thanks a lot!
And - when is the official 6.04 release planned? :-)
Best regards,
Erik
More information about the Syslinux
mailing list