From: Kevin O'Connor [mailto:kevin@koconnor.net] If checking for an MBR is sufficient to determine if the drive is "bootable" then I'd suggest adding an option to read and validate the MBR in the POST phase prior to assigning a drive id to it.
I had looked into this, but could not trace out the functions/methods that would allow me to read a single sector from the device. Can you give me a pointer on this?
[...]
Why is it not safe to alter the IDMap in the boot phase? Is it unsafe
to
allow it to change before the device has actually booted, or is it only unsafe to change once the device has transferred execution to the OS?
The BIOS specs call for making the f-segment read-only after the POST phase ends. This is implemented under QEMU (and only on QEMU). The "IDMap" variable (along with all variables marked with VAR16) is stored in the f-segment.
What BIOS specs are you referring to? I don't recall seeing those.
Also, since this is currently targeted at a production coreboot/SeaBIOS environment, would it be sufficient to make the feature dependent upon the BIOS being built for coreboot?
Regards, -- Steve G.