]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
ENGR00286426-16 usb: chipidea: usbmisc_imx: remove the controller's clock info
authorPeter Chen <peter.chen@freescale.com>
Tue, 22 Oct 2013 06:17:10 +0000 (14:17 +0800)
committerLothar Waßmann <LW@KARO-electronics.de>
Mon, 16 Jun 2014 16:05:57 +0000 (18:05 +0200)
Currently, the usbmisc is just an API supplier for controller
driver, the controller calls related APIs to handle different
things among the SoCs, before calling it, the clock must
be on. So the clock operation is useless for usbmisc, it also
increases the difficulties to manage the clock, especially at
runtime power management situation.

Signed-off-by: Peter Chen <peter.chen@freescale.com>
drivers/usb/chipidea/usbmisc_imx.c

index 85293b8b1df99a6ebbb6cc2c598505269ece6556..73f87b106a78a6721b319a8abf699b4247a5a657 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright 2012 Freescale Semiconductor, Inc.
+ * Copyright 2012-2013 Freescale Semiconductor, Inc.
  *
  * The code contained herein is licensed under the GNU General Public
  * License. You may obtain a copy of the GNU General Public License
@@ -11,7 +11,6 @@
 
 #include <linux/module.h>
 #include <linux/of_platform.h>
-#include <linux/clk.h>
 #include <linux/err.h>
 #include <linux/io.h>
 #include <linux/delay.h>
@@ -67,7 +66,6 @@ struct usbmisc_ops {
 struct imx_usbmisc {
        void __iomem *base;
        spinlock_t lock;
-       struct clk *clk;
        const struct usbmisc_ops *ops;
 };
 
@@ -291,7 +289,6 @@ static int usbmisc_imx_probe(struct platform_device *pdev)
 {
        struct resource *res;
        struct imx_usbmisc *data;
-       int ret;
        struct of_device_id *tmp_dev;
 
        if (usbmisc)
@@ -308,20 +305,6 @@ static int usbmisc_imx_probe(struct platform_device *pdev)
        if (IS_ERR(data->base))
                return PTR_ERR(data->base);
 
-       data->clk = devm_clk_get(&pdev->dev, NULL);
-       if (IS_ERR(data->clk)) {
-               dev_err(&pdev->dev,
-                       "failed to get clock, err=%ld\n", PTR_ERR(data->clk));
-               return PTR_ERR(data->clk);
-       }
-
-       ret = clk_prepare_enable(data->clk);
-       if (ret) {
-               dev_err(&pdev->dev,
-                       "clk_prepare_enable failed, err=%d\n", ret);
-               return ret;
-       }
-
        tmp_dev = (struct of_device_id *)
                of_match_device(usbmisc_imx_dt_ids, &pdev->dev);
        data->ops = (const struct usbmisc_ops *)tmp_dev->data;
@@ -332,7 +315,6 @@ static int usbmisc_imx_probe(struct platform_device *pdev)
 
 static int usbmisc_imx_remove(struct platform_device *pdev)
 {
-       clk_disable_unprepare(usbmisc->clk);
        usbmisc = NULL;
        return 0;
 }