]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
usb: phy: phy-qcom-8x16-usb: Remove redundant extcon register/unregister
authorBaolin Wang <baolin.wang@linaro.org>
Fri, 5 May 2017 06:12:25 +0000 (14:12 +0800)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Wed, 17 May 2017 11:15:34 +0000 (14:15 +0300)
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.wang@linaro.org>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
drivers/usb/phy/phy-qcom-8x16-usb.c

index fdf6863987728a9fa42d8141400d8c1a8892f07d..b6a83a5cbad36357915202ab5490bb854f51803f 100644 (file)
@@ -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;