From d9f9bbeb3275c84a8ce1a0975d43abbdf712ab41 Mon Sep 17 00:00:00 2001 From: Jerry Jelinek Date: Thu, 9 Aug 2012 16:02:14 +0000 Subject: OS-1464 Fix IPMI detection on HP N36L / N40L --- usr/src/uts/intel/io/ipmi/ipmi_main.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/usr/src/uts/intel/io/ipmi/ipmi_main.c b/usr/src/uts/intel/io/ipmi/ipmi_main.c index 93c831a941..de72ff5053 100644 --- a/usr/src/uts/intel/io/ipmi/ipmi_main.c +++ b/usr/src/uts/intel/io/ipmi/ipmi_main.c @@ -82,6 +82,16 @@ get_smbios_ipmi_info() cmn_err(CE_CONT, "!SMBIOS type 0x%x, addr 0x%llx", ipmi.smbip_type, (long long unsigned int)(ipmi.smbip_addr)); + /* + * Some systems have a bios that will report an IPMI device even when + * it is not installed. In this case we see 0x0 as the base address. + * If we see this address, assume the device is not really present. + */ + if (ipmi.smbip_addr == NULL) { + cmn_err(CE_WARN, "!SMBIOS: Invalid base address"); + return; + } + sc->ipmi_io_type = ipmi.smbip_type; switch (ipmi.smbip_type) { case SMB_IPMI_T_KCS: -- cgit v1.2.3