[SeaBIOS] "bootorder" documentation change

Kevin O'Connor kevin at koconnor.net
Tue Sep 8 01:48:06 CET 2015


On Mon, Sep 07, 2015 at 09:10:03PM +0200, Maxime de Roucy wrote:
> Le lundi 07 septembre 2015 à 10:36 -0400, Kevin O'Connor a écrit :
> > I don't understand what Maxime is reporting (via the documentation
> > patch), nor what Matt's patch above fixes.  Could someone provide a
> > description of the problem/feature?
> 
> Lets say you have one SATA drive and one USB drive connected to your
> board.
> The SATA drive is blank (no data on it).
> The USB drive contain a bootable operating system.
> 
> You configure the bootorder to :
>     SATA
>     USB
>     PXE
>     HALT
> 
> In this situation the user imagine SeaBIOS boot to USB as it will fail
> to boot from SATA… that's not the case.

This is a quirk of the BIOS/bootloader interface - bootloaders on
"hard drives" are only able to boot from the C: drive (technically,
the drive mapped to 0x80).  SeaBIOS can only map one drive as C: per
boot - so in the above example, if SeaBIOS maps the SATA drive as C:
then only the SATA "hard drive" is bootable.

I don't see this as a huge issue though, because the user can simply
reboot and select the USB drive from the boot menu.

> SATA and USB are both treat as IPL_TYPE_HARDDISK and when SeaBIOS list
> the devices it only keep the highest priority device of each type.
> 
> SATA and USB are both present and SATA has a higher priority than USB.
> PXE is another type (I don't know which one).
> 
> So SeaBIOS only keep SATA and PXE. When it fail to boot from SATA as
> the drive is blank it fallback to PXE instead of USB as the user
> expected.

I understand what you mean now.  Not sure the best way to document it.

> The Matt patch (as I understand it) add an USB type. SeaBIOS will still
> only keep the highest priority device of each type but as SATA and USB
> belongs to different type they will be kept. SeaBIOS will boot from USB
> when it fail to boot from SATA.

Matt's patch doesn't implement that.  The patch would just attempt to
boot from C: twice - which would just cause back-to-back failures if
the C: drive is not bootable.

-Kevin



More information about the SeaBIOS mailing list