[PATCH v21 05/13] mfd: psci-mfd: Add PSCI MFD driver for cpuidle-psci-domain cell
Shivendra Pratap
shivendra.pratap at oss.qualcomm.com
Wed Apr 29 10:16:01 PDT 2026
On 29-04-2026 20:10, Pankaj Patil wrote:
> On 4/27/2026 11:04 PM, Shivendra Pratap wrote:
>> PSCI has multiple kernel consumers, such as cpuidle-psci-domain.
>> Currently, both the PSCI core driver and cpuidle-psci-domain bind
>> directly to the same PSCI node "arm,psci-1.0". Additional consumers, if
>> introduced, would also need to bind in the same way, leading to several
>> drivers attached to a single device node.
>>
>> Introduce a PSCI MFD driver that binds to "arm,psci-1.0" and registers
>> PSCI child cells. As the first user, register cpuidle-psci-domain as a
>> child cell.
>>
>> Update cpuidle-psci-domain to probe as an MFD child and use the parent
>> PSCI node for power-domain traversal.
>>
>> Signed-off-by: Shivendra Pratap <shivendra.pratap at oss.qualcomm.com>
>> ---
>> MAINTAINERS | 1 +
>> drivers/cpuidle/Kconfig.arm | 1 +
>> drivers/cpuidle/cpuidle-psci-domain.c | 9 +-------
>> drivers/mfd/Kconfig | 10 ++++++++
>> drivers/mfd/Makefile | 2 ++
>> drivers/mfd/psci-mfd.c | 43 +++++++++++++++++++++++++++++++++++
>> 6 files changed, 58 insertions(+), 8 deletions(-)
>>
>> diff --git a/MAINTAINERS b/MAINTAINERS
>> index c871acf2179ce16c80b404027e6b969c7787a6bb..333b01fa00b8fbd15e6f31a6b9af47600411624e 100644
>> --- a/MAINTAINERS
>> +++ b/MAINTAINERS
>> @@ -21239,6 +21239,7 @@ L: linux-arm-kernel at lists.infradead.org (moderated for non-subscribers)
>> S: Maintained
>> F: Documentation/devicetree/bindings/arm/psci.yaml
>> F: drivers/firmware/psci/
>> +F: drivers/mfd/psci-mfd.c
>> F: include/linux/psci.h
>> F: include/uapi/linux/psci.h
>>
>> diff --git a/drivers/cpuidle/Kconfig.arm b/drivers/cpuidle/Kconfig.arm
>> index a1ee475d180dacab245510674514811aec337ad3..1a1316d11e0a2e4f61801586229f5104e2435865 100644
>> --- a/drivers/cpuidle/Kconfig.arm
>> +++ b/drivers/cpuidle/Kconfig.arm
>> @@ -36,6 +36,7 @@ config ARM_PSCI_CPUIDLE_DOMAIN
>> bool "PSCI CPU idle Domain"
>> depends on ARM_PSCI_CPUIDLE
>> depends on PM_GENERIC_DOMAINS_OF
>> + depends on MFD_PSCI
>
> Should this be select MFD_PSCI?
> We're seeing bootup issues on Glymur when MFD_PSCI is not y
sure. Let me check on this. We may need to make a change at "config
MFD_PSCI" --
config MFD_PSCI
bool "PSCI MFD for psci child cells"
depends on ARM_PSCI_FW
+ default y if ARM_PSCI_CPUIDLE
--
thanks,
Shivendra
More information about the linux-arm-kernel
mailing list