xgene v1/v2 chips are also used on moonshot cartridges that have
different table headers to the ones on Mustang. Extend the quirk
so it also recognises the Moonshot M400 variant too.

Signed-off-by: Graeme Gregory <[email protected]>
---
 drivers/acpi/spcr.c | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/drivers/acpi/spcr.c b/drivers/acpi/spcr.c
index 4ac3e06b41d8..1457ef0b0fd5 100644
--- a/drivers/acpi/spcr.c
+++ b/drivers/acpi/spcr.c
@@ -43,17 +43,24 @@ static bool qdf2400_erratum_44_present(struct 
acpi_table_header *h)
  */
 static bool xgene_8250_erratum_present(struct acpi_table_spcr *tb)
 {
+       bool xgene_8250 = false;
+
        if (tb->interface_type != ACPI_DBG2_16550_COMPATIBLE)
                return false;
 
-       if (memcmp(tb->header.oem_id, "APMC0D", ACPI_OEM_ID_SIZE))
+       if (memcmp(tb->header.oem_id, "APMC0D", ACPI_OEM_ID_SIZE) &&
+           memcmp(tb->header.oem_id, "HPE   ", ACPI_OEM_ID_SIZE))
                return false;
 
        if (!memcmp(tb->header.oem_table_id, "XGENESPC",
            ACPI_OEM_TABLE_ID_SIZE) && tb->header.oem_revision == 0)
-               return true;
+               xgene_8250 = true;
 
-       return false;
+       if (!memcmp(tb->header.oem_table_id, "ProLiant",
+           ACPI_OEM_TABLE_ID_SIZE) && tb->header.oem_revision == 1)
+               xgene_8250 = true;
+
+       return xgene_8250;
 }
 
 /**
-- 
2.13.4

Reply via email to