On Thu, Aug 13, 2009 at 02:22:05AM +0800, Jason Wang wrote:
On Wed, Aug 12, 2009 at 9:17 PM, Kevin O'Connor kevin@koconnor.net wrote:
On Wed, Aug 12, 2009 at 03:29:06PM +0800, Jason Wang wrote:
Hi Kevin, The Seabios try to booting usbrom with IPL_TYPE_BEV, which i think should use IPL_TYPE_HARDDISK, right? Followed by BIOS BOOT Specification I think it can add #define IPL_TYPE_USBROM 0x05 to support BCV, how do you think about that?
SeaBIOS is overloading those flags, and I agree it's confusing. The flags for BCV tables are only used in run_bcv(), add_bcv(), and add_bcv_hd(). It's not necessary to add a new flag.
I find that handle_19, do_boot only seek the BEV devices
That is correct.
The BEVs are the ways one can boot the machine and the BCVs are the drives in the machine.
SeaBIOS has a BEV for booting off of a drive (see boot_disk()). You should not add a new way to boot from a drive - instead you want to add a new drive.
The BCV list is executed during post (see boot_prep()). SeaBIOS will call all the optionroms that have BCVs and they can then hook int13. Once int13 has been properly hooked, the existing SeaBIOS drive booting code will work.
-Kevin