diff options
author | Olivier Certner <olce@FreeBSD.org> | 2025-02-28 16:54:42 +0000 |
---|---|---|
committer | Olivier Certner <olce@FreeBSD.org> | 2025-03-07 16:42:45 +0000 |
commit | bc7f6508363c5cf4544044e00bbaf71de8f0168d (patch) | |
tree | 46636418c1bad86c4aff77ae18d1d4ed54f2e37b | |
parent | 69cf9e9a451df3b0bff92f879365f604811e394b (diff) |
-rw-r--r-- | sys/dev/smbios/smbios.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/sys/dev/smbios/smbios.c b/sys/dev/smbios/smbios.c index bbfe80a6a8a6..f4a6453fd043 100644 --- a/sys/dev/smbios/smbios.c +++ b/sys/dev/smbios/smbios.c @@ -102,9 +102,15 @@ smbios_identify (driver_t *driver, device_t parent) #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) + map_size = sizeof(*eps3); + else + addr = bios_sigsearch(SMBIOS_START, + SMBIOS_SIG, SMBIOS_LEN, SMBIOS_STEP, SMBIOS_OFF); + } #endif if (addr != 0) { |