> From: Abel Vesa
> Sent: Monday, March 25, 2019 10:00 PM
> 
> Add suspend/resume pm ops to the pinctrl i.MX8MQ driver.
> Make the suspend late and the resume early since some of the pins might be
> needed active very late.
> These call the pinctrl-imx generic handlers.
> 
> Signed-off-by: Abel Vesa <abel.v...@nxp.com>
> ---
>  drivers/pinctrl/freescale/pinctrl-imx8mq.c | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
> diff --git a/drivers/pinctrl/freescale/pinctrl-imx8mq.c
> b/drivers/pinctrl/freescale/pinctrl-imx8mq.c
> index 8d39af5..2a212bc 100644
> --- a/drivers/pinctrl/freescale/pinctrl-imx8mq.c
> +++ b/drivers/pinctrl/freescale/pinctrl-imx8mq.c
> @@ -335,10 +335,26 @@ static int imx8mq_pinctrl_probe(struct
> platform_device *pdev)
>       return imx_pinctrl_probe(pdev, &imx8mq_pinctrl_info);  }
> 
> +static int imx8mq_pinctrl_suspend(struct device *dev) {
> +     return imx_pinctrl_suspend(dev);
> +}
> +
> +static int imx8mq_pinctrl_resume(struct device *dev) {
> +     return imx_pinctrl_resume(dev);
> +}
> +
> +static const struct dev_pm_ops imx8mq_pinctrl_pm_ops = {

It looks we did not nothing special on the dev_pm_ops for platform drivers.
So do you think if we can move this into common pinctrl-imx.c?
Then platform driver does not need to implement the duplicated things?

Regards
Dong Aisheng

> +     SET_LATE_SYSTEM_SLEEP_PM_OPS(imx8mq_pinctrl_suspend,
> +                                     imx8mq_pinctrl_resume)
> +};
> +
>  static struct platform_driver imx8mq_pinctrl_driver = {
>       .driver = {
>               .name = "imx8mq-pinctrl",
>               .of_match_table = of_match_ptr(imx8mq_pinctrl_of_match),
> +             .pm = &imx8mq_pinctrl_pm_ops,
>               .suppress_bind_attrs = true,
>       },
>       .probe = imx8mq_pinctrl_probe,
> --
> 2.7.4

Reply via email to