[PATCH v3 2/7] dt-bindings: net: snps,dwmac: Update the maxitems number of resets and reset-names

yanhong wang yanhong.wang at starfivetech.com
Mon Jan 16 22:52:43 PST 2023



On 2023/1/6 20:44, Krzysztof Kozlowski wrote:
> On 06/01/2023 03:59, Yanhong Wang wrote:
>> Some boards(such as StarFive VisionFive v2) require more than one value
>> which defined by resets property, so the original definition can not
>> meet the requirements. In order to adapt to different requirements,
>> adjust the maxitems number definition.
>> 
>> Signed-off-by: Yanhong Wang <yanhong.wang at starfivetech.com>
>> ---
>>  .../devicetree/bindings/net/snps,dwmac.yaml   | 36 ++++++++++++++-----
>>  1 file changed, 28 insertions(+), 8 deletions(-)
>> 
>> diff --git a/Documentation/devicetree/bindings/net/snps,dwmac.yaml b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
>> index e26c3e76ebb7..f7693e8c8d6d 100644
>> --- a/Documentation/devicetree/bindings/net/snps,dwmac.yaml
>> +++ b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
>> @@ -132,14 +132,6 @@ properties:
>>          - pclk
>>          - ptp_ref
>>  
>> -  resets:
>> -    maxItems: 1
>> -    description:
>> -      MAC Reset signal.
>> -
>> -  reset-names:
>> -    const: stmmaceth
>> -
>>    power-domains:
>>      maxItems: 1
>>  
>> @@ -463,6 +455,34 @@ allOf:
>>              Enables the TSO feature otherwise it will be managed by
>>              MAC HW capability register.
>>  
>> +  - if:
>> +      properties:
>> +        compatible:
>> +          contains:
>> +            const: starfive,jh7110-dwmac
>> +
> 
> Looking at your next binding patch, this seems a bit clearer. First of
> all, this patch on itself has little sense. It's not usable on its own,
> because you need the next one.
> 
> Probably the snps,dwmac should be just split into common parts used by
> devices. It makes code much less readable and unnecessary complicated to
> support in one schema both devices and re-usability.
> 
> Otherwise I propose to make the resets/reset-names just like clocks are
> made: define here wide constraints and update all other users of this
> binding to explicitly restrict resets.
> 
> 

Thanks, refer to the definition of clocks. If it is defined as follows, is it OK?

properties:
  resets:
    minItems: 1
    maxItems: 3
    additionalItems: true
    items:
      - description: MAC Reset signal.

  reset-names:
    minItems: 1
    maxItems: 3
    additionalItems: true
    contains:
      enum:
        - stmmaceth


allOf:
  - if:
      properties:
        compatible:
          contains:
            const: starfive,jh7110-dwmac
    then:
      properties:
        resets:
          minItems: 2
          maxItems: 2
        reset-names:
          items:
            - const: stmmaceth
            - const: ahb
      required:
        - resets
        - reset-names  
    else:
      properties:
        resets:
          maxItems: 1
          description:
            MAC Reset signal.

        reset-names:
          const: stmmaceth

Do you have any other better suggestions?


> Best regards,
> Krzysztof
> 



More information about the linux-riscv mailing list