Message ID | 20221107135825.583877-3-herve.codina@bootlin.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Geert Uytterhoeven |
Headers | show |
Series | Add the Renesas USBF controller support | expand |
Hi Hervé, On Mon, Nov 7, 2022 at 2:59 PM Herve Codina <herve.codina@bootlin.com> wrote: > Add the h2mode property to force the USBs mode ie: > - 2 hosts > or > - 1 host and 1 device > > Signed-off-by: Herve Codina <herve.codina@bootlin.com> Thanks for your patch! > --- a/Documentation/devicetree/bindings/clock/renesas,r9a06g032-sysctrl.yaml > +++ b/Documentation/devicetree/bindings/clock/renesas,r9a06g032-sysctrl.yaml > @@ -39,6 +39,16 @@ properties: > '#power-domain-cells': > const: 0 > > + renesas,h2mode: > + description: | > + Configure the USBs mode. > + - <0> : the USBs are in 1 host and 1 device mode. > + - <1> : the USBs are in 2 host mode. > + If the property is not present, the value used is the one already present > + in the CFG_USB register (from reset or set by the bootloader). > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1] > + > '#address-cells': > const: 1 While the H2MODE register bit is indeed located in the sysctrl's address space, and handling it here makes it simpler for the drivers (especially w.r.t. the default handling), this is really a property of the switchable usbh/f core... Perhaps it can be moved there? Or not? Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-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
Hi Geert, On Mon, 7 Nov 2022 16:14:10 +0100 Geert Uytterhoeven <geert@linux-m68k.org> wrote: > Hi Hervé, > > On Mon, Nov 7, 2022 at 2:59 PM Herve Codina <herve.codina@bootlin.com> wrote: > > Add the h2mode property to force the USBs mode ie: > > - 2 hosts > > or > > - 1 host and 1 device > > > > Signed-off-by: Herve Codina <herve.codina@bootlin.com> > > Thanks for your patch! > > > --- a/Documentation/devicetree/bindings/clock/renesas,r9a06g032-sysctrl.yaml > > +++ b/Documentation/devicetree/bindings/clock/renesas,r9a06g032-sysctrl.yaml > > @@ -39,6 +39,16 @@ properties: > > '#power-domain-cells': > > const: 0 > > > > + renesas,h2mode: > > + description: | > > + Configure the USBs mode. > > + - <0> : the USBs are in 1 host and 1 device mode. > > + - <1> : the USBs are in 2 host mode. > > + If the property is not present, the value used is the one already present > > + in the CFG_USB register (from reset or set by the bootloader). > > + $ref: /schemas/types.yaml#/definitions/uint32 > > + enum: [0, 1] > > + > > '#address-cells': > > const: 1 > > While the H2MODE register bit is indeed located in the sysctrl's > address space, and handling it here makes it simpler for the drivers > (especially w.r.t. the default handling), this is really a property > of the switchable usbh/f core... > Perhaps it can be moved there? Or not? Moving the property outside sysctrl (and so its handling) will not be that easy especially if some more operations are needed (as you mention in your patch 3/4 review). Not sure about what is the best thing to do. (a) Keep it simple and stay in sysctrl or (b) Create an usb_role_switch driver. > > Gr{oetje,eeting}s, > > Geert > > -- > Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-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
diff --git a/Documentation/devicetree/bindings/clock/renesas,r9a06g032-sysctrl.yaml b/Documentation/devicetree/bindings/clock/renesas,r9a06g032-sysctrl.yaml index 95bf485c6cec..f9e0a58aa4fb 100644 --- a/Documentation/devicetree/bindings/clock/renesas,r9a06g032-sysctrl.yaml +++ b/Documentation/devicetree/bindings/clock/renesas,r9a06g032-sysctrl.yaml @@ -39,6 +39,16 @@ properties: '#power-domain-cells': const: 0 + renesas,h2mode: + description: | + Configure the USBs mode. + - <0> : the USBs are in 1 host and 1 device mode. + - <1> : the USBs are in 2 host mode. + If the property is not present, the value used is the one already present + in the CFG_USB register (from reset or set by the bootloader). + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [0, 1] + '#address-cells': const: 1
Add the h2mode property to force the USBs mode ie: - 2 hosts or - 1 host and 1 device Signed-off-by: Herve Codina <herve.codina@bootlin.com> --- .../bindings/clock/renesas,r9a06g032-sysctrl.yaml | 10 ++++++++++ 1 file changed, 10 insertions(+)