On non x86 platforms the hardware reduce flag must be set in the FADT
table. Write an error message if the flag is missing.

Signed-off-by: Heinrich Schuchardt <heinrich.schucha...@canonical.com>
---
 cmd/acpi.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/cmd/acpi.c b/cmd/acpi.c
index 24910c150b..2e9a333ffa 100644
--- a/cmd/acpi.c
+++ b/cmd/acpi.c
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <command.h>
 #include <display_options.h>
+#include <log.h>
 #include <mapmem.h>
 #include <acpi/acpi_table.h>
 #include <asm/acpi_table.h>
@@ -57,6 +58,9 @@ static void list_fadt(struct acpi_fadt *fadt)
                dump_hdr(map_sysmem(fadt->x_dsdt, 0));
        else if (fadt->dsdt)
                dump_hdr(map_sysmem(fadt->dsdt, 0));
+       if (!IS_ENABLED(CONFIG_X86) &&
+           !(fadt->flags & ACPI_FADT_HW_REDUCED_ACPI))
+               log_err("FADT not ACPI hardware reduced compliant\n");
        if (fadt->x_firmware_ctrl)
                dump_hdr(map_sysmem(fadt->x_firmware_ctrl, 0));
        else if (fadt->firmware_ctrl)
-- 
2.40.1

Reply via email to