Re: [PATCH v5 0/6] phy: realtek: usb2: support for RTL9607C USB2 PHY
From: Krzysztof Kozlowski
Date: Tue Apr 21 2026 - 03:09:32 EST
On Tue, Apr 21, 2026 at 12:19:35AM +0500, Rustam Adilov wrote:
> This patch series for Realtek USB2 PHY driver adds support for RTL9607C
> USB2 PHY.
>
> RTL9607C is a big endian MIPS CPU which is quite far from RTD series SoCs
> supported by realtek usb2 phy driver, but the phy initilization is found
> to be very indentical in most areas.
>
> Most of the code was based on the Realtek's usb driver from the GPL tarball
> in [1] and adjusted to fit into the realtek usb2 phy driver code format.
>
> The patch series was split into smaller patches that add/change something
> in the driver that are not exactly related to RTL9607C and that also
> helps for easier review. That also means, patch 5 depends on all the prior
> patches that come before it.
>
> USB2 PHY on RTL9607C is primarly used for its internal OHCI/EHCI controllers.
>
> [1] - https://github.com/jameywine/GPL-for-GP3000/blob/main/linux-5.10.x/arch/mips/rtl9607c/usb.c
>
> ---
> Changelog in v5:
> Mostly addressing LLM review
> - Patch 1
> - changed int to u32 type for new_reg_req and vstatus_busy data fields.
> - changed comments in rtk_phy_read/write from PHY_NEW_REG_REQ to phy_reg->new_reg_req.
> - Patch 2
> - explained readl/writel native endianess issue in more detail.
> - explained why vstatus register doesn't need byte swapping.
> - Patch 4
> - moved reset_control_deassert to rtk_phy_init function to keep it outside of for loop.
> - changed msleep(5) to usleep_range(5000, 6000).
> - explained why reset_control_assert is not needed.
> - Patch 5
> - explained readl/writel native endianess issue here as well.
> - explained why FORCE_DISCONNECT_REG doesn't need byte swapping.
> - Link to v4: https://lore.kernel.org/linux-phy/20260406181228.25892-1-adilov@xxxxxxxxxxx/
>
> Changelog in v4:
> - Patch 2
> - moved the le variations of read/write functions to Patch 5 where it is actually used because
> otherwise, it results in unused errors when only Patch 2 is applied.
> - updated the commit message to to point the reason for le32 wrappers around readl/writel.
> - Patch 3
> - added "Reviewed by Krzysztof Kozlowski"
Where?
Best regards,
Krzysztof