phy: k1-usb: add disconnect function support
Subsystems (3)
Yixun Lan
maintainerPATCH v3 1/1 phy: k1-usb: add disconnect function support
A disconnect status BIT of USB2 PHY need to be cleared, otherwise it will fail to work properly during next connection when devices connect to roothub directly.
---
To: Vinod Koul <[email protected]>
To: Neil Armstrong <[email protected]>
To: Ze Huang <[email protected]>
Cc: Vladimir Oltean <[email protected]>
Cc: Junzhong Pan <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Change in v3:
- split from v2 as bug fix
- fix alignment to open parenthesis
- http://lore.kernel.org/r/20260216090112.n5jjpui3luqsybb5@skbuf
- Link to v2: https://lore.kernel.org/r/[email protected]
--- drivers/phy/spacemit/phy-k1-usb2.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+)
drivers/phy/spacemit/phy-k1-usb2.c +14 -0
@@ -48,6 +48,9 @@#define PHY_CLK_HSTXP_EN BIT(3)/* clock hstxp enable */ #define PHY_HSTXP_MODE BIT(4)/* 0: force en_txp to be 1; 1: no force */ +#define PHY_K1_HS_HOST_DISC 0x40 +#define PHY_K1_HS_HOST_DISC_CLR BIT(0) +#define PHY_PLL_DIV_CFG 0x98#define PHY_FDIV_FRACT_8_15 GENMASK(7, 0)#define PHY_FDIV_FRACT_16_19 GENMASK(11, 8)
@@ -142,9 +145,20 @@ static int spacemit_usb2phy_exit(struct phy *phy)return 0 ; } +static int spacemit_usb2phy_disconnect (struct phy *phy,int port) +{ +struct spacemit_usb2phy *sphy =phy_get_drvdata (phy); + +regmap_update_bits (sphy->regmap_base,PHY_K1_HS_HOST_DISC , +PHY_K1_HS_HOST_DISC_CLR ,PHY_K1_HS_HOST_DISC_CLR ); + +return 0 ; +} +static const struct phy_ops spacemit_usb2phy_ops = { .init = spacemit_usb2phy_init, .exit = spacemit_usb2phy_exit, + .disconnect = spacemit_usb2phy_disconnect, .owner =THIS_MODULE , };
Signature · 1 line
2.52.0
Quoted 17 lines · Yixun Lan
A disconnect status BIT of USB2 PHY need to be cleared, otherwise it will fail to work properly during next connection when devices connect to roothub directly.
Fixes fe4bc1a08638 ("phy: spacemit: support K1 USB2.0 PHY controller")Signed-off-by Yixun Lan <[email protected]>---
To: Vinod Koul <[email protected]>
To: Neil Armstrong <[email protected]>
To: Ze Huang <[email protected]>
Cc: Vladimir Oltean <[email protected]>
Cc: Junzhong Pan <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Quoted 6 lines
Change in v3:
- split from v2 as bug fix
- fix alignment to open parenthesis
- http://lore.kernel.org/r/20260216090112.n5jjpui3luqsybb5@skbuf
- Link to v2: https://lore.kernel.org/r/[email protected]
---
Quoted 5 lines · Yixun Lan
A disconnect status BIT of USB2 PHY need to be cleared, otherwise it will fail to work properly during next connection when devices connect to roothub directly.
Applied, thanks!
[1/1] phy: k1-usb: add disconnect function support
commit: f0cf0a882a02dcf28547f32264f6fd37e9a7b147
Best regards,
Signature · 1 line
~Vinod