ACPICA: allow Load(OEMx) tables
authorLen Brown <len.brown@intel.com>
Thu, 24 May 2007 06:25:00 +0000 (02:25 -0400)
committerLen Brown <len.brown@intel.com>
Tue, 29 May 2007 22:29:50 +0000 (18:29 -0400)
HP and Hitachi machines have been implemented with SSDT's
that use the "OEMx" signatures.  But upon Load, ACPICA is rejecting
these tables because they are not using the "SSDT" signature.

ACPI Error (tbinstal-0134): Table has invalid signature [OEMx], must be SSDT...

Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/tables/tbinstal.c

index 0e7b121a99ce6b163961a61d16b8952d143ca497..3bc0c67a9283e395943ee0e42c5db83b3c43f134 100644 (file)
@@ -123,14 +123,14 @@ acpi_tb_add_table(struct acpi_table_desc *table_desc,
                }
        }
 
-       /* The table must be either an SSDT or a PSDT */
+       /* The table must be either an SSDT or a PSDT or an OEMx */
 
        if ((!ACPI_COMPARE_NAME(table_desc->pointer->signature, ACPI_SIG_PSDT))
            &&
-           (!ACPI_COMPARE_NAME(table_desc->pointer->signature, ACPI_SIG_SSDT)))
-       {
+           (!ACPI_COMPARE_NAME(table_desc->pointer->signature, ACPI_SIG_SSDT))
+           && (strncmp(table_desc->pointer->signature, "OEM", 3))) {
                ACPI_ERROR((AE_INFO,
-                           "Table has invalid signature [%4.4s], must be SSDT or PSDT",
+                           "Table has invalid signature [%4.4s], must be SSDT, PSDT or OEMx",
                            table_desc->pointer->signature));
                return_ACPI_STATUS(AE_BAD_SIGNATURE);
        }