can: m_can: m_can_clk_start(): make use of pm_runtime_resume_and_get()
authorMarc Kleine-Budde <mkl@pengutronix.de>
Sat, 12 Dec 2020 17:55:16 +0000 (18:55 +0100)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Mon, 14 Dec 2020 13:24:11 +0000 (14:24 +0100)
With patch

dd8088d5a896 PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter

the usual pm_runtime_get_sync() and pm_runtime_put_noidle() in-case-of-error
dance is no longer needed. Convert the m_can driver to use this function.

Link: https://lore.kernel.org/r/20201212175518.139651-6-mkl@pengutronix.de
Reviewed-by: Sean Nyekjaer <sean@geanix.com>
Reviewed-by: Dan Murphy <dmurphy@ti.com>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/m_can/m_can.c

index cf876c5..f258c81 100644 (file)
@@ -612,18 +612,10 @@ static int __m_can_get_berr_counter(const struct net_device *dev,
 
 static int m_can_clk_start(struct m_can_classdev *cdev)
 {
-       int err;
-
        if (cdev->pm_clock_support == 0)
                return 0;
 
-       err = pm_runtime_get_sync(cdev->dev);
-       if (err < 0) {
-               pm_runtime_put_noidle(cdev->dev);
-               return err;
-       }
-
-       return 0;
+       return pm_runtime_resume_and_get(cdev->dev);
 }
 
 static void m_can_clk_stop(struct m_can_classdev *cdev)