Since usb phy core has added common code to register or unregister
extcon device, then phy-qcom-8x16-usb driver does not need its own
code to register/unregister extcon device, then remove them.

Signed-off-by: Baolin Wang <baolin.w...@linaro.org>
---
 drivers/usb/phy/phy-qcom-8x16-usb.c |   20 +++++---------------
 1 file changed, 5 insertions(+), 15 deletions(-)

diff --git a/drivers/usb/phy/phy-qcom-8x16-usb.c 
b/drivers/usb/phy/phy-qcom-8x16-usb.c
index fdf6863..b6a83a5 100644
--- a/drivers/usb/phy/phy-qcom-8x16-usb.c
+++ b/drivers/usb/phy/phy-qcom-8x16-usb.c
@@ -69,9 +69,6 @@ struct phy_8x16 {
 
        struct reset_control            *phy_reset;
 
-       struct extcon_dev               *vbus_edev;
-       struct notifier_block           vbus_notify;
-
        struct gpio_desc                *switch_gpio;
        struct notifier_block           reboot_notify;
 };
@@ -131,7 +128,8 @@ static int phy_8x16_vbus_off(struct phy_8x16 *qphy)
 static int phy_8x16_vbus_notify(struct notifier_block *nb, unsigned long event,
                                void *ptr)
 {
-       struct phy_8x16 *qphy = container_of(nb, struct phy_8x16, vbus_notify);
+       struct usb_phy *usb_phy = container_of(nb, struct usb_phy, vbus_nb);
+       struct phy_8x16 *qphy = container_of(usb_phy, struct phy_8x16, phy);
 
        if (event)
                phy_8x16_vbus_on(qphy);
@@ -187,7 +185,7 @@ static int phy_8x16_init(struct usb_phy *phy)
        val = ULPI_PWR_OTG_COMP_DISABLE;
        usb_phy_io_write(phy, val, ULPI_SET(ULPI_PWR_CLK_MNG_REG));
 
-       state = extcon_get_state(qphy->vbus_edev, EXTCON_USB);
+       state = extcon_get_state(qphy->phy.edev, EXTCON_USB);
        if (state)
                phy_8x16_vbus_on(qphy);
        else
@@ -289,15 +287,13 @@ static int phy_8x16_probe(struct platform_device *pdev)
        phy->io_priv            = qphy->regs + HSPHY_ULPI_VIEWPORT;
        phy->io_ops             = &ulpi_viewport_access_ops;
        phy->type               = USB_PHY_TYPE_USB2;
+       phy->vbus_nb.notifier_call = phy_8x16_vbus_notify;
+       phy->id_nb.notifier_call = NULL;
 
        ret = phy_8x16_read_devicetree(qphy);
        if (ret < 0)
                return ret;
 
-       qphy->vbus_edev = extcon_get_edev_by_phandle(phy->dev, 0);
-       if (IS_ERR(qphy->vbus_edev))
-               return PTR_ERR(qphy->vbus_edev);
-
        ret = clk_set_rate(qphy->core_clk, INT_MAX);
        if (ret < 0)
                dev_dbg(phy->dev, "Can't boost core clock\n");
@@ -315,12 +311,6 @@ static int phy_8x16_probe(struct platform_device *pdev)
        if (WARN_ON(ret))
                goto off_clks;
 
-       qphy->vbus_notify.notifier_call = phy_8x16_vbus_notify;
-       ret = devm_extcon_register_notifier(&pdev->dev, qphy->vbus_edev,
-                                       EXTCON_USB, &qphy->vbus_notify);
-       if (ret < 0)
-               goto off_power;
-
        ret = usb_add_phy_dev(&qphy->phy);
        if (ret)
                goto off_power;
-- 
1.7.9.5

--
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