On Wed, 2014-05-28 at 15:36 -0400, Kevin O'Connor wrote:
On Mon, May 19, 2014 at 07:49:47PM +0100, David
On Mon, 2014-05-19 at 13:42 -0400, Kevin
I don't see any reference to "int 15h,
ax=0xd042" as a standard. So,
maybe the author of the above text also wrote their own EFI module
which used that magic value?
Well, the INT 15h call would still be on the BIOS side; that doesn't
sound like an EFI thing at all. Perhaps that's a special-case hack to
make their platform *trigger* the SMM entry, which then gets handled by
the EFI code?
FYI, I just stumbled upon this definition in the std/LegacyBios.h efi
/// SMM_FUNCTION Function constants.
#define INT15_D042 0x0000
I've been reading through the EDK2 SMM stuff, and invoking SMM functions
from seems to involve putting parameters into a buffer at a certainly
location, then triggering an SMI. On the EFI side there's obviously a
function you can invoke to *do* it, but we could do it directly.
To make use of it from SeaBIOS-CSM, I think we'd just need to pass in
the location of that buffer. There's space in the EFI_COMPATIBILITY16
table for "IBV-specific" information.