arm64: fix ACPI dependencies
authorArnd Bergmann <arnd@arndb.de>
Tue, 24 Jul 2018 09:48:45 +0000 (11:48 +0200)
committerWill Deacon <will.deacon@arm.com>
Tue, 24 Jul 2018 11:34:48 +0000 (12:34 +0100)
Kconfig reports a warning on x86 builds after the ARM64 dependency
was added.

drivers/acpi/Kconfig:6:error: recursive dependency detected!
drivers/acpi/Kconfig:6:       symbol ACPI depends on EFI

This rephrases the dependency to keep the ARM64 details out of the
shared Kconfig file, so Kconfig no longer gets confused by it.

For consistency, all three architectures that support ACPI now
select ARCH_SUPPORTS_ACPI in exactly the configuration in which
they allow it. We still need the 'default x86', as each one
wants a different default: default-y on x86, default-n on arm64,
and always-y on ia64.

Fixes: 5bcd44083a08 ("drivers: acpi: add dependency of EFI for arm64")
Reviewed-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/Kconfig
arch/ia64/Kconfig
arch/x86/Kconfig
drivers/acpi/Kconfig

index e2823362c324d479009ed6e209ad4bb810ac64c4..27fd50e86dfef66914a6bacea333f64d76da8c56 100644 (file)
@@ -1262,6 +1262,7 @@ config EFI
        bool "UEFI runtime support"
        depends on OF && !CPU_BIG_ENDIAN
        depends on KERNEL_MODE_NEON
+       select ARCH_SUPPORTS_ACPI
        select LIBFDT
        select UCS2_STRING
        select EFI_PARAMS_FROM_FDT
index ff861420b8f56c51dfa5133d8a0266a67027734c..02eb68d5d1c072a4b489cbef1118b4dd5d2f3f6d 100644 (file)
@@ -16,6 +16,7 @@ config IA64
        select ARCH_MIGHT_HAVE_PC_SERIO
        select PCI if (!IA64_HP_SIM)
        select ACPI if (!IA64_HP_SIM)
+       select ARCH_SUPPORTS_ACPI if (!IA64_HP_SIM)
        select ACPI_SYSTEM_POWER_STATES_SUPPORT if ACPI
        select ARCH_MIGHT_HAVE_ACPI_PDC if ACPI
        select HAVE_UNSTABLE_SCHED_CLOCK
index f1dbb4ee19d781751ac22f233ec7dea5f9a66ed3..ee99f529657089d5dc2c48dbc67af28cfa0b758f 100644 (file)
@@ -75,6 +75,7 @@ config X86
        select ARCH_MIGHT_HAVE_ACPI_PDC         if ACPI
        select ARCH_MIGHT_HAVE_PC_PARPORT
        select ARCH_MIGHT_HAVE_PC_SERIO
+       select ARCH_SUPPORTS_ACPI
        select ARCH_SUPPORTS_ATOMIC_RMW
        select ARCH_SUPPORTS_NUMA_BALANCING     if X86_64
        select ARCH_USE_BUILTIN_BSWAP
index 15ab1daaa80819b3dc059159a1365d081baafb69..4a46344bf0e3f3dc1178320563dfb3d2411202ed 100644 (file)
@@ -5,11 +5,10 @@
 
 menuconfig ACPI
        bool "ACPI (Advanced Configuration and Power Interface) Support"
-       depends on !IA64_HP_SIM
-       depends on IA64 || X86 || (ARM64 && EFI)
+       depends on ARCH_SUPPORTS_ACPI
        depends on PCI
        select PNP
-       default y if (IA64 || X86)
+       default y if X86
        help
          Advanced Configuration and Power Interface (ACPI) support for 
          Linux requires an ACPI-compliant platform (hardware/firmware),
@@ -41,6 +40,9 @@ menuconfig ACPI
          <http://www.acpi.info>
          <http://www.uefi.org/acpi/specs>
 
+config ARCH_SUPPORTS_ACPI
+       bool
+
 if ACPI
 
 config ACPI_LEGACY_TABLES_LOOKUP