Re: [PATCH v10 7/7] ACPI : enable ACPI_PROCESSOR_IDLE on ARM64

Sudeep Holla
2016-08-02T13:00:16Z

On 29/07/16 20:05, Christopher Covington wrote:
> Hi Sudeep,
>
> On 07/19/2016 01:52 PM, Sudeep Holla wrote:
>> Now that ACPI processor idle driver supports LPI(Low Power Idle), lets
>> enable ACPI_PROCESSOR_IDLE for ARM64 too.
>>
>> This patch just removes the IA64 and X86 dependency on ACPI_PROCESSOR_IDLE
>>
>> Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net>
>> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
>> ---
>> drivers/acpi/Kconfig | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
>> index 1358fb7d7a68..d74275c0f374 100644
>> --- a/drivers/acpi/Kconfig
>> +++ b/drivers/acpi/Kconfig
>> @@ -238,7 +238,7 @@ config ACPI_CPPC_LIB
>> config ACPI_PROCESSOR
>> tristate "Processor"
>> depends on X86 || IA64 || ARM64
>> - select ACPI_PROCESSOR_IDLE if X86 || IA64
>> + select ACPI_PROCESSOR_IDLE
>> select ACPI_CPU_FREQ_PSS if X86 || IA64
>> default y
>> help
>>
>
> This causes a boot hang on QDF2432. cpuidle.off=1 works around the
> problem. I understand you're working on a fix to the problem in GICv3
> code. If there's anything I can do to help, please let me know.

Sorry for the late response, I was away. Yes it's to do with GICv3 and
retention states. I exchanged mails with QCOM guys in private. To summarize:

We don't need any additional support in Linux to support that. Infact we
need to remove disabling the redistributor in the powerdown path. PSCI
implementation also do the same for Group0(aka secure/EL3 interrupts)
and we currently do that for Group1(aka EL1N interrupts) in Linux. The
plan was to move that to EL3 code, to align with GICv2 code.

Hence the changes in Linux is just removal of the GICv3 PM notifier
partially. I will need to check with Trusted Firmware team and do some
testing before I post that change. I will plan to do that later this week.

--
Regards,
Sudeep