ACPI: PRM: Find PRMT table before parsing it
[linux-2.6-microblaze.git] / drivers / acpi / prmt.c
index 1f6007a..89c22bc 100644 (file)
@@ -288,10 +288,18 @@ invalid_guid:
 
 void __init init_prmt(void)
 {
+       struct acpi_table_header *tbl;
        acpi_status status;
-       int mc = acpi_table_parse_entries(ACPI_SIG_PRMT, sizeof(struct acpi_table_prmt) +
+       int mc;
+
+       status = acpi_get_table(ACPI_SIG_PRMT, 0, &tbl);
+       if (ACPI_FAILURE(status))
+               return;
+
+       mc = acpi_table_parse_entries(ACPI_SIG_PRMT, sizeof(struct acpi_table_prmt) +
                                          sizeof (struct acpi_table_prmt_header),
                                          0, acpi_parse_prmt, 0);
+       acpi_put_table(tbl);
        /*
         * Return immediately if PRMT table is not present or no PRM module found.
         */