diff mbox series

pmdomain: arm: scmi_pm_domain: set flag GENPD_FLAG_ACTIVE_WAKEUP

Message ID 20240514131833.911703-1-peng.fan@oss.nxp.com (mailing list archive)
State New
Headers show
Series pmdomain: arm: scmi_pm_domain: set flag GENPD_FLAG_ACTIVE_WAKEUP | expand

Commit Message

Peng Fan (OSS) May 14, 2024, 1:18 p.m. UTC
From: Peng Fan <peng.fan@nxp.com>

Set flag GENPD_FLAG_ACTIVE_WAKEUP to scmi genpd, then when a device
is set as wakeup source using device_set_wakeup_enable, the power
domain could be kept on to make sure the device could wakeup the system.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 drivers/pmdomain/arm/scmi_pm_domain.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Peng Fan May 31, 2024, 1:40 p.m. UTC | #1
> Subject: [PATCH] pmdomain: arm: scmi_pm_domain: set flag
> GENPD_FLAG_ACTIVE_WAKEUP

Ping..

Thanks,
Peng.
> 
> From: Peng Fan <peng.fan@nxp.com>
> 
> Set flag GENPD_FLAG_ACTIVE_WAKEUP to scmi genpd, then when a device is
> set as wakeup source using device_set_wakeup_enable, the power domain
> could be kept on to make sure the device could wakeup the system.
> 
> Signed-off-by: Peng Fan <peng.fan@nxp.com>
> ---
>  drivers/pmdomain/arm/scmi_pm_domain.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/pmdomain/arm/scmi_pm_domain.c
> b/drivers/pmdomain/arm/scmi_pm_domain.c
> index 0e05a79de82d..a7784a8bb5db 100644
> --- a/drivers/pmdomain/arm/scmi_pm_domain.c
> +++ b/drivers/pmdomain/arm/scmi_pm_domain.c
> @@ -102,6 +102,7 @@ static int scmi_pm_domain_probe(struct
> scmi_device *sdev)
>  		scmi_pd->genpd.name = scmi_pd->name;
>  		scmi_pd->genpd.power_off = scmi_pd_power_off;
>  		scmi_pd->genpd.power_on = scmi_pd_power_on;
> +		scmi_pd->genpd.flags = GENPD_FLAG_ACTIVE_WAKEUP;
> 
>  		pm_genpd_init(&scmi_pd->genpd, NULL,
>  			      state == SCMI_POWER_STATE_GENERIC_OFF);
> --
> 2.37.1
Sudeep Holla June 3, 2024, 1:19 p.m. UTC | #2
On Tue, May 14, 2024 at 09:18:33PM +0800, Peng Fan (OSS) wrote:
> From: Peng Fan <peng.fan@nxp.com>
>
> Set flag GENPD_FLAG_ACTIVE_WAKEUP to scmi genpd, then when a device
> is set as wakeup source using device_set_wakeup_enable, the power
> domain could be kept on to make sure the device could wakeup the system.
>

I am fine with the change, wonder if it can be made conditional but I can't
think of a sane way to do so. If Ulf thinks it is harmless to keep it
unconditional on all the domains, then I am fine with that.

I assume Ulf can pick this up directly,

Acked-by: Sudeep Holla <sudeep.holla@arm.com>

--
Regards,
Sudeep
Ulf Hansson June 5, 2024, 9:57 a.m. UTC | #3
On Tue, 14 May 2024 at 15:10, Peng Fan (OSS) <peng.fan@oss.nxp.com> wrote:
>
> From: Peng Fan <peng.fan@nxp.com>
>
> Set flag GENPD_FLAG_ACTIVE_WAKEUP to scmi genpd, then when a device
> is set as wakeup source using device_set_wakeup_enable, the power
> domain could be kept on to make sure the device could wakeup the system.
>
> Signed-off-by: Peng Fan <peng.fan@nxp.com>

Applied for next, thanks!

Kind regards
Uffe


> ---
>  drivers/pmdomain/arm/scmi_pm_domain.c | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/drivers/pmdomain/arm/scmi_pm_domain.c b/drivers/pmdomain/arm/scmi_pm_domain.c
> index 0e05a79de82d..a7784a8bb5db 100644
> --- a/drivers/pmdomain/arm/scmi_pm_domain.c
> +++ b/drivers/pmdomain/arm/scmi_pm_domain.c
> @@ -102,6 +102,7 @@ static int scmi_pm_domain_probe(struct scmi_device *sdev)
>                 scmi_pd->genpd.name = scmi_pd->name;
>                 scmi_pd->genpd.power_off = scmi_pd_power_off;
>                 scmi_pd->genpd.power_on = scmi_pd_power_on;
> +               scmi_pd->genpd.flags = GENPD_FLAG_ACTIVE_WAKEUP;
>
>                 pm_genpd_init(&scmi_pd->genpd, NULL,
>                               state == SCMI_POWER_STATE_GENERIC_OFF);
> --
> 2.37.1
>
diff mbox series

Patch

diff --git a/drivers/pmdomain/arm/scmi_pm_domain.c b/drivers/pmdomain/arm/scmi_pm_domain.c
index 0e05a79de82d..a7784a8bb5db 100644
--- a/drivers/pmdomain/arm/scmi_pm_domain.c
+++ b/drivers/pmdomain/arm/scmi_pm_domain.c
@@ -102,6 +102,7 @@  static int scmi_pm_domain_probe(struct scmi_device *sdev)
 		scmi_pd->genpd.name = scmi_pd->name;
 		scmi_pd->genpd.power_off = scmi_pd_power_off;
 		scmi_pd->genpd.power_on = scmi_pd_power_on;
+		scmi_pd->genpd.flags = GENPD_FLAG_ACTIVE_WAKEUP;
 
 		pm_genpd_init(&scmi_pd->genpd, NULL,
 			      state == SCMI_POWER_STATE_GENERIC_OFF);