QEMU_SMBIOS_ANCHOR QemuAnchor;\r
UINT16 SmbiosVersion;\r
\r
+ if (PcdGetBool (PcdQemuSmbiosValidated)) {\r
+ //\r
+ // Some other module, linked against this library, has already performed\r
+ // the task at hand. This should never happen, but it's easy to handle;\r
+ // just exit early.\r
+ //\r
+ return RETURN_SUCCESS;\r
+ }\r
+\r
if (RETURN_ERROR (QemuFwCfgFindFile (\r
"etc/smbios/smbios-anchor", &Anchor, &AnchorSize)) ||\r
RETURN_ERROR (QemuFwCfgFindFile (\r
SmbiosVersion));\r
PcdSet16 (PcdSmbiosVersion, SmbiosVersion);\r
\r
+ //\r
+ // SMBIOS platform drivers can now fetch and install\r
+ // "etc/smbios/smbios-tables" from QEMU.\r
+ //\r
+ PcdSetBool (PcdQemuSmbiosValidated, TRUE);\r
return RETURN_SUCCESS;\r
}\r