RE: [PATCH v2 2/7] dt-bindings: can: renesas,rcar-canfd: Document RZ/G3E support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Rob,

Thanks for the feedback.

> -----Original Message-----
> From: Rob Herring <robh@xxxxxxxxxx>
> Sent: 21 February 2025 23:19
> Subject: Re: [PATCH v2 2/7] dt-bindings: can: renesas,rcar-canfd: Document RZ/G3E support
> 
> On Fri, Feb 21, 2025 at 05:53:43PM +0000, Conor Dooley wrote:
> > On Thu, Feb 20, 2025 at 01:04:18PM +0000, Biju Das wrote:
> > > Document support for the CAN-FD Interface on the RZ/G3E (R9A09G047)
> > > SoC, which supports up to six channels.
> > >
> > > The CAN-FD module on RZ/G3E is very similar to the one on both R-Car
> > > V4H and RZ/G2L, but differs in some hardware parameters:
> > >  * No external clock, but instead has ram clock.
> > >  * Support up to 6 channels.
> > >  * 20 interrupts.
> > >
> > > Signed-off-by: Biju Das <biju.das.jz@xxxxxxxxxxxxxx>
> > > ---
> > > v1->v2:
> > >  * No change.
> > > ---
> > >  .../bindings/net/can/renesas,rcar-canfd.yaml  | 67
> > > +++++++++++++++++--
> > >  1 file changed, 62 insertions(+), 5 deletions(-)
> > >
> > > diff --git
> > > a/Documentation/devicetree/bindings/net/can/renesas,rcar-canfd.yaml
> > > b/Documentation/devicetree/bindings/net/can/renesas,rcar-canfd.yaml
> > > index f87f90f431e5..189d5303ad75 100644
> > > ---
> > > a/Documentation/devicetree/bindings/net/can/renesas,rcar-canfd.yaml
> > > +++ b/Documentation/devicetree/bindings/net/can/renesas,rcar-canfd.y
> > > +++ aml
> > > @@ -42,6 +42,8 @@ properties:
> > >                - renesas,r9a07g054-canfd    # RZ/V2L
> > >            - const: renesas,rzg2l-canfd     # RZ/G2L family
> > >
> > > +      - const: renesas,r9a09g047-canfd     # RZ/G3E
> > > +
> > >    reg:
> > >      maxItems: 1
> > >
> > > @@ -59,6 +61,19 @@ properties:
> > >            - description: CAN1 error interrupt
> > >            - description: CAN1 transmit interrupt
> > >            - description: CAN1 transmit/receive FIFO receive
> > > completion interrupt
> > > +          - description: CAN2 error interrupt
> > > +          - description: CAN2 transmit interrupt
> > > +          - description: CAN2 transmit/receive FIFO receive completion interrupt
> > > +          - description: CAN3 error interrupt
> > > +          - description: CAN3 transmit interrupt
> > > +          - description: CAN3 transmit/receive FIFO receive completion interrupt
> > > +          - description: CAN4 error interrupt
> > > +          - description: CAN4 transmit interrupt
> > > +          - description: CAN4 transmit/receive FIFO receive completion interrupt
> > > +          - description: CAN5 error interrupt
> > > +          - description: CAN5 transmit interrupt
> > > +          - description: CAN5 transmit/receive FIFO receive completion interrupt
> > > +        minItems: 8
> > >
> > >    interrupt-names:
> > >      oneOf:
> > > @@ -74,15 +89,33 @@ properties:
> > >            - const: ch1_err
> > >            - const: ch1_rec
> > >            - const: ch1_trx
> > > +          - const: ch2_err
> > > +          - const: ch2_rec
> > > +          - const: ch2_trx
> > > +          - const: ch3_err
> > > +          - const: ch3_rec
> > > +          - const: ch3_trx
> > > +          - const: ch4_err
> > > +          - const: ch4_rec
> > > +          - const: ch4_trx
> > > +          - const: ch5_err
> > > +          - const: ch5_rec
> > > +          - const: ch5_trx
> > > +        minItems: 8
> > >
> > >    clocks:
> > >      maxItems: 3
> > >
> > >    clock-names:
> > > -    items:
> > > -      - const: fck
> > > -      - const: canfd
> > > -      - const: can_clk
> > > +    oneOf:
> > > +      - items:
> > > +          - const: fck
> > > +          - const: canfd
> > > +          - const: can_clk
> > > +      - items:
> > > +          - const: fck
> > > +          - const: ram_clk
> > > +          - const: can_clk
> > >
> > >    power-domains:
> > >      maxItems: 1
> > > @@ -173,7 +206,9 @@ allOf:
> > >        properties:
> > >          compatible:
> > >            contains:
> > > -            const: renesas,rzg2l-canfd
> > > +            enum:
> > > +              - renesas,r9a09g047-canfd
> > > +              - renesas,rzg2l-canfd
> > >      then:
> > >        properties:
> > >          resets:
> > > @@ -187,6 +222,19 @@ allOf:
> > >        required:
> > >          - reset-names
> > >
> > > +  - if:
> > > +      properties:
> > > +        compatible:
> > > +          contains:
> > > +            const: renesas,r9a09g047-canfd
> > > +    then:
> > > +      properties:
> > > +        interrupts:
> > > +          maxItems: 20
> > > +
> > > +        interrupt-names:
> > > +          maxItems: 20
> >
> > Should these be minItems instead of maxItems? The list has 20 elements
> > at the moment (right?) so you're not adding any restriction here.
> 
> And the existing platforms need to have 'maxItems: 8'.

OK got.

platform 1: Here one of has min/max 2 interrupts. Platform 1 has 2 interrupts
        interrupts:
          minItems: 2
          maxItems: 2

Platform 2: Here one of Has min/max 8/20 interrupts and platform 2 has 8 interrupts
        interrupts:
          maxItems: 8

Platform 3: Here one of Has min/max 8/20 interrupts and platform 3 has 20 interrupts
        interrupts:
          minItems: 20

Cheers,
Biju





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux