linux-acpi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] arm64: fix ACPI dependencies
@ 2018-07-24  9:33 Arnd Bergmann
  2018-07-24  9:37 ` Rafael J. Wysocki
  0 siblings, 1 reply; 5+ messages in thread
From: Arnd Bergmann @ 2018-07-24  9:33 UTC (permalink / raw)
  To: Catalin Marinas, Will Deacon, Rafael J. Wysocki, Len Brown
  Cc: Mark Rutland, linux-acpi, Arnd Bergmann, Ard Biesheuvel,
	Marc Zyngier, linux-kernel, AKASHI Takahiro, linux-arm-kernel

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.

Fixes: 5bcd44083a08 ("drivers: acpi: add dependency of EFI for arm64")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 arch/arm64/Kconfig   | 1 +
 drivers/acpi/Kconfig | 5 ++++-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index cdcaa6a798b2..2f987a938405 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -1267,6 +1267,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
diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
index a8da730fabc6..0cda51c5d433 100644
--- a/drivers/acpi/Kconfig
+++ b/drivers/acpi/Kconfig
@@ -6,7 +6,7 @@
 menuconfig ACPI
 	bool "ACPI (Advanced Configuration and Power Interface) Support"
 	depends on !IA64_HP_SIM
-	depends on IA64 || X86 || (ARM64 && EFI)
+	depends on IA64 || X86 || ARCH_SUPPORTS_ACPI
 	depends on PCI
 	select PNP
 	default y if (IA64 || X86)
@@ -41,6 +41,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
-- 
2.18.0

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] arm64: fix ACPI dependencies
  2018-07-24  9:33 [PATCH] arm64: fix ACPI dependencies Arnd Bergmann
@ 2018-07-24  9:37 ` Rafael J. Wysocki
  2018-07-24  9:44   ` Will Deacon
  0 siblings, 1 reply; 5+ messages in thread
From: Rafael J. Wysocki @ 2018-07-24  9:37 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Catalin Marinas, Will Deacon, Rafael J. Wysocki, Len Brown,
	AKASHI Takahiro, Ard Biesheuvel, Mark Rutland, Marc Zyngier,
	Linux ARM, Linux Kernel Mailing List, ACPI Devel Maling List

On Tue, Jul 24, 2018 at 11:33 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> 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.
>
> Fixes: 5bcd44083a08 ("drivers: acpi: add dependency of EFI for arm64")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
>  arch/arm64/Kconfig   | 1 +
>  drivers/acpi/Kconfig | 5 ++++-
>  2 files changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index cdcaa6a798b2..2f987a938405 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -1267,6 +1267,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
> diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
> index a8da730fabc6..0cda51c5d433 100644
> --- a/drivers/acpi/Kconfig
> +++ b/drivers/acpi/Kconfig
> @@ -6,7 +6,7 @@
>  menuconfig ACPI
>         bool "ACPI (Advanced Configuration and Power Interface) Support"
>         depends on !IA64_HP_SIM
> -       depends on IA64 || X86 || (ARM64 && EFI)
> +       depends on IA64 || X86 || ARCH_SUPPORTS_ACPI

That doesn't look particularly consistent to me.

It should be either "depends on ARCH_SUPPORTS_ACPI" alone or mention
ARM64 somehow IMO

>         depends on PCI
>         select PNP
>         default y if (IA64 || X86)
> @@ -41,6 +41,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
> --

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] arm64: fix ACPI dependencies
  2018-07-24  9:37 ` Rafael J. Wysocki
@ 2018-07-24  9:44   ` Will Deacon
  2018-07-24  9:46     ` Arnd Bergmann
  0 siblings, 1 reply; 5+ messages in thread
From: Will Deacon @ 2018-07-24  9:44 UTC (permalink / raw)
  To: Rafael J. Wysocki
  Cc: Arnd Bergmann, Catalin Marinas, Rafael J. Wysocki, Len Brown,
	AKASHI Takahiro, Ard Biesheuvel, Mark Rutland, Marc Zyngier,
	Linux ARM, Linux Kernel Mailing List, ACPI Devel Maling List

On Tue, Jul 24, 2018 at 11:37:10AM +0200, Rafael J. Wysocki wrote:
> On Tue, Jul 24, 2018 at 11:33 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> > 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.
> >
> > Fixes: 5bcd44083a08 ("drivers: acpi: add dependency of EFI for arm64")
> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> > ---
> >  arch/arm64/Kconfig   | 1 +
> >  drivers/acpi/Kconfig | 5 ++++-
> >  2 files changed, 5 insertions(+), 1 deletion(-)
> >
> > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> > index cdcaa6a798b2..2f987a938405 100644
> > --- a/arch/arm64/Kconfig
> > +++ b/arch/arm64/Kconfig
> > @@ -1267,6 +1267,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
> > diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
> > index a8da730fabc6..0cda51c5d433 100644
> > --- a/drivers/acpi/Kconfig
> > +++ b/drivers/acpi/Kconfig
> > @@ -6,7 +6,7 @@
> >  menuconfig ACPI
> >         bool "ACPI (Advanced Configuration and Power Interface) Support"
> >         depends on !IA64_HP_SIM
> > -       depends on IA64 || X86 || (ARM64 && EFI)
> > +       depends on IA64 || X86 || ARCH_SUPPORTS_ACPI
> 
> That doesn't look particularly consistent to me.
> 
> It should be either "depends on ARCH_SUPPORTS_ACPI" alone or mention
> ARM64 somehow IMO

