Drop support for looking up and initialising legacy phys in USB core,
something which hasn't been used by a mainline kernel since commit
9080b8dc761a ("ARM: OMAP2+: Remove legacy usb-host.c platform init
code"). Specifically, since that commit usb_get_phy_dev() have always
returned -ENODEV and consequently this code has not been used.

Signed-off-by: Johan Hovold <jo...@kernel.org>
---
 drivers/usb/core/hcd.c  | 38 +++-----------------------------------
 include/linux/usb/hcd.h |  1 -
 2 files changed, 3 insertions(+), 36 deletions(-)

diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c
index 777036ae6367..6241d32c5ba7 100644
--- a/drivers/usb/core/hcd.c
+++ b/drivers/usb/core/hcd.c
@@ -33,7 +33,6 @@
 #include <linux/phy/phy.h>
 #include <linux/usb.h>
 #include <linux/usb/hcd.h>
-#include <linux/usb/phy.h>
 #include <linux/usb/otg.h>
 
 #include "usb.h"
@@ -2739,30 +2738,10 @@ int usb_add_hcd(struct usb_hcd *hcd,
        int retval;
        struct usb_device *rhdev;
 
-       if (IS_ENABLED(CONFIG_USB_PHY) && !hcd->skip_phy_initialization) {
-               struct usb_phy *phy = usb_get_phy_dev(hcd->self.sysdev, 0);
-
-               if (IS_ERR(phy)) {
-                       retval = PTR_ERR(phy);
-                       if (retval == -EPROBE_DEFER)
-                               return retval;
-               } else {
-                       retval = usb_phy_init(phy);
-                       if (retval) {
-                               usb_put_phy(phy);
-                               return retval;
-                       }
-                       hcd->usb_phy = phy;
-                       hcd->remove_phy = 1;
-               }
-       }
-
        if (!hcd->skip_phy_initialization && usb_hcd_is_primary_hcd(hcd)) {
                hcd->phy_roothub = usb_phy_roothub_init(hcd->self.sysdev);
-               if (IS_ERR(hcd->phy_roothub)) {
-                       retval = PTR_ERR(hcd->phy_roothub);
-                       goto err_phy_roothub_init;
-               }
+               if (IS_ERR(hcd->phy_roothub))
+                       return PTR_ERR(hcd->phy_roothub);
 
                retval = usb_phy_roothub_power_on(hcd->phy_roothub);
                if (retval)
@@ -2936,12 +2915,7 @@ int usb_add_hcd(struct usb_hcd *hcd,
        usb_phy_roothub_power_off(hcd->phy_roothub);
 err_usb_phy_roothub_power_on:
        usb_phy_roothub_exit(hcd->phy_roothub);
-err_phy_roothub_init:
-       if (hcd->remove_phy && hcd->usb_phy) {
-               usb_phy_shutdown(hcd->usb_phy);
-               usb_put_phy(hcd->usb_phy);
-               hcd->usb_phy = NULL;
-       }
+
        return retval;
 }
 EXPORT_SYMBOL_GPL(usb_add_hcd);
@@ -3017,12 +2991,6 @@ void usb_remove_hcd(struct usb_hcd *hcd)
        usb_phy_roothub_power_off(hcd->phy_roothub);
        usb_phy_roothub_exit(hcd->phy_roothub);
 
-       if (hcd->remove_phy && hcd->usb_phy) {
-               usb_phy_shutdown(hcd->usb_phy);
-               usb_put_phy(hcd->usb_phy);
-               hcd->usb_phy = NULL;
-       }
-
        usb_put_invalidate_rhdev(hcd);
        hcd->flags = 0;
 }
diff --git a/include/linux/usb/hcd.h b/include/linux/usb/hcd.h
index aef50cb2ed1b..e33009c77840 100644
--- a/include/linux/usb/hcd.h
+++ b/include/linux/usb/hcd.h
@@ -150,7 +150,6 @@ struct usb_hcd {
        unsigned                rh_pollable:1;  /* may we poll the root hub? */
        unsigned                msix_enabled:1; /* driver has MSI-X enabled? */
        unsigned                msi_enabled:1;  /* driver has MSI enabled? */
-       unsigned                remove_phy:1;   /* auto-remove USB phy */
        /*
         * do not manage the PHY state in the HCD core, instead let the driver
         * handle this (for example if the PHY can only be turned on after a
-- 
2.17.0

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to