Commit 91ddf6f7 authored by Gabor Juhos's avatar Gabor Juhos Committed by Vinod Koul
Browse files

phy: marvell: mvebu-a3700-utmi: fix incorrect USB2_PHY_CTRL register access



The mvebu_a3700_utmi_phy_power_off() function tries to modify the
USB2_PHY_CTRL register by using the IO address of the PHY IP block along
with the readl/writel IO accessors. However, the register exist in the
USB miscellaneous register space, and as such it must be accessed via
regmap like it is done in the mvebu_a3700_utmi_phy_power_on() function.

Change the code to use regmap_update_bits() for modífying the register
to fix this.

Fixes: cc8b7a0a ("phy: add A3700 UTMI PHY driver")
Signed-off-by: default avatarGabor Juhos <j4g8y7@gmail.com>
Reviewed-by: default avatarMiquel Raynal <miquel.raynal@bootlin.com>
Link: https://patch.msgid.link/20260321-a3700-utmi-fix-usb2_phy_ctrl-access-v1-1-6005ff4b5058@gmail.com


Signed-off-by: default avatarVinod Koul <vkoul@kernel.org>
parent 519a228e
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -168,9 +168,8 @@ static int mvebu_a3700_utmi_phy_power_off(struct phy *phy)
	u32 reg;

	/* Disable PHY pull-up and enable USB2 suspend */
	reg = readl(utmi->regs + USB2_PHY_CTRL(usb32));
	reg &= ~(RB_USB2PHY_PU | RB_USB2PHY_SUSPM(usb32));
	writel(reg, utmi->regs + USB2_PHY_CTRL(usb32));
	regmap_update_bits(utmi->usb_misc, USB2_PHY_CTRL(usb32),
			   RB_USB2PHY_PU | RB_USB2PHY_SUSPM(usb32), 0);

	/* Power down OTG module */
	if (usb32) {