]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
phy: qcom: m31-eusb2: clear PLL_EN during init
authorElson Serrao <elson.serrao@oss.qualcomm.com>
Tue, 17 Feb 2026 20:11:30 +0000 (12:11 -0800)
committerVinod Koul <vkoul@kernel.org>
Fri, 27 Feb 2026 15:14:25 +0000 (20:44 +0530)
The driver currently sets bit 0 of USB_PHY_CFG1 (PLL_EN) during PHY
initialization. According to the M31 EUSB2 PHY hardware documentation,
this bit is intended only for test/debug scenarios and does not control
mission mode operation. Keeping PLL_EN asserted causes the PHY to draw
additional current during USB bus suspend. Clearing this bit results in
lower suspend power consumption without affecting normal operation.

Update the driver to leave PLL_EN cleared as recommended by the hardware
documentation.

Fixes: 9c8504861cc4 ("phy: qcom: Add M31 based eUSB2 PHY driver")
Cc: stable@vger.kernel.org
Signed-off-by: Elson Serrao <elson.serrao@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://patch.msgid.link/20260217201130.2804550-1-elson.serrao@oss.qualcomm.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/phy/qualcomm/phy-qcom-m31-eusb2.c

index 95cd3175926d56f9467d4ebf911d47b0403f0ce9..68f1ba8fec4ad0f787f9a834a37fa615d239d95d 100644 (file)
@@ -83,7 +83,7 @@ static const struct m31_phy_tbl_entry m31_eusb2_setup_tbl[] = {
        M31_EUSB_PHY_INIT_CFG(USB_PHY_CFG0, UTMI_PHY_CMN_CTRL_OVERRIDE_EN, 1),
        M31_EUSB_PHY_INIT_CFG(USB_PHY_UTMI_CTRL5, POR, 1),
        M31_EUSB_PHY_INIT_CFG(USB_PHY_HS_PHY_CTRL_COMMON0, PHY_ENABLE, 1),
-       M31_EUSB_PHY_INIT_CFG(USB_PHY_CFG1, PLL_EN, 1),
+       M31_EUSB_PHY_INIT_CFG(USB_PHY_CFG1, PLL_EN, 0),
        M31_EUSB_PHY_INIT_CFG(USB_PHY_FSEL_SEL, FSEL_SEL, 1),
 };