2014-07-10 17:20:38

by Olof Johansson

[permalink] [raw]
Subject: [PATCH] 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 <[email protected]>
---
drivers/platform/chrome/chromeos_pstore.c | 14 ++------------
1 file changed, 2 insertions(+), 12 deletions(-)

diff --git a/drivers/platform/chrome/chromeos_pstore.c b/drivers/platform/chrome/chromeos_pstore.c
index e0e0e65cf442..34749200e4ab 100644
--- a/drivers/platform/chrome/chromeos_pstore.c
+++ b/drivers/platform/chrome/chromeos_pstore.c
@@ -16,23 +16,13 @@
static struct dmi_system_id chromeos_pstore_dmi_table[] __initdata = {
{
/*
- * Today all Chromebooks/boxes ship with GOOGLE as vendor and
+ * Today all Chromebooks/boxes ship with Google_* as version and
* coreboot as bios vendor. No other systems with this
* combination are known to date.
*/
.matches = {
- DMI_MATCH(DMI_SYS_VENDOR, "GOOGLE"),
- DMI_MATCH(DMI_BIOS_VENDOR, "coreboot"),
- },
- },
- {
- /*
- * The first Samsung Chromebox and Chromebook Series 5 550 use
- * coreboot but with Samsung as the system vendor.
- */
- .matches = {
- DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG"),
DMI_MATCH(DMI_BIOS_VENDOR, "coreboot"),
+ DMI_MATCH(DMI_BIOS_VERSION, "Google_"),
},
},
{
--
2.0.1.473.gc4d58ca


2014-07-10 17:29:50

by Benson Leung

[permalink] [raw]
Subject: Re: [PATCH] platform/chrome: pstore: fix dmi table to match all chrome systems

On Thu, Jul 10, 2014 at 10:20 AM, Olof Johansson <[email protected]> wrote:
> 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 <[email protected]>

Reviewed-by: Benson Leung <[email protected]>


--
Benson Leung
Software Engineer, Chrom* OS
[email protected]