Re: [PATCH v3 04/21] dt-bindings: reset: renesas,rzv2h-usb2phy: Document VBUS_SEL mux

From: Conor Dooley

Date: Tue Nov 11 2025 - 12:49:30 EST


Tommaso, Rob,

On Mon, Nov 10, 2025 at 11:43:37PM +0100, Tommaso Merciai wrote:
> Hi Conor,
> Thanks for your comment!
>
> On Mon, Nov 10, 2025 at 06:56:31PM +0000, Conor Dooley wrote:
> > On Mon, Nov 10, 2025 at 01:08:04PM +0100, Tommaso Merciai wrote:
> > > Document the 'mux-controller' child node in the Renesas RZ/V2H(P)
> > > USB2PHY reset binding to support describing the USB VBUS_SEL
> > > multiplexer as a mux-controller.
> > >
> > > This is required to properly configure the USB PHY VBUS source on
> > > RZ/V2H(P), RZ/G3E SoCs.
> > >
> > > Signed-off-by: Tommaso Merciai <tommaso.merciai.xr@xxxxxxxxxxxxxx>
> > > ---
> > > v2->v3:
> > > - Manipulate mux-controller as an internal node.
> >
> > Why is it a child node, rather than just putting the cell in the parent
> > reset node?
>
> Getting "make dt_binding_check errors" [1] in v2
> Adding #mux-state-cells = <1> into:
>
> usb20phyrst: reset-controller@15830000
> usb21phyrst: reset-controller@15840000
>
> Nodes.
>
> Please correct me if I'm wrong.

I think that that binding is not working as intended. Why require a
node-name pattern, when it matches on other things too:
select:
anyOf:
- properties:
$nodename:
pattern: '^mux-controller'
- required:
- '#mux-control-cells'
- required:
- '#mux-state-cells'
if the node name always contained mux-controller, the second two here
would not be needed. Looks to me like the intention was for it to allow
putting these control/state-cells properties into mfd type nodes.

I'd delete the node name property tbh. Rob, you converted this to
schema, what do you think?

Cheers,
Conor.

> [1] https://patchwork.kernel.org/project/linux-renesas-soc/patch/961741af7d4ec945945164759fe0d78bb3cf4d9d.1762354366.git.tommaso.merciai.xr@xxxxxxxxxxxxxx/
>
> >
> > > - Improved commit body.
> > >
> > > v1->v2:
> > > - New patch
> > >
> > > .../bindings/reset/renesas,rzv2h-usb2phy-reset.yaml | 11 +++++++++++
> > > 1 file changed, 11 insertions(+)
> > >
> > > diff --git a/Documentation/devicetree/bindings/reset/renesas,rzv2h-usb2phy-reset.yaml b/Documentation/devicetree/bindings/reset/renesas,rzv2h-usb2phy-reset.yaml
> > > index c1b800a10b53..03da74ff2d08 100644
> > > --- a/Documentation/devicetree/bindings/reset/renesas,rzv2h-usb2phy-reset.yaml
> > > +++ b/Documentation/devicetree/bindings/reset/renesas,rzv2h-usb2phy-reset.yaml
> > > @@ -37,6 +37,12 @@ properties:
> > > '#reset-cells':
> > > const: 0
> > >
> > > + mux-controller:
> > > + $ref: /schemas/mux/mux-controller.yaml#
> > > + description: Mux controller for USB VBUS source selection.
> > > + type: object
> > > + unevaluatedProperties: false
> > > +
> > > required:
> > > - compatible
> > > - reg
> > > @@ -44,6 +50,7 @@ required:
> > > - resets
> > > - power-domains
> > > - '#reset-cells'
> > > + - mux-controller
> > >
> > > additionalProperties: false
> > >
> > > @@ -58,4 +65,8 @@ examples:
> > > resets = <&cpg 0xaf>;
> > > power-domains = <&cpg>;
> > > #reset-cells = <0>;
> > > +
> > > + mux-controller {
> > > + #mux-state-cells = <1>;
> > > + };
> > > };
> > > --
> > > 2.43.0
> > >
>
>

Attachment: signature.asc
Description: PGP signature