Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e61bebde authored by Chanwoo Choi's avatar Chanwoo Choi Committed by Felipe Balbi
Browse files

usb: phy: msm: Replace the extcon API



This patch uses the resource-managed extcon API for extcon_register_notifier()
and replaces the deprecated extcon API as following:
- extcon_get_cable_state_() -> extcon_get_state()

Signed-off-by: default avatarChanwoo Choi <cw00.choi@samsung.com>
Acked-by: default avatarFelipe Balbi <felipe.balbi@linux.intel.com>
Signed-off-by: default avatarFelipe Balbi <felipe.balbi@linux.intel.com>
parent 7df33789
Loading
Loading
Loading
Loading
+11 −22
Original line number Original line Diff line number Diff line
@@ -1742,14 +1742,14 @@ static int msm_otg_read_dt(struct platform_device *pdev, struct msm_otg *motg)
	if (!IS_ERR(ext_vbus)) {
	if (!IS_ERR(ext_vbus)) {
		motg->vbus.extcon = ext_vbus;
		motg->vbus.extcon = ext_vbus;
		motg->vbus.nb.notifier_call = msm_otg_vbus_notifier;
		motg->vbus.nb.notifier_call = msm_otg_vbus_notifier;
		ret = extcon_register_notifier(ext_vbus, EXTCON_USB,
		ret = devm_extcon_register_notifier(&pdev->dev, ext_vbus,
						&motg->vbus.nb);
						EXTCON_USB, &motg->vbus.nb);
		if (ret < 0) {
		if (ret < 0) {
			dev_err(&pdev->dev, "register VBUS notifier failed\n");
			dev_err(&pdev->dev, "register VBUS notifier failed\n");
			return ret;
			return ret;
		}
		}


		ret = extcon_get_cable_state_(ext_vbus, EXTCON_USB);
		ret = extcon_get_state(ext_vbus, EXTCON_USB);
		if (ret)
		if (ret)
			set_bit(B_SESS_VLD, &motg->inputs);
			set_bit(B_SESS_VLD, &motg->inputs);
		else
		else
@@ -1759,16 +1759,14 @@ static int msm_otg_read_dt(struct platform_device *pdev, struct msm_otg *motg)
	if (!IS_ERR(ext_id)) {
	if (!IS_ERR(ext_id)) {
		motg->id.extcon = ext_id;
		motg->id.extcon = ext_id;
		motg->id.nb.notifier_call = msm_otg_id_notifier;
		motg->id.nb.notifier_call = msm_otg_id_notifier;
		ret = extcon_register_notifier(ext_id, EXTCON_USB_HOST,
		ret = devm_extcon_register_notifier(&pdev->dev, ext_id,
						&motg->id.nb);
						EXTCON_USB_HOST, &motg->id.nb);
		if (ret < 0) {
		if (ret < 0) {
			dev_err(&pdev->dev, "register ID notifier failed\n");
			dev_err(&pdev->dev, "register ID notifier failed\n");
			extcon_unregister_notifier(motg->vbus.extcon,
						   EXTCON_USB, &motg->vbus.nb);
			return ret;
			return ret;
		}
		}


		ret = extcon_get_cable_state_(ext_id, EXTCON_USB_HOST);
		ret = extcon_get_state(ext_id, EXTCON_USB_HOST);
		if (ret)
		if (ret)
			clear_bit(ID, &motg->inputs);
			clear_bit(ID, &motg->inputs);
		else
		else
@@ -1883,10 +1881,9 @@ static int msm_otg_probe(struct platform_device *pdev)
	 */
	 */
	if (motg->phy_number) {
	if (motg->phy_number) {
		phy_select = devm_ioremap_nocache(&pdev->dev, USB2_PHY_SEL, 4);
		phy_select = devm_ioremap_nocache(&pdev->dev, USB2_PHY_SEL, 4);
		if (!phy_select) {
		if (!phy_select)
			ret = -ENOMEM;
			return -ENOMEM;
			goto unregister_extcon;

		}
		/* Enable second PHY with the OTG port */
		/* Enable second PHY with the OTG port */
		writel(0x1, phy_select);
		writel(0x1, phy_select);
	}
	}
@@ -1897,7 +1894,7 @@ static int msm_otg_probe(struct platform_device *pdev)
	if (motg->irq < 0) {
	if (motg->irq < 0) {
		dev_err(&pdev->dev, "platform_get_irq failed\n");
		dev_err(&pdev->dev, "platform_get_irq failed\n");
		ret = motg->irq;
		ret = motg->irq;
		goto unregister_extcon;
		return motg->irq;
	}
	}


	regs[0].supply = "vddcx";
	regs[0].supply = "vddcx";
@@ -1906,7 +1903,7 @@ static int msm_otg_probe(struct platform_device *pdev)


	ret = devm_regulator_bulk_get(motg->phy.dev, ARRAY_SIZE(regs), regs);
	ret = devm_regulator_bulk_get(motg->phy.dev, ARRAY_SIZE(regs), regs);
	if (ret)
	if (ret)
		goto unregister_extcon;
		return ret;


	motg->vddcx = regs[0].consumer;
	motg->vddcx = regs[0].consumer;
	motg->v3p3  = regs[1].consumer;
	motg->v3p3  = regs[1].consumer;
@@ -2003,11 +2000,6 @@ static int msm_otg_probe(struct platform_device *pdev)
	clk_disable_unprepare(motg->clk);
	clk_disable_unprepare(motg->clk);
	if (!IS_ERR(motg->core_clk))
	if (!IS_ERR(motg->core_clk))
		clk_disable_unprepare(motg->core_clk);
		clk_disable_unprepare(motg->core_clk);
unregister_extcon:
	extcon_unregister_notifier(motg->id.extcon,
				   EXTCON_USB_HOST, &motg->id.nb);
	extcon_unregister_notifier(motg->vbus.extcon,
				   EXTCON_USB, &motg->vbus.nb);


	return ret;
	return ret;
}
}
@@ -2029,9 +2021,6 @@ static int msm_otg_remove(struct platform_device *pdev)
	 */
	 */
	gpiod_set_value_cansleep(motg->switch_gpio, 0);
	gpiod_set_value_cansleep(motg->switch_gpio, 0);


	extcon_unregister_notifier(motg->id.extcon, EXTCON_USB_HOST, &motg->id.nb);
	extcon_unregister_notifier(motg->vbus.extcon, EXTCON_USB, &motg->vbus.nb);

	msm_otg_debugfs_cleanup();
	msm_otg_debugfs_cleanup();
	cancel_delayed_work_sync(&motg->chg_work);
	cancel_delayed_work_sync(&motg->chg_work);
	cancel_work_sync(&motg->sm_work);
	cancel_work_sync(&motg->sm_work);