Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

platform/chrome: pstore: fix dmi table to match all chrome systems

Turns out that DMI_SYSTEM_VENDOR is actually the native vendor of each
Chromebook/box. I tested the original patch on a Pixel that -- surprise,
has Google as vendor. *facepalm*.

The only other data I can think of to probe on is Google_* in the version
string. Checking with our firmware team, all systems should have this
and nothing else than Chrome hardware should have the coreboot + Google_*
combination to date.

So, we'll switch to this. For future platforms we are going to move to
using an ACPI device to configure this instead of a DMI table (yay!),
so longer-term that will sort itself out.

Signed-off-by: Olof Johansson <olof@lixom.net>
Reviewed-by: Benson Leung <bleung@chromium.org>

+2 -12
+2 -12
drivers/platform/chrome/chromeos_pstore.c
··· 16 16 static struct dmi_system_id chromeos_pstore_dmi_table[] __initdata = { 17 17 { 18 18 /* 19 - * Today all Chromebooks/boxes ship with GOOGLE as vendor and 19 + * Today all Chromebooks/boxes ship with Google_* as version and 20 20 * coreboot as bios vendor. No other systems with this 21 21 * combination are known to date. 22 22 */ 23 23 .matches = { 24 - DMI_MATCH(DMI_SYS_VENDOR, "GOOGLE"), 25 24 DMI_MATCH(DMI_BIOS_VENDOR, "coreboot"), 26 - }, 27 - }, 28 - { 29 - /* 30 - * The first Samsung Chromebox and Chromebook Series 5 550 use 31 - * coreboot but with Samsung as the system vendor. 32 - */ 33 - .matches = { 34 - DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG"), 35 - DMI_MATCH(DMI_BIOS_VENDOR, "coreboot"), 25 + DMI_MATCH(DMI_BIOS_VERSION, "Google_"), 36 26 }, 37 27 }, 38 28 {