RE: [PATCH v2 2/2] pinctrl: pinctrl-imx8mq: Add support PM operations

From: Aisheng Dong
Date: Thu Apr 04 2019 - 02:51:34 EST


> 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.vesa@xxxxxxx>
> ---
> 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