Re: [PATCH] phy: ath79-usb: support the analog reset

From: Philipp Zabel

Date: Fri Nov 06 2026 - 03:43:07 EST


On Do, 2026-11-05 at 17:42 -0800, Rosen Penev wrote:
> From AR934x on, the analog part of the USB PHY has its own reset. The
> old platform code released it after the PHY reset on AR934x, and left
> it to the bootloader on QCA955x.
>
> Take it as an optional "phy-analog" reset, release it after the PHY one
> when powering on, and assert it first when powering off. This is the
> reset handling OpenWrt has used on its AR934x, QCA955x and QCA956x
> boards.
>
> Signed-off-by: Rosen Penev <rosenp@xxxxxxxxx>
> ---
> drivers/phy/qualcomm/phy-ath79-usb.c | 33 +++++++++++++++++++++++++---
> 1 file changed, 30 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/phy/qualcomm/phy-ath79-usb.c b/drivers/phy/qualcomm/phy-ath79-usb.c
> index 8e9565846b2f..1e7868fc0b5f 100644
> --- a/drivers/phy/qualcomm/phy-ath79-usb.c
> +++ b/drivers/phy/qualcomm/phy-ath79-usb.c
[...]
> @@ -78,6 +99,12 @@ static int ath79_usb_phy_probe(struct platform_device *pdev)
> if (IS_ERR(priv->no_suspend_override))
> return PTR_ERR(priv->no_suspend_override);
>
> + /* AR934x and later also hold the analog part in reset */
> + priv->analog_reset = devm_reset_control_get_optional(&pdev->dev,
> + "phy-analog");

Documentation/devicetree/bindings/phy/qca,ar7100-usb-phy.yaml only
specifies "phy" and "suspend-override".

regards
Philipp