Re: [PATCH net-next v2 09/10] dt-bindings: net: snps,dwmac: add per channel irq support

From: Jisheng Zhang
Date: Wed Aug 16 2023 - 11:49:41 EST


On Thu, Aug 10, 2023 at 05:15:26PM +0100, Conor Dooley wrote:
> On Thu, Aug 10, 2023 at 11:59:06PM +0800, Jisheng Zhang wrote:
> > On Tue, Aug 08, 2023 at 08:39:58AM +0100, Conor Dooley wrote:
> > > On Tue, Aug 08, 2023 at 12:41:50AM +0800, Jisheng Zhang wrote:
> > > > The IP supports per channel interrupt, add support for this usage case.
> > > >
> > > > Signed-off-by: Jisheng Zhang <jszhang@xxxxxxxxxx>
> > > > ---
> > > > .../devicetree/bindings/net/snps,dwmac.yaml | 33 +++++++++++++++++++
> > > > 1 file changed, 33 insertions(+)
> > > >
> > > > diff --git a/Documentation/devicetree/bindings/net/snps,dwmac.yaml b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
> > > > index 5d81042f5634..5a63302ad200 100644
> > > > --- a/Documentation/devicetree/bindings/net/snps,dwmac.yaml
> > > > +++ b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
> > > > @@ -109,6 +109,7 @@ properties:
> > > > - description: The interrupt that occurs when Rx exits the LPI state
> > > > - description: The interrupt that occurs when Safety Feature Correctible Errors happen
> > > > - description: The interrupt that occurs when Safety Feature Uncorrectible Errors happen
> > > > + - description: All of the rx/tx per-channel interrupts
> > > >
> > > > interrupt-names:
> > > > minItems: 1
> > > > @@ -118,6 +119,38 @@ properties:
> > > > - const: eth_lpi
> > > > - const: sfty_ce
> > > > - const: sfty_ue
> > > > + - const: rx0
> > > > + - const: rx1
> > > > + - const: rx2
> > > > + - const: rx3
> > > > + - const: rx4
> > > > + - const: rx5
> > > > + - const: rx6
> > > > + - const: rx7
> > > > + - const: rx8
> > > > + - const: rx9
> > > > + - const: rx10
> > > > + - const: rx11
> > > > + - const: rx12
> > > > + - const: rx13
> > > > + - const: rx14
> > > > + - const: rx15
> > > > + - const: tx0
> > > > + - const: tx1
> > > > + - const: tx2
> > > > + - const: tx3
> > > > + - const: tx4
> > > > + - const: tx5
> > > > + - const: tx6
> > > > + - const: tx7
> > > > + - const: tx8
> > > > + - const: tx9
> > > > + - const: tx10
> > > > + - const: tx11
> > > > + - const: tx12
> > > > + - const: tx13
> > > > + - const: tx14
> > > > + - const: tx15
> > >
> > > I don't think Rob's comment about having added 2 interrupts but 32
> > > interrupt names has been resolved.
> >
> > I misunderstood Rob's comment. Now I'm not sure whether dt-binding
> > can support regex or something or not, or let ask for advice in the
> > following way: how could I write the dt-binding in this case? I didn't
> > find similar examples so far. I'm not sure listing possible
> > description and const properties for all channel interrupts is suitable.
>
> I'm not sure that there is a better way. Rob maybe has a suggestion.
>
> > > Did you actually test putting this many interrupts into a node?
> > > AFAICT, any more than 6 will cause complaints.
> >
> > I tried 12rx and 12tx interrupts in a node, didn't see dtc warning.
> > so I guess the complaints are from dtb check? I will try to reproduce
> > them.
>
> I triggered some by putting more entries into the example in this
> binding & doing dt binding check.

I reproduced the complaints and fixed them by adding additionalItems
and maxItems.

PS: those per-channel and safety irqs are optional.