diff mbox series

[net-next,10/16] dt-bindings: net: dwmac: Add AXI-bus properties constraints

Message ID 20230313225103.30512-11-Sergey.Semin@baikalelectronics.ru
State Changes Requested, archived
Headers show
Series dt-bindings: net: dwmac: Extend clocks, props desc and constraints | expand

Checks

Context Check Description
robh/checkpatch success
robh/patch-applied success
robh/dtbs-check warning build log
robh/dt-meta-schema success

Commit Message

Serge Semin March 13, 2023, 10:50 p.m. UTC
Currently none of the AXI-bus non-boolean DT-properties have constraints
defined meanwhile they can be specified at least based on the
corresponding device configs. Let's do that:
+ snps,wr_osr_lm/snps,rd_osr_lmt - maximum number of outstanding AXI-bus
read/write requests is limited with the IP-core synthesize parameter
AXI_MAX_{RD,WR}_REQ. DW MAC/GMAC: <= 16, DW Eth QoS: <= 32, DW xGMAC: <=
64. The least restrictive constraint is defined since the DT-schema is
common for all IP-cores.
+ snps,blen - array of the burst lengths supported by the AXI-bus. Values
are limited by the AXI3/4 bus standard, available AXI/System bus CSR flags
and the AXI-bus IP-core synthesize config . All DW *MACs support setting
the burst length within the set: 4, 8, 16, 32, 64, 128, 256. If some burst
length is unsupported a zero value can be specified instead in the array.

Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
---
 Documentation/devicetree/bindings/net/snps,dwmac.yaml | 8 ++++++++
 1 file changed, 8 insertions(+)

Comments

Krzysztof Kozlowski March 16, 2023, 8:06 a.m. UTC | #1
On 13/03/2023 23:50, Serge Semin wrote:
> Currently none of the AXI-bus non-boolean DT-properties have constraints
> defined meanwhile they can be specified at least based on the
> corresponding device configs. Let's do that:
> + snps,wr_osr_lm/snps,rd_osr_lmt - maximum number of outstanding AXI-bus
> read/write requests is limited with the IP-core synthesize parameter
> AXI_MAX_{RD,WR}_REQ. DW MAC/GMAC: <= 16, DW Eth QoS: <= 32, DW xGMAC: <=
> 64. The least restrictive constraint is defined since the DT-schema is
> common for all IP-cores.
> + snps,blen - array of the burst lengths supported by the AXI-bus. Values
> are limited by the AXI3/4 bus standard, available AXI/System bus CSR flags
> and the AXI-bus IP-core synthesize config . All DW *MACs support setting
> the burst length within the set: 4, 8, 16, 32, 64, 128, 256. If some burst
> length is unsupported a zero value can be specified instead in the array.
> 
> Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>


>  
>        snps,kbbe:
>          $ref: /schemas/types.yaml#/definitions/uint32
> @@ -501,6 +507,8 @@ properties:
>            this is a vector of supported burst length.
>          minItems: 7
>          maxItems: 7
> +        items:
> +          enum: [256, 128, 64, 32, 16, 8, 4, 0]

Increasing order.

Best regards,
Krzysztof
Serge Semin March 23, 2023, 11:49 a.m. UTC | #2
On Thu, Mar 16, 2023 at 09:06:32AM +0100, Krzysztof Kozlowski wrote:
> On 13/03/2023 23:50, Serge Semin wrote:
> > Currently none of the AXI-bus non-boolean DT-properties have constraints
> > defined meanwhile they can be specified at least based on the
> > corresponding device configs. Let's do that:
> > + snps,wr_osr_lm/snps,rd_osr_lmt - maximum number of outstanding AXI-bus
> > read/write requests is limited with the IP-core synthesize parameter
> > AXI_MAX_{RD,WR}_REQ. DW MAC/GMAC: <= 16, DW Eth QoS: <= 32, DW xGMAC: <=
> > 64. The least restrictive constraint is defined since the DT-schema is
> > common for all IP-cores.
> > + snps,blen - array of the burst lengths supported by the AXI-bus. Values
> > are limited by the AXI3/4 bus standard, available AXI/System bus CSR flags
> > and the AXI-bus IP-core synthesize config . All DW *MACs support setting
> > the burst length within the set: 4, 8, 16, 32, 64, 128, 256. If some burst
> > length is unsupported a zero value can be specified instead in the array.
> > 
> > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
> 
> 
> >  
> >        snps,kbbe:
> >          $ref: /schemas/types.yaml#/definitions/uint32
> > @@ -501,6 +507,8 @@ properties:
> >            this is a vector of supported burst length.
> >          minItems: 7
> >          maxItems: 7
> > +        items:
> > +          enum: [256, 128, 64, 32, 16, 8, 4, 0]
> 

> Increasing order.

Ok.

-Serge(y)

> 
> Best regards,
> Krzysztof
>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/net/snps,dwmac.yaml b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
index d1b2910b799b..f24718a8d184 100644
--- a/Documentation/devicetree/bindings/net/snps,dwmac.yaml
+++ b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
@@ -484,11 +484,17 @@  properties:
         $ref: /schemas/types.yaml#/definitions/uint32
         description:
           max write outstanding req. limit
+        default: 1
+        minimum: 1
+        maximum: 64
 
       snps,rd_osr_lmt:
         $ref: /schemas/types.yaml#/definitions/uint32
         description:
           max read outstanding req. limit
+        default: 1
+        minimum: 1
+        maximum: 64
 
       snps,kbbe:
         $ref: /schemas/types.yaml#/definitions/uint32
@@ -501,6 +507,8 @@  properties:
           this is a vector of supported burst length.
         minItems: 7
         maxItems: 7
+        items:
+          enum: [256, 128, 64, 32, 16, 8, 4, 0]
 
       snps,fb:
         $ref: /schemas/types.yaml#/definitions/flag