On Fri, 2013-02-08 at 00:06 -0500, Kevin O'Connor wrote:
This patch series enables SeaBIOS to be compiled for multiple platforms (eg, CSM, QEMU, Coreboot) at the same time. This is useful for cases where SeaBIOS is running under coreboot which is running under QEMU, for example.
I think you're conflating two issues there.
Firstly, do you actually want to be able to build a multi-platform binary where a single binary build can be used *either* from Coreboot, as CSM, or directly on native hardware? Is there really a need for such a beast? I'm not sure it would even work for CSM, because it would probably be too big.
For the case of SeaBIOS loaded via Coreboot or CSM when it's *actually* running under Qemu, all you really need to do is separate the "started on Qemu" and "running on Qemu" options.
Also, some features of QEMU wont be available when SeaBIOS is launched from CSM/coreboot, even if it is ultimately running under QEMU.
I consider that a feature. From CSM I want almost *nothing* of the Qemu support. It's supposed to be hardware-agnostic, and I don't want it to magically work on qemu and then fail on real hardware.
I only really want to be allowed to use virtio devices, and also the "real" hardware devices like lsi scsi, which are currently enabled only for QEMU for some reason (is the qemu emulation not compatible with real devices?)
Is there not a similar consideration when you're running under Coreboot?