diff mbox

[v4,13/13] ARM64 / ACPI: Enable ARM64 in Kconfig

Message ID 1403840976-7456-14-git-send-email-hanjun.guo@linaro.org (mailing list archive)
State New, archived
Headers show

Commit Message

Hanjun Guo June 27, 2014, 3:49 a.m. UTC
From: Graeme Gregory <graeme.gregory@linaro.org>

Add Kconfigs to build ACPI on ARM64, and make ACPI available on ARM64.

acpi_idle driver is x86/IA64 dependent now, so make CONFIG_ACPI_PROCESSOR
depend on X86 || IA64, and implement it on ARM64 in the future.

Reviewed-by: Grant Likely <grant.likely@linaro.org>
Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
Signed-off-by: Al Stone <al.stone@linaro.org>
Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org>
---
 arch/arm64/Kconfig   |    2 ++
 drivers/acpi/Kconfig |    5 +++--
 2 files changed, 5 insertions(+), 2 deletions(-)

Comments

Catalin Marinas June 30, 2014, 10:46 a.m. UTC | #1
On Fri, Jun 27, 2014 at 04:49:36AM +0100, Hanjun Guo wrote:
> diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
> index 7de5e3f..33d6dbb 100644
> --- a/drivers/acpi/Kconfig
> +++ b/drivers/acpi/Kconfig
> @@ -8,10 +8,10 @@ config ACPI_SCAN_BIOS_NOT_EFI
>  menuconfig ACPI
>  	bool "ACPI (Advanced Configuration and Power Interface) Support"
>  	depends on !IA64_HP_SIM
> -	depends on IA64 || X86
> +	depends on IA64 || X86 || ARM64

I still don't understand what the point of enabling ACPI for arm64
during this series is. Do you get any working arm64 functionality
(on hardware or model) without subsequent patches? If it's just for
compilation reasons, the best we could do is depending on (ARM64 &&
COMPILE_TEST) but even though I would not merge this patch until we have
most of the arm64 required features in place (some of which are
introduced by the upcoming ACPI version).

>  	depends on PCI
>  	select PNP
> -	default y
> +	default y if !ARM64

For the benefit of single Image, I think you can default to y here.
Hanjun Guo July 1, 2014, 7:54 a.m. UTC | #2
On 2014-6-30 18:46, Catalin Marinas wrote:
> On Fri, Jun 27, 2014 at 04:49:36AM +0100, Hanjun Guo wrote:
>> diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
>> index 7de5e3f..33d6dbb 100644
>> --- a/drivers/acpi/Kconfig
>> +++ b/drivers/acpi/Kconfig
>> @@ -8,10 +8,10 @@ config ACPI_SCAN_BIOS_NOT_EFI
>>  menuconfig ACPI
>>  	bool "ACPI (Advanced Configuration and Power Interface) Support"
>>  	depends on !IA64_HP_SIM
>> -	depends on IA64 || X86
>> +	depends on IA64 || X86 || ARM64
> 
> I still don't understand what the point of enabling ACPI for arm64
> during this series is. Do you get any working arm64 functionality
> (on hardware or model) without subsequent patches? If it's just for
> compilation reasons, the best we could do is depending on (ARM64 &&
> COMPILE_TEST) but even though I would not merge this patch until we have
> most of the arm64 required features in place (some of which are
> introduced by the upcoming ACPI version).

it is ok to me to merge all the patches together, but if Rafael is happy
with the clean up patches (patch 1~3) for ACPI core, they can be merged
first.

> 
>>  	depends on PCI
>>  	select PNP
>> -	default y
>> +	default y if !ARM64
> 
> For the benefit of single Image, I think you can default to y here.

It ok to me. if we default to y here, devicetree will not be unflattened
in default, is it ok to you? you can refer to "[PATCH 12/13] ARM64 / ACPI: if
we chose to boot from acpi then disable FDT".

Thanks
Hanjun
Hanjun Guo July 1, 2014, 8:20 a.m. UTC | #3
>>
>>>  	depends on PCI
>>>  	select PNP
>>> -	default y
>>> +	default y if !ARM64
>>
>> For the benefit of single Image, I think you can default to y here.
> 
> It ok to me. if we default to y here, devicetree will not be unflattened
> in default, is it ok to you? you can refer to "[PATCH 12/13] ARM64 / ACPI: if
> we chose to boot from acpi then disable FDT".

Ah, sorry I didn't describe it clearly. since there is no shipping board
with ACPI tables, so ACPI will disabled in the very early stage and FDT
still have chance to be unflattened, so will not break DT booting in
this patchset.

Thanks
Hanjun
Catalin Marinas July 1, 2014, 9:22 a.m. UTC | #4
On Tue, Jul 01, 2014 at 09:20:20AM +0100, Hanjun Guo wrote:
> >>>  	depends on PCI
> >>>  	select PNP
> >>> -	default y
> >>> +	default y if !ARM64
> >>
> >> For the benefit of single Image, I think you can default to y here.
> > 
> > It ok to me. if we default to y here, devicetree will not be unflattened
> > in default, is it ok to you? you can refer to "[PATCH 12/13] ARM64 / ACPI: if
> > we chose to boot from acpi then disable FDT".
> 
> Ah, sorry I didn't describe it clearly. since there is no shipping board
> with ACPI tables, so ACPI will disabled in the very early stage and FDT
> still have chance to be unflattened, so will not break DT booting in
> this patchset.

That's what I thought. So leaving it as a default y is fine by me. But I
would not merge this patch now until we get some useful functionality
for arm64.

The x86-related cleanup patches can be merged separately via the
corresponding trees (it's up to the ACPI and x86 maintainers).
diff mbox

Patch

diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 102384e..314634f 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -377,6 +377,8 @@  source "drivers/Kconfig"
 
 source "drivers/firmware/Kconfig"
 
+source "drivers/acpi/Kconfig"
+
 source "fs/Kconfig"
 
 source "arch/arm64/kvm/Kconfig"
diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
index 7de5e3f..33d6dbb 100644
--- a/drivers/acpi/Kconfig
+++ b/drivers/acpi/Kconfig
@@ -8,10 +8,10 @@  config ACPI_SCAN_BIOS_NOT_EFI
 menuconfig ACPI
 	bool "ACPI (Advanced Configuration and Power Interface) Support"
 	depends on !IA64_HP_SIM
-	depends on IA64 || X86
+	depends on IA64 || X86 || ARM64
 	depends on PCI
 	select PNP
-	default y
+	default y if !ARM64
 	help
 	  Advanced Configuration and Power Interface (ACPI) support for 
 	  Linux requires an ACPI-compliant platform (hardware/firmware),
@@ -161,6 +161,7 @@  config ACPI_PROCESSOR
 	tristate "Processor"
 	select THERMAL
 	select CPU_IDLE
+	depends on X86 || IA64
 	default y
 	help
 	  This driver installs ACPI as the idle handler for Linux and uses