usb: gadget: udc: renesas_usb3: move pm_runtime_{en,dis}able()
authorKazuya Mizuguchi <kazuya.mizuguchi.ks@renesas.com>
Fri, 29 Sep 2017 11:44:59 +0000 (20:44 +0900)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Thu, 19 Oct 2017 07:38:07 +0000 (10:38 +0300)
This patch moves pm_runtime_{en,dis}able() call timing to
renesas_usb3_{probe,remove}() for supporting PM_SLEEP feature in
the future.

Signed-off-by: Kazuya Mizuguchi <kazuya.mizuguchi.ks@renesas.com>
[shimoda: Revise the commit log]
Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
drivers/usb/gadget/udc/renesas_usb3.c

index 63a2061..740497c 100644 (file)
@@ -2239,7 +2239,6 @@ static int renesas_usb3_start(struct usb_gadget *gadget,
        /* hook up the driver */
        usb3->driver = driver;
 
-       pm_runtime_enable(usb3_to_dev(usb3));
        pm_runtime_get_sync(usb3_to_dev(usb3));
 
        renesas_usb3_init_controller(usb3);
@@ -2257,7 +2256,6 @@ static int renesas_usb3_stop(struct usb_gadget *gadget)
        renesas_usb3_stop_controller(usb3);
 
        pm_runtime_put(usb3_to_dev(usb3));
-       pm_runtime_disable(usb3_to_dev(usb3));
 
        return 0;
 }
@@ -2405,6 +2403,7 @@ static int renesas_usb3_remove(struct platform_device *pdev)
        renesas_usb3_dma_free_prd(usb3, &pdev->dev);
 
        __renesas_usb3_ep_free_request(usb3->ep0_req);
+       pm_runtime_disable(usb3_to_dev(usb3));
 
        return 0;
 }
@@ -2640,6 +2639,7 @@ static int renesas_usb3_probe(struct platform_device *pdev)
        renesas_usb3_debugfs_init(usb3, &pdev->dev);
 
        dev_info(&pdev->dev, "probed\n");
+       pm_runtime_enable(usb3_to_dev(usb3));
 
        return 0;