Skip to main content
Topic: Boot to BIOS (Read 588 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

Boot to BIOS

I like to have 'ultra fast boot' option enabled on my bios page, it just directly boots into the os without waiting for bios inputs. On windows you can boot into bios using recovery menu, On systemd based distros you can 'systemctl reboot --firmware-setup' in order to boot into BIOS on next boot.

Is there an equivalent command when using artix + dinit ?

 

Re: Boot to BIOS

Reply #1
Slightly pedantic but you want to boot into UEFI I guess? AFAIK this feature is not supported on BIOS systems ?

This is something I looked at in the past and decided not to bother.
But there's a efi variable named OsIndications.
You can view and manipulate efi variables with efivar

If you search OsIndications plus other relevant terms you'll find discussion of what you ask.
But some people are saying set OsIndications = 1, some are saying set only the first bit of OsIndications to 1.
I decided not to mess with efi variables because 'Here there be dragons' and.....

rEfInd can do this from its boot menu so long as it's on the default theme (needs adding to many of the other themes available).

You can add a custom entry to grub containing fwsetup
example from the arch wiki
Code: [Select]
if [ ${grub_platform} == "efi" ]; then
menuentry 'UEFI Firmware Settings' --id 'uefi-firmware' {
fwsetup
}
fi



Re: Boot to BIOS

Reply #2
Slightly pedantic but you want to boot into UEFI I guess? AFAIK this feature is not supported on BIOS systems ?

This is something I looked at in the past and decided not to bother.
But there's a efi variable named OsIndications.
You can view and manipulate efi variables with efivar

If you search OsIndications plus other relevant terms you'll find discussion of what you ask.
But some people are saying set OsIndications = 1, some are saying set only the first bit of OsIndications to 1.
I decided not to mess with efi variables because 'Here there be dragons' and.....

rEfInd can do this from it's boot menu so long as it's on the default theme (needs adding to many of the other themes available).

You can add a custom entry to grub containing fwsetup
example from the arch wiki
Code: [Select]
if [ ${grub_platform} == "efi" ]; then
menuentry 'UEFI Firmware Settings' --id 'uefi-firmware' {
fwsetup
}
fi

So I did a little bit of investigating through systemd sources and turns out the value to set for OsIndications is:
Code: [Select]
#define EFI_OS_INDICATIONS_BOOT_TO_FW_UI UINT64_C(0x0000000000000001)
So yes, you have to set the first bit to 1 to reboot to firmware menu.

You can follow the guide here to set it: https://unix.stackexchange.com/questions/536436/linux-modify-an-efi-var-with-efivar

Although one warning: I tried writing zeros to Osindication without changing its immutable attribute and the variable completely disappeared.

I don't know if this is because of my buggy firmware, me writing zeros or that I didn't change the immutable attribute, but still, be warned that the variable might disappear.