2020-10-02 19:03:08

by Al Cooper

[permalink] [raw]
Subject: [PATCH] phy: usb: Fix incorrect clearing of tca_drv_sel bit in SETUP reg for 7211

The 7211a0 has a tca_drv_sel bit in the USB SETUP register that
should never be enabled. This feature is only used if there is a
USB Type-C PHY, and the 7211 does not have one. If the bit is
enabled, the VBUS signal will never be asserted. In the 7211a0,
the bit was incorrectly defaulted to on so the driver had to clear
the bit. In the 7211c0 the state was inverted so the driver should
no longer clear the bit. This hasn't been a problem because all
current 7211 boards don't use the VBUS signal, but there are some
future customer boards that may use it.

Signed-off-by: Al Cooper <[email protected]>
---
drivers/phy/broadcom/phy-brcm-usb-init-synopsys.c | 5 -----
1 file changed, 5 deletions(-)

diff --git a/drivers/phy/broadcom/phy-brcm-usb-init-synopsys.c b/drivers/phy/broadcom/phy-brcm-usb-init-synopsys.c
index 456dc4a100c2..e63457e145c7 100644
--- a/drivers/phy/broadcom/phy-brcm-usb-init-synopsys.c
+++ b/drivers/phy/broadcom/phy-brcm-usb-init-synopsys.c
@@ -270,11 +270,6 @@ static void usb_init_common_7211b0(struct brcm_usb_init_params *params)
reg |= params->mode << USB_PHY_UTMI_CTL_1_PHY_MODE_SHIFT;
brcm_usb_writel(reg, usb_phy + USB_PHY_UTMI_CTL_1);

- /* Fix the incorrect default */
- reg = brcm_usb_readl(ctrl + USB_CTRL_SETUP);
- reg &= ~USB_CTRL_SETUP_tca_drv_sel_MASK;
- brcm_usb_writel(reg, ctrl + USB_CTRL_SETUP);
-
usb_init_common(params);

/*
--
2.17.1


2020-10-02 20:23:08

by Florian Fainelli

[permalink] [raw]
Subject: Re: [PATCH] phy: usb: Fix incorrect clearing of tca_drv_sel bit in SETUP reg for 7211



On 10/2/2020 12:01 PM, Al Cooper wrote:
> The 7211a0 has a tca_drv_sel bit in the USB SETUP register that
> should never be enabled. This feature is only used if there is a
> USB Type-C PHY, and the 7211 does not have one. If the bit is
> enabled, the VBUS signal will never be asserted. In the 7211a0,
> the bit was incorrectly defaulted to on so the driver had to clear
> the bit. In the 7211c0 the state was inverted so the driver should
> no longer clear the bit. This hasn't been a problem because all
> current 7211 boards don't use the VBUS signal, but there are some
> future customer boards that may use it.
>
> Signed-off-by: Al Cooper <[email protected]>

Acked-by: Florian Fainelli <[email protected]>
--
Florian

2020-10-28 22:20:08

by Vinod Koul

[permalink] [raw]
Subject: Re: [PATCH] phy: usb: Fix incorrect clearing of tca_drv_sel bit in SETUP reg for 7211

On 02-10-20, 15:01, Al Cooper wrote:
> The 7211a0 has a tca_drv_sel bit in the USB SETUP register that
> should never be enabled. This feature is only used if there is a
> USB Type-C PHY, and the 7211 does not have one. If the bit is
> enabled, the VBUS signal will never be asserted. In the 7211a0,
> the bit was incorrectly defaulted to on so the driver had to clear
> the bit. In the 7211c0 the state was inverted so the driver should
> no longer clear the bit. This hasn't been a problem because all
> current 7211 boards don't use the VBUS signal, but there are some
> future customer boards that may use it.

Applied, thanks

--
~Vinod