]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
watchdog: hpwdt: SMBIOS check
authorJerry Hoemann <jerry.hoemann@hpe.com>
Mon, 23 Oct 2017 22:46:16 +0000 (16:46 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 18 Mar 2018 10:17:50 +0000 (11:17 +0100)
commit c42cbe41727a138905a28f8e0b00c147be77ee93 upstream.

This corrects:
commit cce78da76601 ("watchdog: hpwdt: Add check for UEFI bits")

The test on HPE SMBIOS extension type 219 record "Misc Features"
bits for UEFI support is incorrect.  The definition of the Misc Features
bits in the HPE SMBIOS OEM Extensions specification (and related
firmware) was changed to use a different pair of bits to
represent UEFI supported.  Howerver, a corresponding change
to Linux was missed.

Current code/platform work because the iCRU test is working.
But purpose of cce78da766 is to ensure correct functionality
on future systems where iCRU isn't supported.

Signed-off-by: Jerry Hoemann <jerry.hoemann@hpe.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/watchdog/hpwdt.c

index 286369d4f0f50928c4b837eb362a8e0fb5c6fa02..1610fc08d8c707295ca3bcb3c06e0e7f9f8bda23 100644 (file)
@@ -700,7 +700,7 @@ static void dmi_find_icru(const struct dmi_header *dm, void *dummy)
                smbios_proliant_ptr = (struct smbios_proliant_info *) dm;
                if (smbios_proliant_ptr->misc_features & 0x01)
                        is_icru = 1;
-               if (smbios_proliant_ptr->misc_features & 0x408)
+               if (smbios_proliant_ptr->misc_features & 0x1400)
                        is_uefi = 1;
        }
 }