Lines Matching refs:smbios
88 static struct smbios_attr smbios; variable
115 smbios.length = SMBIOS_GET16(cp, 0x16); in smbios_sigsearch()
119 smbios.count = SMBIOS_GET16(cp, 0x1c); in smbios_sigsearch()
121 smbios.ver = SMBIOS_GET8(cp, 0x1e); in smbios_sigsearch()
122 if (smbios.ver != 0) { in smbios_sigsearch()
123 smbios.major = smbios.ver >> 4; in smbios_sigsearch()
124 smbios.minor = smbios.ver & 0x0f; in smbios_sigsearch()
125 if (smbios.major > 9 || smbios.minor > 9) in smbios_sigsearch()
126 smbios.ver = 0; in smbios_sigsearch()
128 if (smbios.ver == 0) { in smbios_sigsearch()
130 smbios.major = SMBIOS_GET8(cp, 0x06); in smbios_sigsearch()
132 smbios.minor = SMBIOS_GET8(cp, 0x07); in smbios_sigsearch()
134 smbios.ver = (smbios.major << 8) | smbios.minor; in smbios_sigsearch()
135 smbios.addr = ptov(paddr); in smbios_sigsearch()
151 smbios.major = SMBIOS_GET8(cp, 0x07); in smbios_sigsearch()
153 smbios.minor = SMBIOS_GET8(cp, 0x08); in smbios_sigsearch()
155 smbios.ver = SMBIOS_GET8(cp, 0x0a); in smbios_sigsearch()
157 smbios.length = SMBIOS_GET32(cp, 0x0c); in smbios_sigsearch()
160 smbios.addr = ptov(paddr); in smbios_sigsearch()
165 smbios.count = smbios.length / 4; in smbios_sigsearch()
297 if (smbios.major > 2 || in smbios_parse_table()
298 (smbios.major == 2 && smbios.minor >= 4)) { in smbios_parse_table()
344 smbios.enabled_sockets++; in smbios_parse_table()
346 smbios.populated_sockets++; in smbios_parse_table()
364 smbios.old_enabled_memory += 1 << (osize + 10); in smbios_parse_table()
378 smbios.enabled_memory += (size & 0x8000) != 0 ? in smbios_parse_table()
400 if (smbios.addr == NULL) in smbios_find_struct()
403 for (dmi = smbios.addr, i = 0; in smbios_find_struct()
404 dmi < smbios.addr + smbios.length && i < smbios.count; i++) { in smbios_find_struct()
423 if (smbios.probed) in smbios_probe()
425 smbios.probed = 1; in smbios_probe()
434 smbios.bios_vendor = smbios_getstring(info, 0x04); in smbios_probe()
438 smbios.maker = smbios_getstring(info, 0x04); in smbios_probe()
439 smbios.product = smbios_getstring(info, 0x05); in smbios_probe()
451 if (smbios.addr == NULL) in smbios_detect()
454 for (dmi = smbios.addr, i = 0; in smbios_detect()
455 dmi < smbios.addr + smbios.length && i < smbios.count; i++) in smbios_detect()
458 sprintf(buf, "%d.%d", smbios.major, smbios.minor); in smbios_detect()
460 if (smbios.enabled_memory > 0 || smbios.old_enabled_memory > 0) { in smbios_detect()
461 sprintf(buf, "%u", smbios.enabled_memory > 0 ? in smbios_detect()
462 smbios.enabled_memory : smbios.old_enabled_memory); in smbios_detect()
465 if (smbios.enabled_sockets > 0) { in smbios_detect()
466 sprintf(buf, "%u", smbios.enabled_sockets); in smbios_detect()
469 if (smbios.populated_sockets > 0) { in smbios_detect()
470 sprintf(buf, "%u", smbios.populated_sockets); in smbios_detect()
487 return (smbios_match_str(bios_vendor, smbios.bios_vendor) && in smbios_match()
488 smbios_match_str(maker, smbios.maker) && in smbios_match()
489 smbios_match_str(product, smbios.product)); in smbios_match()