[SeaBIOS] [Qemu-devel] [RFC] Passing boot order from qemu to seabios

Anthony Liguori anthony at codemonkey.ws
Tue Oct 12 00:32:17 CEST 2010


On 10/11/2010 04:16 PM, Peter Stuge wrote:
> Gleb Natapov wrote:
>    
>> Seabios does not create any bootable devices, it just discovers
>> whatever qemu created, so seabios has nothing interesting to tell
>> to qemu.
>>      
> SeaBIOS can add boot devices as part of option ROM init, as was
> mentioned. QEMU may or may not be involved in this, but in any case
> the complete BBS must then be implemented also in QEMU..
>    

Somebody has to be responsible for enumerating all of the devices that 
can be booted, communicated it to someone else, and letting that other 
party reorder things while keeping the former party informed.  The 
options are:

1) QEMU let's user choose device boot order based on something that 
makes sense to QEMU and it's users
2) QEMU creates a list of device boot order that it prefers and 
communicates to SeaBIOS.  If this is to be authoritative, QEMU must 
generate a list that follows the BBS
3) SeaBIOS then allows a user to reorder boot devices
4) SeaBIOS tells QEMU the new boot order

Or:

1) QEMU let's user choose device boot order based on something that 
makes sense to QEMU and it's users
2) SeaBIOS creates a list of bootable devices based on the BBS and 
anything else it thinks it can boot from
3) SeaBIOS passes this list to QEMU and asks QEMU to adjust ordering
4) QEMU adjusts ordering according to (1) and tells SeaBIOS
5) SeaBIOS then allows a user to reorder boot devices
6) SeaBIOS tells QEMU the new boot order

It may seem like the second option is more complicated, but I think step 
2 in the first option is going to be prohibitively difficult and really 
doesn't fit SeaBIOS very well as bare metal BIOS.  The second option is 
more akin to how this would work on bare metal.

Regards,

Anthony Liguori

> //Peter
>
> _______________________________________________
> SeaBIOS mailing list
> SeaBIOS at seabios.org
> http://www.seabios.org/mailman/listinfo/seabios
>    




More information about the SeaBIOS mailing list