Re: [PATCH v2 3/5] [RFC] soc: mediatek: Use GENPD_FLAG_ACTIVE_WAKEUP

From: Matthias Brugger
Date: Thu Nov 02 2017 - 07:32:22 EST




On 10/31/2017 07:11 PM, Geert Uytterhoeven wrote:
> Set the newly introduced GENPD_FLAG_ACTIVE_WAKEUP, which allows to
> remove the driver's own flag-based callback.
>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
> ---
> This must not be applied before "PM / Domain: Enable genpd users to
> specify default active wakeup behavior" has landed upstream, hence the
> "RFC".
>
> Compile-tested only.
>
> v2:
> - New.
> ---
> drivers/soc/mediatek/mtk-scpsys.c | 14 ++------------
> 1 file changed, 2 insertions(+), 12 deletions(-)
>

Acked-by: Matthias Brugger <matthias.bgg@xxxxxxxxx>

> diff --git a/drivers/soc/mediatek/mtk-scpsys.c b/drivers/soc/mediatek/mtk-scpsys.c
> index e1ce8b1b5090aa0a..e570b6af2e6ffbdd 100644
> --- a/drivers/soc/mediatek/mtk-scpsys.c
> +++ b/drivers/soc/mediatek/mtk-scpsys.c
> @@ -361,17 +361,6 @@ static int scpsys_power_off(struct generic_pm_domain *genpd)
> return ret;
> }
>
> -static bool scpsys_active_wakeup(struct device *dev)
> -{
> - struct generic_pm_domain *genpd;
> - struct scp_domain *scpd;
> -
> - genpd = pd_to_genpd(dev->pm_domain);
> - scpd = container_of(genpd, struct scp_domain, genpd);
> -
> - return scpd->data->active_wakeup;
> -}
> -
> static void init_clks(struct platform_device *pdev, struct clk **clk)
> {
> int i;
> @@ -466,7 +455,8 @@ static struct scp *init_scp(struct platform_device *pdev,
> genpd->name = data->name;
> genpd->power_off = scpsys_power_off;
> genpd->power_on = scpsys_power_on;
> - genpd->dev_ops.active_wakeup = scpsys_active_wakeup;
> + if (scpd->data->active_wakeup)
> + genpd->flags |= GENPD_FLAG_ACTIVE_WAKEUP;
> }
>
> return scp;
>