[PATCH v6 00/10] Add RZ/G3L USB2.0 host support
Biju <[email protected]> Thu, 6 Aug 2026 11:21:48 +0100
| Newsgroups | org.kernel.vger.linux-renesas-soc,org.infradead.lists.linux-phy,org.kernel.vger.linux-clk,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
From: Biju Das <[email protected]> Hi All, This patch series aims to add USB2.0 host support for the RZ/G3L SMARC EVK. The RZ/G3L USB PHY block is similar to RZ/G3S, but each port has an OTG controller, unlike RZ/G3S, which has an OTG controller only on port 1. This series migrates regulator driver to use id-table so there is hard dependency between reset driver and regulator driver. Merge strategy: An Ack/Rb tag from Regulator Maintainer for patch#1 and #5. Patch #1,#2,#3,#4,#5 - Reset subsystem Patch #5,#6,#7 - PHY subsystem Patch #8,#9 - Renesas SoC v5->v6: * To avoid breaking bisectability, prepared a single patch that does the "rzg2l-usb-vbus-regulator" -> "rzg2l-vbus-regulator" rename in both regulator and reset drivers and that could be merged into both trees. * Replaced dev_err->dev_err_probe() in error path of rzg3l_usb_vbus_regulator_probe(). * Retained the tag as the change is trivial. v4->v5: * Collected Ack tag for regulator driver changes. * Dropped renesas,sysc-pwrrdy for RZ/G3L as pwrrdy signal is modelled as power sequence. * Dropped the tag from Conor due to above change . * Replaced the variable regulator_driver_name->regulator_name in struct rzg2l_usbphy_ctrl_info * Switched to power sequence consumer for controlling pwrrdy signal. * Updated commit description for patch#3. v3->v4: * Updated cover letter with merge strategy * Reorder the phy binding patch for easy merging. * Updated the commit description for patch #2,#3, #4. * Moved the handling of regulator_driver_name to patch #3 in preparation for id_table match. * Migrated to id_table match using driver_name and reduced the length < 24. * Dropped rzg3l specific platform driver. * Dropped the tag for regulator driver, * Added id_table handling by introducing a common probe(). * Dropped renesas,sysc-pwrrdy property for usbphy-ctrl node. v2->v3: * Replaced items->enum in reset controller bindings. * Collected the tag for reset binding patch. * Dropped clock patch as it is accepted. v1->v2: * Dropped patch#6(Introduce helper for regulator registration) * Passing pointer to an array of regulators to make it scalable. * Dropped regulator1-vbus and added a regulators group node. * Updated commit description for patch#1,#4,#6,#7,#8,#9 and #10. * Added enum instead of const in the compatible section. * Updated schema check. * Collected tag for PHY binding patch. in the regulator driver. * Added regulators group node and its children in SoC dtsi. Biju Das (10): regulator: renesas-usb-vbus-regulator: Rename platform device to rzg2l-vbus-regulator dt-bindings: reset: renesas,rzg2l-usbphy-ctrl: Document RZ/G3L support reset: rzg2l-usbphy-ctrl: Introduce info struct for match data reset: rzg2l-usbphy-ctrl: Add RZ/G3L support regulator: renesas-usb-vbus-regulator: Add RZ/G3L VBUS regulator support dt-bindings: phy: renesas,usb2-phy: Document RZ/G3L PHY bindings phy: renesas: phy-rcar-gen3-usb2: Add RZ/G3L support phy: renesas: phy-rcar-gen3-usb2: Fix devm action registration for disabled VBUS regulator arm64: dts: renesas: r9a08g046: Add USB2.0 device nodes arm64: dts: renesas: r9a08g046l48-smarc: Add USB2.0 support .../bindings/phy/renesas,usb2-phy.yaml | 2 + .../reset/renesas,rzg2l-usbphy-ctrl.yaml | 40 ++++++- arch/arm64/boot/dts/renesas/r9a08g046.dtsi | 104 +++++++++++++++++ .../boot/dts/renesas/r9a08g046l48-smarc.dts | 49 ++++++++ drivers/phy/renesas/phy-rcar-gen3-usb2.c | 20 ++-- .../regulator/renesas-usb-vbus-regulator.c | 75 +++++++++++- drivers/reset/reset-rzg2l-usbphy-ctrl.c | 109 +++++++++++++++--- 7 files changed, 370 insertions(+), 29 deletions(-) -- 2.43.0