Use coreboot smbios table if found.
[seabios.git] / src / biostables.c
index d8b50676cba732890cc4a77054f69fa78dd055cf..57a5c5753b446ef46d6d835dd4031d7b53ffa432 100644 (file)
@@ -86,6 +86,8 @@ copy_acpi_rsdp(void *pos)
 void
 copy_smbios(void *pos)
 {
+    if (SMBiosAddr)
+        return;
     struct smbios_entry_point *p = pos;
     if (memcmp(p->anchor_string, "_SM_", 4))
         return;
@@ -102,4 +104,5 @@ copy_smbios(void *pos)
     }
     dprintf(1, "Copying SMBIOS entry point from %p to %p\n", pos, newpos);
     memcpy(newpos, pos, p->length);
+    SMBiosAddr = newpos;
 }