How about something along the lines of what Ard suggested? Untested diff
below.

Will

--->8

diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 303809c6..ec78d4d 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -56,6 +56,7 @@ config ARM64
        select ARCH_USE_CMPXCHG_LOCKREF
        select ARCH_USE_QUEUED_RWLOCKS
        select ARCH_USE_QUEUED_SPINLOCKS
+       select ARCH_SUPPORTS_ACPI
        select ARCH_SUPPORTS_MEMORY_FAILURE
        select ARCH_SUPPORTS_ATOMIC_RMW
        select ARCH_SUPPORTS_INT128 if GCC_VERSION >= 50000 || CC_IS_CLANG
diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
index 15ab1da..198db2d 100644
--- a/drivers/acpi/Kconfig
+++ b/drivers/acpi/Kconfig
@@ -3,10 +3,12 @@
 # ACPI Configuration
 #
 
+config ARCH_SUPPORTS_ACPI
+       def_bool (IA64 && !IA64_HP_SIM) || X86
+
 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)

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] arm64: fix ACPI dependencies
  2018-07-24  9:44   ` Will Deacon
@ 2018-07-24  9:46     ` Arnd Bergmann
  2018-07-24  9:49       ` Will Deacon
  0 siblings, 1 reply; 5+ messages in thread
From: Arnd Bergmann @ 2018-07-24  9:46 UTC (permalink / raw)
  To: Will Deacon
  Cc: Rafael J. Wysocki, Catalin Marinas, Rafael J. Wysocki, Len Brown,
	AKASHI Takahiro, Ard Biesheuvel, Mark Rutland, Marc Zyngier,
	Linux ARM, Linux Kernel Mailing List, ACPI Devel Maling List

On Tue, Jul 24, 2018 at 11:44 AM, Will Deacon <will.deacon@arm.com> wrote:
> On Tue, Jul 24, 2018 at 11:37:10AM +0200, Rafael J. Wysocki wrote:
>> On Tue, Jul 24, 2018 at 11:33 AM, Arnd Bergmann <arnd@arndb.de> wrote:

>
> How about something along the lines of what Ard suggested? Untested diff
> below.
>
>
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index 303809c6..ec78d4d 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -56,6 +56,7 @@ config ARM64
>         select ARCH_USE_CMPXCHG_LOCKREF
>         select ARCH_USE_QUEUED_RWLOCKS
>         select ARCH_USE_QUEUED_SPINLOCKS
> +       select ARCH_SUPPORTS_ACPI
>         select ARCH_SUPPORTS_MEMORY_FAILURE
>         select ARCH_SUPPORTS_ATOMIC_RMW
>         select ARCH_SUPPORTS_INT128 if GCC_VERSION >= 50000 || CC_IS_CLANG

I'd prefer Rafael's suggestion of just leaving out the architecture names from
the dependency, and making all three 'select ARCH_SUPPORTS_ACPI'.

I'll send a v2.

      Arnd

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] arm64: fix ACPI dependencies
  2018-07-24  9:46     ` Arnd Bergmann
@ 2018-07-24  9:49       ` Will Deacon
  0 siblings, 0 replies; 5+ messages in thread
From: Will Deacon @ 2018-07-24  9:49 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Rafael J. Wysocki, Catalin Marinas, Rafael J. Wysocki, Len Brown,
	AKASHI Takahiro, Ard Biesheuvel, Mark Rutland, Marc Zyngier,
	Linux ARM, Linux Kernel Mailing List, ACPI Devel Maling List

On Tue, Jul 24, 2018 at 11:46:23AM +0200, Arnd Bergmann wrote:
> On Tue, Jul 24, 2018 at 11:44 AM, Will Deacon <will.deacon@arm.com> wrote:
> > On Tue, Jul 24, 2018 at 11:37:10AM +0200, Rafael J. Wysocki wrote:
> >> On Tue, Jul 24, 2018 at 11:33 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> 
> >
> > How about something along the lines of what Ard suggested? Untested diff
> > below.
> >
> >
> > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> > index 303809c6..ec78d4d 100644
> > --- a/arch/arm64/Kconfig
> > +++ b/arch/arm64/Kconfig
> > @@ -56,6 +56,7 @@ config ARM64
> >         select ARCH_USE_CMPXCHG_LOCKREF
> >         select ARCH_USE_QUEUED_RWLOCKS
> >         select ARCH_USE_QUEUED_SPINLOCKS
> > +       select ARCH_SUPPORTS_ACPI
> >         select ARCH_SUPPORTS_MEMORY_FAILURE
> >         select ARCH_SUPPORTS_ATOMIC_RMW
> >         select ARCH_SUPPORTS_INT128 if GCC_VERSION >= 50000 || CC_IS_CLANG
> 
> I'd prefer Rafael's suggestion of just leaving out the architecture names from
> the dependency, and making all three 'select ARCH_SUPPORTS_ACPI'.
> 
> I'll send a v2.

Ok, thanks.

Will

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-07-24  9:49 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-07-24  9:33 [PATCH] arm64: fix ACPI dependencies Arnd Bergmann
2018-07-24  9:37 ` Rafael J. Wysocki
2018-07-24  9:44   ` Will Deacon
2018-07-24  9:46     ` Arnd Bergmann
2018-07-24  9:49       ` Will Deacon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).