It's BSD-licensed and has all the data structures we need; it's simple
enough to just use LegacyBios.h after a few #defines to turn the weird
capitalised UINT32 types into proper standard C types like uint32_t.

All we need to do is #ifdef out the parts that only the EFI side needs
to see. And having done that in my own copy in the CSM, I figured it
might as well be done "upstream" too, so we can use a verbatim copy
instead of having to modify it.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: David Woodhouse <[email protected]>

diff --git a/IntelFrameworkPkg/Include/Protocol/LegacyBios.h 
b/IntelFrameworkPkg/Include/Protocol/LegacyBios.h
index 88f5980..8a8c9ff 100644
--- a/IntelFrameworkPkg/Include/Protocol/LegacyBios.h
+++ b/IntelFrameworkPkg/Include/Protocol/LegacyBios.h
@@ -1112,6 +1112,8 @@ typedef union {
   EFI_BYTE_REGS   H;
 } EFI_IA32_REGISTER_SET;
 
+#ifdef EFIAPI /* From here on in, the CSM doesn't need to see; it's just for
+                the EFI side */
 /**
   Thunk to 16-bit real mode and execute a software interrupt with a vector
   of BiosInt. Regs will contain the 16-bit register context on entry and
@@ -1495,4 +1497,5 @@ struct _EFI_LEGACY_BIOS_PROTOCOL {
 
 extern EFI_GUID gEfiLegacyBiosProtocolGuid;
 
+#endif /* EFIAPI */
 #endif



-- 
dwmw2

Attachment: smime.p7s
Description: S/MIME cryptographic signature

------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
MVPs and experts. ON SALE this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122712
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to