Commit 24843404 authored by Biju Das's avatar Biju Das Committed by Philipp Zabel
Browse files

phy: renesas: phy-rcar-gen3-usb2: Control VBUS for RZ/G2L SoCs



Use regulator_hardware_enable() for controlling VBUS enable for
RZ/G2L alike SoCs in interrupt context.

Signed-off-by: default avatarBiju Das <biju.das.jz@bp.renesas.com>
Acked-by: default avatarVinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20240702180032.207275-4-biju.das.jz@bp.renesas.com


Signed-off-by: default avatarPhilipp Zabel <p.zabel@pengutronix.de>
parent 4068f22e
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -188,6 +188,9 @@ static void rcar_gen3_enable_vbus_ctrl(struct rcar_gen3_chan *ch, int vbus)

	dev_vdbg(ch->dev, "%s: %08x, %d\n", __func__, val, vbus);
	if (ch->soc_no_adp_ctrl) {
		if (ch->vbus)
			regulator_hardware_enable(ch->vbus, vbus);

		vbus_ctrl_reg = USB2_VBCTRL;
		vbus_ctrl_val = USB2_VBCTRL_VBOUT;
	}
@@ -718,6 +721,9 @@ static int rcar_gen3_phy_usb2_probe(struct platform_device *pdev)
		phy_set_drvdata(channel->rphys[i].phy, &channel->rphys[i]);
	}

	if (channel->soc_no_adp_ctrl && channel->is_otg_channel)
		channel->vbus = devm_regulator_get_exclusive(dev, "vbus");
	else
		channel->vbus = devm_regulator_get_optional(dev, "vbus");
	if (IS_ERR(channel->vbus)) {
		if (PTR_ERR(channel->vbus) == -EPROBE_DEFER) {