diff --git a/sys/dev/smbios/smbios.c b/sys/dev/smbios/smbios.c --- a/sys/dev/smbios/smbios.c +++ b/sys/dev/smbios/smbios.c @@ -102,9 +102,13 @@ #endif #if defined(__amd64__) || defined(__i386__) - if (addr == 0) - addr = bios_sigsearch(SMBIOS_START, SMBIOS_SIG, SMBIOS_LEN, + if (addr == 0) { + addr = bios_sigsearch(SMBIOS_START, SMBIOS3_SIG, SMBIOS3_LEN, SMBIOS_STEP, SMBIOS_OFF); + if (addr == 0) + addr = bios_sigsearch(SMBIOS_START, + SMBIOS_SIG, SMBIOS_LEN, SMBIOS_STEP, SMBIOS_OFF); + } #endif if (addr != 0) { @@ -205,11 +209,11 @@ if (sc->is_eps3) { sc->eps3 = va; - device_printf(dev, "Version: %u.%u", + device_printf(dev, "64-bit, Version: %u.%u", sc->eps3->major_version, sc->eps3->minor_version); } else { sc->eps = va; - device_printf(dev, "Version: %u.%u", + device_printf(dev, "32-bit, Version: %u.%u", sc->eps->major_version, sc->eps->minor_version); if (bcd2bin(sc->eps->BCD_revision)) printf(", BCD Revision: %u.%u",