[PATCH v6 00/14] Add USB2.0 support for RZ/G3E

Tommaso Merciai tommaso.merciai.xr at bp.renesas.com
Fri Jan 9 07:32:59 PST 2026


Dear All,

A gentle ping on this patch series.

Thanks & Regards,
Tommaso

On Mon, Dec 22, 2025 at 02:43:34PM +0100, Tommaso Merciai wrote:
> Dear All,
> 
> This patch series adds USB2.0 support for the Renesas
> RZ/G3E (a.k.a R9A09G047) R9A09G047 SoC.
> 
> RZ/G3E has USB2.0 IP that is identical to the one's found into
> the RZ/V2H SoC (R9A09G057).
> 
> Merge strategy, if any:
> 
> - patches 1-2/14 can go through the MUX tree
> - patches 3-6/14 can go through the Reset tree
> - patches 7-13/14 can go through the PHY tree
> - patches 14-14/14 can go through the USB tree
> 
> Note:
>  - Reset driver (reset-rzv2h-usb2phy.c)
>    has build dependency on Mux header file
>    (reset_rzv2h_usb2phy.h).
> 
> Thanks & Regards,
> Tommaso
> 
> v5->v6:
>  - Rebased on top of next-20251219
>  - Re-arranged series order per subsystem patches.
>  - Patch: 3/14: Collected tag.
>  - Patch: 4/14: Fixed commit message.
>  - Split from dts patches will send separate series.
>  - Added merge strategy in cover letter.
> 
> v4->v5:
>  - Rebased on top of next-20251127
>  - Patch 01/22: Added Reviewed-by tag from Conor Dooley.
>  - Patch 06/22: Changed file name to rzv2h-usb-vbenctl.c and Fixed
>    Makefile, Kconfig, function names accordingly.
>    Changed driver .name to "vbenctl" and fix auxiliary_device_id name.
>    Updated commit msg.
>  - Patch 07/22: Update mux_name to "vbenctl" to match the driver name.
>    Updated commit message.
>  - Patch 11/22: Fixed if statement for mux_state error check.
> 
> v3->v4:
>  - Rebased on top of next-20251121
>  - Added patch 01/22 to remove nodename pattern from mux-controller schema.
>  - Switch back to v2 implementation for mux controller in patches
>    5/22, 15/22, 16/22, 21/22.
>  - Improved commit bodies for patches 5/22, 15/22, 16/22, 21/22.
>  - Removed mux_chip->dev.of_node not needed in patch 06/22.
>  - Collected CDooley tag in patch 09/22.
>  - Added missing select MULTIPLEXER into Kconfig in patch 11/22.
> 
> v2->v3:
>  - Rebased on top of next-20251110 + [1] + [2]
>  - Add missing Cc: stable at vger.kernel.org in patch 03/21
>  - Patch 03/21: Added missing Cc: stable at vger.kernel.org.
>    Improved commit body describing the removal of rzv2h_usbphy_assert_helper()
>    from rzv2h_usb2phy_reset_probe().
>  - Patch 04/21: Manipulate mux-controller as an internal node.
>    Improved commit body.
>  - Patch 05/21: The main driver is using now __devm_auxiliary_device_create()
>    then update the aux driver accordingly.
>  - Patch 06/21: Use __devm_auxiliary_device_create() to create the aux device.
>  - Patch 08/21: Improved commit body and mux-states description.
>  - Patch 14/21: Manipulate the mux controller as an internal node,
>    and update commit body accordingly.
>  - Patch 15/21: Manipulate the mux controller as an internal node,
>    and update commit body accordingly.
>  - Patch 20/21: Manipulate the mux controller as an internal node.
> 
> v1->v2:
>  - Rebased on top of next-20251103 + [1] + [2]
>  - Reworked series to use mux-state for controlling VBUS_SEL
>    as suggested by PZabel added also mux bindings documentation
>    on phy and rst side.
>  - Collected Conor Dooley tags
>  - Dropped unnecessary rzv2h_usbphy_assert_helper() function from
>    rzv2h_usb2phy_reset_probe()
> 
> Tommaso Merciai (14):
>   dt-bindings: mux: Remove nodename pattern constraints
>   mux: Add driver for Renesas RZ/V2H USB VBENCTL VBUS_SEL mux
>   dt-bindings: reset: renesas,rzv2h-usb2phy: Add '#mux-state-cells'
>     property
>   dt-bindings: reset: renesas,rzv2h-usb2phy: Document RZ/G3E USB2PHY
>     reset
>   reset: rzv2h-usb2phy: Keep PHY clock enabled for entire device
>     lifetime
>   reset: rzv2h-usb2phy: Add support for VBUS mux controller registration
>   dt-bindings: phy: renesas,usb2-phy: Document USB VBUS regulator
>   dt-bindings: phy: renesas,usb2-phy: Document mux-states property
>   dt-bindings: phy: renesas,usb2-phy: Document RZ/G3E SoC
>   phy: renesas: rcar-gen3-usb2: Factor out VBUS control logic
>   phy: renesas: rcar-gen3-usb2: Use devm_pm_runtime_enable()
>   phy: renesas: rcar-gen3-usb2: Add regulator for OTG VBUS control
>   phy: renesas: rcar-gen3-usb2: Use mux-state for phyrst management
>   dt-bindings: usb: renesas,usbhs: Add RZ/G3E SoC support
> 
>  .../bindings/mux/mux-controller.yaml          |   6 -
>  .../bindings/phy/renesas,usb2-phy.yaml        |  15 +-
>  .../reset/renesas,rzv2h-usb2phy-reset.yaml    |   9 +-
>  .../bindings/usb/renesas,usbhs.yaml           |   1 +
>  drivers/mux/Kconfig                           |  11 +
>  drivers/mux/Makefile                          |   2 +
>  drivers/mux/rzv2h-usb-vbenctl.c               |  97 +++++++
>  drivers/phy/renesas/Kconfig                   |   1 +
>  drivers/phy/renesas/phy-rcar-gen3-usb2.c      | 261 ++++++++++++++----
>  drivers/reset/Kconfig                         |   1 +
>  drivers/reset/reset-rzv2h-usb2phy.c           | 108 +++++---
>  include/linux/reset/reset_rzv2h_usb2phy.h     |  11 +
>  12 files changed, 420 insertions(+), 103 deletions(-)
>  create mode 100644 drivers/mux/rzv2h-usb-vbenctl.c
>  create mode 100644 include/linux/reset/reset_rzv2h_usb2phy.h
> 
> -- 
> 2.43.0
> 



More information about the linux-phy mailing list