phy: renesas: rcar-gen3-usb2: fix vbus_ctrl for role sysfs
authorYoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Fri, 21 Sep 2018 11:53:18 +0000 (20:53 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Nov 2019 17:00:33 +0000 (18:00 +0100)
[ Upstream commit 09938ea9d136243e8d1fed6d4d7a257764f28f6d ]

This patch fixes and issue that the vbus_ctrl is disabled by
rcar_gen3_init_from_a_peri_to_a_host(), so a usb host cannot
supply the vbus.

Note that this condition will exit when the otg irq happens
even if we don't apply this patch.

Fixes: 9bb86777fb71 ("phy: rcar-gen3-usb2: add sysfs for usb role swap")
Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Reviewed-by: Simon Horman <horms+renesas@verge.net.au>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/phy/renesas/phy-rcar-gen3-usb2.c

index e8fe80312820d7f0f9f1d5376393836a9a5f74a1..7f5e36bfeee8d5e4bda718834092769cb26fa7b1 100644 (file)
@@ -195,7 +195,7 @@ static void rcar_gen3_init_from_a_peri_to_a_host(struct rcar_gen3_chan *ch)
        val = readl(usb2_base + USB2_OBINTEN);
        writel(val & ~USB2_OBINT_BITS, usb2_base + USB2_OBINTEN);
 
-       rcar_gen3_enable_vbus_ctrl(ch, 0);
+       rcar_gen3_enable_vbus_ctrl(ch, 1);
        rcar_gen3_init_for_host(ch);
 
        writel(val | USB2_OBINT_BITS, usb2_base + USB2_OBINTEN);