* [PATCH v2 0/2] Add usb gadget support for RZ/V2M
@ 2022-07-22 12:31 Phil Edworthy
2022-07-22 12:31 ` [PATCH v2 1/2] dt-bindings: usb: renesas, usb3-peri: Document RZ/V2M r9a09g011 support Phil Edworthy
0 siblings, 1 reply; 3+ messages in thread
From: Phil Edworthy @ 2022-07-22 12:31 UTC (permalink / raw)
To: Felipe Balbi, Philipp Zabel, Rob Herring, Krzysztof Kozlowski
Cc: Phil Edworthy, Greg Kroah-Hartman, Geert Uytterhoeven,
Yoshihiro Shimoda, Biju Das, Adam Ford, linux-usb, devicetree,
linux-renesas-soc
Hi,
The RZ/V2M SoC is very similar to the R-Car implementation.
The differences are that a few DRD related registers and bits have
moved, there is a separate interrupt for DRD, an additional clock for
register access and reset lines for DRD and USBP.
Thanks
Phil
v2:
bindings:
- SoCs other than rz/v2m must limit the number of clock/interrupt names
- Add "Battery Charging" and "Global Purpose Input" interrupts
driver:
- Rename r9a09g011 feature to is_rzv2m; use rzv2m compat string
- Pass pointer into macros that access is_rzv2m member
Phil Edworthy (2):
dt-bindings: usb: renesas, usb3-peri: Document RZ/V2M r9a09g011
support
usb: gadget: udc: renesas_usb3: Add support for RZ/V2M
.../bindings/usb/renesas,usb3-peri.yaml | 91 +++++++++++--
drivers/usb/gadget/udc/renesas_usb3.c | 128 ++++++++++++++----
2 files changed, 177 insertions(+), 42 deletions(-)
--
2.34.1
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH v2 1/2] dt-bindings: usb: renesas, usb3-peri: Document RZ/V2M r9a09g011 support
2022-07-22 12:31 [PATCH v2 0/2] Add usb gadget support for RZ/V2M Phil Edworthy
@ 2022-07-22 12:31 ` Phil Edworthy
2022-07-25 22:59 ` Rob Herring
0 siblings, 1 reply; 3+ messages in thread
From: Phil Edworthy @ 2022-07-22 12:31 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski
Cc: Phil Edworthy, Greg Kroah-Hartman, Yoshihiro Shimoda, linux-usb,
devicetree, Geert Uytterhoeven, linux-renesas-soc, Biju Das
Document the RZ/V2M SoC bindings.
The RZ/V2M SoC is a little different to the R-Car implementations.
A few DRD related registers and bits have moved, there is a separate
interrupt for DRD, an additional clock for register access and reset
lines for DRD and USBP.
Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com>
Reviewed-by: Biju Das <biju.das.jz@bp.renesas.com>
---
v2:
- SoCs other than rz/v2m must limit the number of clock/interrupt names
- Add "Battery Charging" and "Global Purpose Input" interrupts
---
.../bindings/usb/renesas,usb3-peri.yaml | 91 ++++++++++++++++---
1 file changed, 76 insertions(+), 15 deletions(-)
diff --git a/Documentation/devicetree/bindings/usb/renesas,usb3-peri.yaml b/Documentation/devicetree/bindings/usb/renesas,usb3-peri.yaml
index 9fcf54b10b07..b1a3b32139c5 100644
--- a/Documentation/devicetree/bindings/usb/renesas,usb3-peri.yaml
+++ b/Documentation/devicetree/bindings/usb/renesas,usb3-peri.yaml
@@ -11,27 +11,55 @@ maintainers:
properties:
compatible:
- items:
- - enum:
- - renesas,r8a774a1-usb3-peri # RZ/G2M
- - renesas,r8a774b1-usb3-peri # RZ/G2N
- - renesas,r8a774c0-usb3-peri # RZ/G2E
- - renesas,r8a774e1-usb3-peri # RZ/G2H
- - renesas,r8a7795-usb3-peri # R-Car H3
- - renesas,r8a7796-usb3-peri # R-Car M3-W
- - renesas,r8a77961-usb3-peri # R-Car M3-W+
- - renesas,r8a77965-usb3-peri # R-Car M3-N
- - renesas,r8a77990-usb3-peri # R-Car E3
- - const: renesas,rcar-gen3-usb3-peri
+ oneOf:
+ - items:
+ - enum:
+ - renesas,r8a774a1-usb3-peri # RZ/G2M
+ - renesas,r8a774b1-usb3-peri # RZ/G2N
+ - renesas,r8a774c0-usb3-peri # RZ/G2E
+ - renesas,r8a774e1-usb3-peri # RZ/G2H
+ - renesas,r8a7795-usb3-peri # R-Car H3
+ - renesas,r8a7796-usb3-peri # R-Car M3-W
+ - renesas,r8a77961-usb3-peri # R-Car M3-W+
+ - renesas,r8a77965-usb3-peri # R-Car M3-N
+ - renesas,r8a77990-usb3-peri # R-Car E3
+ - const: renesas,rcar-gen3-usb3-peri
+
+ - items:
+ - enum:
+ - renesas,r9a09g011-usb3-peri # RZ/V2M
+ - const: renesas,rzv2m-usb3-peri
reg:
maxItems: 1
interrupts:
- maxItems: 1
+ minItems: 1
+ items:
+ - description: Combined interrupt for DMA, SYS and ERR
+ - description: Dual Role Device (DRD)
+ - description: Battery Charging
+ - description: Global Purpose Input
+
+ interrupt-names:
+ minItems: 1
+ items:
+ - const: all_p
+ - const: drd
+ - const: bc
+ - const: gpi
clocks:
- maxItems: 1
+ minItems: 1
+ items:
+ - description: Main clock
+ - description: Register access clock
+
+ clock-names:
+ minItems: 1
+ items:
+ - const: aclk
+ - const: reg
phys:
maxItems: 1
@@ -43,7 +71,15 @@ properties:
maxItems: 1
resets:
- maxItems: 1
+ minItems: 1
+ items:
+ - description: Peripheral reset
+ - description: DRD reset
+
+ reset-names:
+ items:
+ - const: aresetn_p
+ - const: drd_reset
usb-role-switch:
$ref: /schemas/types.yaml#/definitions/flag
@@ -78,6 +114,31 @@ required:
- interrupts
- clocks
+allOf:
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - renesas,rzv2m-usb3-peri
+ then:
+ properties:
+ clocks:
+ minItems: 2
+ clock-names:
+ minItems: 2
+ interrupts:
+ minItems: 4
+ interrupt-names:
+ minItems: 4
+ resets:
+ minItems: 2
+ required:
+ - clock-names
+ - interrupt-names
+ - resets
+ - reset-names
+
additionalProperties: false
examples:
--
2.34.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v2 1/2] dt-bindings: usb: renesas, usb3-peri: Document RZ/V2M r9a09g011 support
2022-07-22 12:31 ` [PATCH v2 1/2] dt-bindings: usb: renesas, usb3-peri: Document RZ/V2M r9a09g011 support Phil Edworthy
@ 2022-07-25 22:59 ` Rob Herring
0 siblings, 0 replies; 3+ messages in thread
From: Rob Herring @ 2022-07-25 22:59 UTC (permalink / raw)
To: Phil Edworthy
Cc: Krzysztof Kozlowski, Greg Kroah-Hartman, Yoshihiro Shimoda,
linux-usb, devicetree, Geert Uytterhoeven, linux-renesas-soc,
Biju Das
On Fri, Jul 22, 2022 at 01:31:06PM +0100, Phil Edworthy wrote:
> Document the RZ/V2M SoC bindings.
> The RZ/V2M SoC is a little different to the R-Car implementations.
> A few DRD related registers and bits have moved, there is a separate
> interrupt for DRD, an additional clock for register access and reset
> lines for DRD and USBP.
>
> Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com>
> Reviewed-by: Biju Das <biju.das.jz@bp.renesas.com>
> ---
> v2:
> - SoCs other than rz/v2m must limit the number of clock/interrupt names
> - Add "Battery Charging" and "Global Purpose Input" interrupts
> ---
> .../bindings/usb/renesas,usb3-peri.yaml | 91 ++++++++++++++++---
> 1 file changed, 76 insertions(+), 15 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/usb/renesas,usb3-peri.yaml b/Documentation/devicetree/bindings/usb/renesas,usb3-peri.yaml
> index 9fcf54b10b07..b1a3b32139c5 100644
> --- a/Documentation/devicetree/bindings/usb/renesas,usb3-peri.yaml
> +++ b/Documentation/devicetree/bindings/usb/renesas,usb3-peri.yaml
> @@ -11,27 +11,55 @@ maintainers:
>
> properties:
> compatible:
> - items:
> - - enum:
> - - renesas,r8a774a1-usb3-peri # RZ/G2M
> - - renesas,r8a774b1-usb3-peri # RZ/G2N
> - - renesas,r8a774c0-usb3-peri # RZ/G2E
> - - renesas,r8a774e1-usb3-peri # RZ/G2H
> - - renesas,r8a7795-usb3-peri # R-Car H3
> - - renesas,r8a7796-usb3-peri # R-Car M3-W
> - - renesas,r8a77961-usb3-peri # R-Car M3-W+
> - - renesas,r8a77965-usb3-peri # R-Car M3-N
> - - renesas,r8a77990-usb3-peri # R-Car E3
> - - const: renesas,rcar-gen3-usb3-peri
> + oneOf:
> + - items:
> + - enum:
> + - renesas,r8a774a1-usb3-peri # RZ/G2M
> + - renesas,r8a774b1-usb3-peri # RZ/G2N
> + - renesas,r8a774c0-usb3-peri # RZ/G2E
> + - renesas,r8a774e1-usb3-peri # RZ/G2H
> + - renesas,r8a7795-usb3-peri # R-Car H3
> + - renesas,r8a7796-usb3-peri # R-Car M3-W
> + - renesas,r8a77961-usb3-peri # R-Car M3-W+
> + - renesas,r8a77965-usb3-peri # R-Car M3-N
> + - renesas,r8a77990-usb3-peri # R-Car E3
> + - const: renesas,rcar-gen3-usb3-peri
> +
> + - items:
> + - enum:
> + - renesas,r9a09g011-usb3-peri # RZ/V2M
> + - const: renesas,rzv2m-usb3-peri
>
> reg:
> maxItems: 1
>
> interrupts:
> - maxItems: 1
> + minItems: 1
> + items:
> + - description: Combined interrupt for DMA, SYS and ERR
> + - description: Dual Role Device (DRD)
> + - description: Battery Charging
> + - description: Global Purpose Input
> +
> + interrupt-names:
> + minItems: 1
> + items:
> + - const: all_p
> + - const: drd
> + - const: bc
> + - const: gpi
>
> clocks:
> - maxItems: 1
> + minItems: 1
> + items:
> + - description: Main clock
> + - description: Register access clock
> +
> + clock-names:
> + minItems: 1
> + items:
> + - const: aclk
> + - const: reg
>
> phys:
> maxItems: 1
> @@ -43,7 +71,15 @@ properties:
> maxItems: 1
>
> resets:
> - maxItems: 1
> + minItems: 1
> + items:
> + - description: Peripheral reset
> + - description: DRD reset
> +
> + reset-names:
> + items:
> + - const: aresetn_p
> + - const: drd_reset
>
> usb-role-switch:
> $ref: /schemas/types.yaml#/definitions/flag
> @@ -78,6 +114,31 @@ required:
> - interrupts
> - clocks
>
> +allOf:
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - renesas,rzv2m-usb3-peri
> + then:
> + properties:
> + clocks:
> + minItems: 2
> + clock-names:
> + minItems: 2
> + interrupts:
> + minItems: 4
> + interrupt-names:
> + minItems: 4
> + resets:
> + minItems: 2
> + required:
> + - clock-names
> + - interrupt-names
> + - resets
> + - reset-names
> +
Needs an 'else' clause with 'maxItems: 1' on various properties to keep
the existing constraints.
Rob
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-07-25 22:59 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-22 12:31 [PATCH v2 0/2] Add usb gadget support for RZ/V2M Phil Edworthy
2022-07-22 12:31 ` [PATCH v2 1/2] dt-bindings: usb: renesas, usb3-peri: Document RZ/V2M r9a09g011 support Phil Edworthy
2022-07-25 22:59 ` Rob Herring
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).