The arm64 build for libacpi was broken due to two reasons:

1. ACPI_BUILD_DIR was appended twice to dsdt_anycpu_arm.c.
2. The inclusion of firmware/Rules.mk overrided XEN_TARGET_ARCH, which
   made CONFIG_ARM disappear.

Fix those by:

1. Correctly generate full path for dsdt_anaycpu_arm.c.
2. Include tools/Rules.mk instead, because libacpi/Makefile doesn't rely
   on settings in firmware/Rules.mk.

While at it, use CONFIG_ARM_64 instead of CONFIG_ARM as it is more
accurate.

Reported-by: Julien Grall <julien.gr...@arm.com>
Signed-off-by: Wei Liu <wei.l...@citrix.com>
---
Cc: Julien Grall <julien.gr...@arm.com>
Cc: Wei Chen <wei.c...@arm.com>
Cc: Steve Capper <steve.cap...@arm.com>
Cc: Jan Beulich <jbeul...@suse.com>
Cc: Boris Ostrovsky <boris.ostrov...@oracle.com>
Cc: Shannon Zhao <zhaoshengl...@huawei.com>
Cc: Stefano Stebellini <sstabell...@kernel.org>

Please check if CONFIG_ARM_64 is correct -- IIRC ACPI is only relevant
on arm64.

Would appreciate any build test report from ARM people.
---
 tools/libacpi/Makefile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/libacpi/Makefile b/tools/libacpi/Makefile
index db7a3a9..24eb0c2 100644
--- a/tools/libacpi/Makefile
+++ b/tools/libacpi/Makefile
@@ -13,12 +13,12 @@
 #
 
 XEN_ROOT = $(CURDIR)/../..
-include $(XEN_ROOT)/tools/firmware/Rules.mk
+include $(XEN_ROOT)/tools/Rules.mk
 
 MK_DSDT = $(ACPI_BUILD_DIR)/mk_dsdt
 
 C_SRC-$(GPL) = dsdt_anycpu.c dsdt_15cpu.c dsdt_anycpu_qemu_xen.c
-C_SRC-$(CONFIG_ARM) = $(ACPI_BUILD_DIR)/dsdt_anycpu_arm.c
+C_SRC-$(CONFIG_ARM_64) = dsdt_anycpu_arm.c
 C_SRC = $(addprefix $(ACPI_BUILD_DIR)/, dsdt_pvh.c $(C_SRC-y))
 H_SRC = $(addprefix $(ACPI_BUILD_DIR)/, ssdt_s3.h ssdt_s4.h ssdt_pm.h 
ssdt_tpm.h)
 
-- 
2.1.4


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

Reply via email to