usb: dwc3: remove dwc3-qcom in favor of dwc3-of-simple
authorFelipe Balbi <balbi@ti.com>
Thu, 19 Nov 2015 18:15:43 +0000 (12:15 -0600)
committerFelipe Balbi <balbi@ti.com>
Tue, 15 Dec 2015 15:12:41 +0000 (09:12 -0600)
Now that we have a generic dwc3-of-simple.c, we can
use that instead of maintaining dwc3-qcom.c which is
extremely similar.

Cc: Ivan T. Ivanov <iivanov@mm-sol.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/dwc3/Kconfig
drivers/usb/dwc3/Makefile
drivers/usb/dwc3/dwc3-qcom.c [deleted file]

index 070e704829e5e9c2d0eac65024d8140420d34c4d..a64ce1c94d6d36901a97cda2a62c536423420eb7 100644 (file)
@@ -105,12 +105,4 @@ config USB_DWC3_ST
          inside (i.e. STiH407).
          Say 'Y' or 'M' if you have one such device.
 
-config USB_DWC3_QCOM
-       tristate "Qualcomm Platforms"
-       depends on ARCH_QCOM || COMPILE_TEST
-       default USB_DWC3
-       help
-         Recent Qualcomm SoCs ship with one DesignWare Core USB3 IP inside,
-         say 'Y' or 'M' if you have one such device.
-
 endif
index 6491f9b474d4700cb5f596102bb358ca73cb0a16..22420e17d68bc5d708655ed164af528f2b8b9100 100644 (file)
@@ -38,5 +38,4 @@ obj-$(CONFIG_USB_DWC3_EXYNOS)         += dwc3-exynos.o
 obj-$(CONFIG_USB_DWC3_PCI)             += dwc3-pci.o
 obj-$(CONFIG_USB_DWC3_KEYSTONE)                += dwc3-keystone.o
 obj-$(CONFIG_USB_DWC3_OF_SIMPLE)       += dwc3-of-simple.o
-obj-$(CONFIG_USB_DWC3_QCOM)            += dwc3-qcom.o
 obj-$(CONFIG_USB_DWC3_ST)              += dwc3-st.o
diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c
deleted file mode 100644 (file)
index 0880260..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-/* Copyright (c) 2013-2014, The Linux Foundation. All rights reserved.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 and
- * only version 2 as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- */
-
-#include <linux/clk.h>
-#include <linux/err.h>
-#include <linux/io.h>
-#include <linux/module.h>
-#include <linux/of.h>
-#include <linux/of_platform.h>
-#include <linux/platform_device.h>
-
-struct dwc3_qcom {
-       struct device           *dev;
-
-       struct clk              *core_clk;
-       struct clk              *iface_clk;
-       struct clk              *sleep_clk;
-};
-
-static int dwc3_qcom_probe(struct platform_device *pdev)
-{
-       struct device_node *node = pdev->dev.of_node;
-       struct dwc3_qcom *qdwc;
-       int ret;
-
-       qdwc = devm_kzalloc(&pdev->dev, sizeof(*qdwc), GFP_KERNEL);
-       if (!qdwc)
-               return -ENOMEM;
-
-       platform_set_drvdata(pdev, qdwc);
-
-       qdwc->dev = &pdev->dev;
-
-       qdwc->core_clk = devm_clk_get(qdwc->dev, "core");
-       if (IS_ERR(qdwc->core_clk)) {
-               dev_err(qdwc->dev, "failed to get core clock\n");
-               return PTR_ERR(qdwc->core_clk);
-       }
-
-       qdwc->iface_clk = devm_clk_get(qdwc->dev, "iface");
-       if (IS_ERR(qdwc->iface_clk)) {
-               dev_info(qdwc->dev, "failed to get optional iface clock\n");
-               qdwc->iface_clk = NULL;
-       }
-
-       qdwc->sleep_clk = devm_clk_get(qdwc->dev, "sleep");
-       if (IS_ERR(qdwc->sleep_clk)) {
-               dev_info(qdwc->dev, "failed to get optional sleep clock\n");
-               qdwc->sleep_clk = NULL;
-       }
-
-       ret = clk_prepare_enable(qdwc->core_clk);
-       if (ret) {
-               dev_err(qdwc->dev, "failed to enable core clock\n");
-               goto err_core;
-       }
-
-       ret = clk_prepare_enable(qdwc->iface_clk);
-       if (ret) {
-               dev_err(qdwc->dev, "failed to enable optional iface clock\n");
-               goto err_iface;
-       }
-
-       ret = clk_prepare_enable(qdwc->sleep_clk);
-       if (ret) {
-               dev_err(qdwc->dev, "failed to enable optional sleep clock\n");
-               goto err_sleep;
-       }
-
-       ret = of_platform_populate(node, NULL, NULL, qdwc->dev);
-       if (ret) {
-               dev_err(qdwc->dev, "failed to register core - %d\n", ret);
-               goto err_clks;
-       }
-
-       return 0;
-
-err_clks:
-       clk_disable_unprepare(qdwc->sleep_clk);
-err_sleep:
-       clk_disable_unprepare(qdwc->iface_clk);
-err_iface:
-       clk_disable_unprepare(qdwc->core_clk);
-err_core:
-       return ret;
-}
-
-static int dwc3_qcom_remove(struct platform_device *pdev)
-{
-       struct dwc3_qcom *qdwc = platform_get_drvdata(pdev);
-
-       of_platform_depopulate(&pdev->dev);
-
-       clk_disable_unprepare(qdwc->sleep_clk);
-       clk_disable_unprepare(qdwc->iface_clk);
-       clk_disable_unprepare(qdwc->core_clk);
-
-       return 0;
-}
-
-static const struct of_device_id of_dwc3_match[] = {
-       { .compatible = "qcom,dwc3" },
-       { /* Sentinel */ }
-};
-MODULE_DEVICE_TABLE(of, of_dwc3_match);
-
-static struct platform_driver dwc3_qcom_driver = {
-       .probe          = dwc3_qcom_probe,
-       .remove         = dwc3_qcom_remove,
-       .driver         = {
-               .name   = "qcom-dwc3",
-               .of_match_table = of_dwc3_match,
-       },
-};
-
-module_platform_driver(dwc3_qcom_driver);
-
-MODULE_ALIAS("platform:qcom-dwc3");
-MODULE_LICENSE("GPL v2");
-MODULE_DESCRIPTION("DesignWare USB3 QCOM Glue Layer");
-MODULE_AUTHOR("Ivan T. Ivanov <iivanov@mm-sol.com>");