[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aXepHJTJr7A-Bcvc@tom-desktop>
Date: Mon, 26 Jan 2026 18:49:16 +0100
From: Tommaso Merciai <tommaso.merciai.xr@...renesas.com>
To: Geert Uytterhoeven <geert@...ux-m68k.org>
Cc: tomm.merciai@...il.com, linux-renesas-soc@...r.kernel.org,
biju.das.jz@...renesas.com, Peter Rosin <peda@...ntia.se>,
Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>, Vinod Koul <vkoul@...nel.org>,
Kishon Vijay Abraham I <kishon@...nel.org>,
Fabrizio Castro <fabrizio.castro.jz@...esas.com>,
Lad Prabhakar <prabhakar.mahadev-lad.rj@...renesas.com>,
Philipp Zabel <p.zabel@...gutronix.de>,
Yoshihiro Shimoda <yoshihiro.shimoda.uh@...esas.com>,
Magnus Damm <magnus.damm@...il.com>,
Guenter Roeck <linux@...ck-us.net>, Mark Brown <broonie@...nel.org>,
Jonathan Cameron <jonathan.cameron@...wei.com>,
Georgi Djakov <djakov@...nel.org>,
Bartosz Golaszewski <bartosz.golaszewski@...aro.org>,
Arnd Bergmann <arnd@...db.de>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-phy@...ts.infradead.org
Subject: Re: [PATCH v5 15/22] arm64: dts: renesas: r9a09g057: Add USB2.0
VBUS_SEL mux-controller support
Hi Geert,
Thanks for your review.
On Mon, Jan 26, 2026 at 05:59:02PM +0100, Geert Uytterhoeven wrote:
> Hi Tommaso,
>
> On Thu, 27 Nov 2025 at 12:51, Tommaso Merciai
> <tommaso.merciai.xr@...renesas.com> wrote:
> > Enable control of USB2.0 VBUSEN via the VBUS_SEL bit in the VBENCTL
> > register. According to the RZ/V2H(P) SoC hardware manual, OTG channels
> > require VBUS_SEL set, while HOST-only channels require it cleared.
> >
> > Add `#mux-state-cell` to the usb20phyrst and usb21phyrst reset
> > nodes to expose them as mux controllers.
> >
> > Set the required mux-states in usb2_phy0 (OTG: state 1) and usb2_phy1
> > (HOST: state 0) nodes.
> >
> > This enables proper VBUSEN management for OTG and HOST-only USB2.0
> > channels.
> >
> > Signed-off-by: Tommaso Merciai <tommaso.merciai.xr@...renesas.com>
>
> Thanks for your patch!
>
> > --- a/arch/arm64/boot/dts/renesas/r9a09g057.dtsi
> > +++ b/arch/arm64/boot/dts/renesas/r9a09g057.dtsi
> > @@ -1034,6 +1034,7 @@ usb2_phy0: usb-phy@...00200 {
> > resets = <&usb20phyrst>;
> > #phy-cells = <1>;
> > power-domains = <&cpg>;
> > + mux-states = <&usb20phyrst 1>;
>
> I am no USB expert, and didn't really follow the USB specifics of
> this series, but isn't the selection of host (VBUSEN = 1) or function
> (VBUSEN = 0) mode decided at runtime?
usb2_phy0 -> OTG channels -> VBUS_SEL = 1
For peripheral/function will be used (VBOUT bit):
usb2_phy0_vbus_otg: vbus-regulator {
regulator-name = "USB2PHY0-VBUS-OTG";
status = "disabled";
};
[0] Will drive the VBUSEN signal at runtime using [1].
>
> > status = "disabled";
> > };
> >
> > @@ -1047,6 +1048,7 @@ usb2_phy1: usb-phy@...10200 {
> > resets = <&usb21phyrst>;
> > #phy-cells = <1>;
> > power-domains = <&cpg>;
> > + mux-states = <&usb21phyrst 0>;
>
> The second controller is always used in host mode, so 0 is correct.
>
Right in this way we will have:
usb2_phy1 -> HOST only channel -> VBUS_SEL = 0
and not VBOUT bit.
[0] https://patchwork.kernel.org/project/linux-renesas-soc/patch/c67fcdbc2c6d1694b785d7240d368490037a82fa.1764241212.git.tommaso.merciai.xr@bp.renesas.com/
[1] https://patchwork.kernel.org/project/linux-renesas-soc/patch/4618b939734fcfe1f153e725ac178844b44d9a3f.1764241212.git.tommaso.merciai.xr@bp.renesas.com/
Thanks & Regards,
Tommaso
> > status = "disabled";
> > };
> >
>
> Gr{oetje,eeting}s,
>
> Geert
>
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@...ux-m68k.org
>
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like that.
> -- Linus Torvalds
Powered by blists - more mailing lists