platform/chrome: cros_ec_lpc: Add support for Google devices using custom coreboot...
authorSalvatore Bellizzi <lkml@seppia.net>
Wed, 7 Mar 2018 13:56:43 +0000 (14:56 +0100)
committerBenson Leung <bleung@chromium.org>
Tue, 10 Apr 2018 05:57:46 +0000 (22:57 -0700)
This patch adds generic device information to the DMI table of
the cros_ec_lpc driver, needed for Chromebooks/boxes using a
custom coreboot firmware.

The DMI info would not contain "Google_*" as BIOS version string,
instead the system vendor string would still be "GOOGLE", so this
seems to be a reasonable match for every Chromebook/box running
a custom firmware.

Signed-off-by: Salvatore Bellizzi <lkml@seppia.net>
Signed-off-by: Vittorio Gambaletta <linuxbugs@vittgam.net>
Signed-off-by: Benson Leung <bleung@chromium.org>
drivers/platform/chrome/cros_ec_lpc.c

index 2a40c2b1a7ff2d3ff04f7a7df4a30f29ce839e03..3682e1539251386c658117d1b031d5c08b7fc77f 100644 (file)
@@ -345,6 +345,18 @@ static const struct dmi_system_id cros_ec_lpc_dmi_table[] __initconst = {
                        DMI_MATCH(DMI_BIOS_VERSION, "Google_"),
                },
        },
+       {
+               /*
+                * If the box is running custom coreboot firmware then the
+                * DMI BIOS version string will not be matched by "Google_",
+                * but the system vendor string will still be matched by
+                * "GOOGLE".
+                */
+               .matches = {
+                       DMI_MATCH(DMI_BIOS_VENDOR, "coreboot"),
+                       DMI_MATCH(DMI_SYS_VENDOR, "GOOGLE"),
+               },
+       },
        {
                /* x86-link, the Chromebook Pixel. */
                .matches = {