diff options
| -rw-r--r-- | tools/power/acpi/acpidump.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/tools/power/acpi/acpidump.c b/tools/power/acpi/acpidump.c index 8e5e19451ce1..a63dee960311 100644 --- a/tools/power/acpi/acpidump.c +++ b/tools/power/acpi/acpidump.c | |||
| @@ -540,8 +540,11 @@ int main(int argc, char **argv) | |||
| 540 | if (connect) { | 540 | if (connect) { |
| 541 | lseek(fd, sizeof(struct acpi_rsdp_descriptor), SEEK_SET); | 541 | lseek(fd, sizeof(struct acpi_rsdp_descriptor), SEEK_SET); |
| 542 | } | 542 | } |
| 543 | if (!acpi_dump_XSDT(fd, &rsdpx)) | 543 | if (rsdpx.revision > 1 && rsdpx.xsdt_physical_address) { |
| 544 | goto not_found; | 544 | /* ACPIDUMP uses xsdt table */ |
| 545 | if (!acpi_dump_XSDT(fd, &rsdpx)) | ||
| 546 | goto not_found; | ||
| 547 | } | ||
| 545 | if (!acpi_dump_RSDT(fd, &rsdpx)) | 548 | if (!acpi_dump_RSDT(fd, &rsdpx)) |
| 546 | goto not_found; | 549 | goto not_found; |
| 547 | if (connect) { | 550 | if (connect) { |
