Re: [PATCH 5/8] usb: phy: fsl: Use the new device_to_pm() helper to access struct dev_pm_ops

Rafael J. Wysocki
2020-05-26T08:39:10Z

On Mon, May 25, 2020 at 8:26 PM Krzysztof Wilczyński <kw@linux.com> wrote:
>
> Use the new device_to_pm() helper to access Power Management callbacs
> (struct dev_pm_ops) for a particular device (struct device_driver).
>
> No functional change intended.
>
> Signed-off-by: Krzysztof Wilczyński <kw@linux.com>
> ---
> drivers/usb/phy/phy-fsl-usb.c | 11 +++++++----
> 1 file changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/usb/phy/phy-fsl-usb.c b/drivers/usb/phy/phy-fsl-usb.c
> index b451f4695f3f..3b9ad5db8380 100644
> --- a/drivers/usb/phy/phy-fsl-usb.c
> +++ b/drivers/usb/phy/phy-fsl-usb.c
> @@ -460,6 +460,7 @@ int fsl_otg_start_host(struct otg_fsm *fsm, int on)
> struct device *dev;
> struct fsl_otg *otg_dev =
> container_of(otg->usb_phy, struct fsl_otg, phy);
> + const struct dev_pm_ops *pm;
> u32 retval = 0;
>
> if (!otg->host)
> @@ -479,8 +480,9 @@ int fsl_otg_start_host(struct otg_fsm *fsm, int on)
> else {
> otg_reset_controller();
> VDBG("host on......\n");
> - if (dev->driver->pm && dev->driver->pm->resume) {
> - retval = dev->driver->pm->resume(dev);
> + pm = driver_to_pm(dev->driver);
> + if (pm && pm->resume) {
> + retval = pm->resume(dev);

And why is the new version better this time?

> if (fsm->id) {
> /* default-b */
> fsl_otg_drv_vbus(fsm, 1);
> @@ -504,8 +506,9 @@ int fsl_otg_start_host(struct otg_fsm *fsm, int on)
> else {
> VDBG("host off......\n");
> if (dev && dev->driver) {
> - if (dev->driver->pm && dev->driver->pm->suspend)
> - retval = dev->driver->pm->suspend(dev);
> + pm = driver_to_pm(dev->driver);
> + if (pm && pm->suspend)
> + retval = pm->suspend(dev);
> if (fsm->id)
> /* default-b */
> fsl_otg_drv_vbus(fsm, 0);
> --
> 2.26.2
>