netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: yanhong wang <yanhong.wang@starfivetech.com>,
	linux-riscv@lists.infradead.org, netdev@vger.kernel.org,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: "David S . Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Emil Renner Berthing <kernel@esmil.dk>,
	Richard Cochran <richardcochran@gmail.com>,
	Andrew Lunn <andrew@lunn.ch>,
	Heiner Kallweit <hkallweit1@gmail.com>,
	Peter Geis <pgwipeout@gmail.com>
Subject: Re: [PATCH v3 2/7] dt-bindings: net: snps,dwmac: Update the maxitems number of resets and reset-names
Date: Tue, 17 Jan 2023 08:46:05 +0100	[thread overview]
Message-ID: <8ee5f6ef-80cb-2e0f-6681-598ccc697291@linaro.org> (raw)
In-Reply-To: <84e783a6-0aea-a6ba-13a0-fb29c66cc81a@starfivetech.com>

On 17/01/2023 07:52, yanhong wang wrote:
> 
> 
> 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@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

Drop

>     items:
>       - description: MAC Reset signal.

Drop both

> 
>   reset-names:
>     minItems: 1
>     maxItems: 3
>     additionalItems: true

Drop

>     contains:
>       enum:
>         - stmmaceth

Drop all

> 
> 
> 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?

More or less like this but the allOf should not be in snps,dwmac schema
but in individual schemas. The snps,dwmac is growing unmaintainable...

Best regards,
Krzysztof


  reply	other threads:[~2023-01-17  7:46 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-06  2:59 [PATCH v3 0/7] Add Ethernet driver for StarFive JH7110 SoC Yanhong Wang
2023-01-06  2:59 ` [PATCH v3 1/7] dt-bindings: net: snps,dwmac: Add dwmac-5.20 version Yanhong Wang
2023-01-06 12:37   ` Krzysztof Kozlowski
2023-01-06  2:59 ` [PATCH v3 2/7] dt-bindings: net: snps,dwmac: Update the maxitems number of resets and reset-names Yanhong Wang
2023-01-06 12:38   ` Krzysztof Kozlowski
2023-01-06 12:44   ` Krzysztof Kozlowski
2023-01-17  6:52     ` yanhong wang
2023-01-17  7:46       ` Krzysztof Kozlowski [this message]
2023-01-17  8:14         ` yanhong wang
2023-01-17  8:43           ` Krzysztof Kozlowski
2023-01-06  2:59 ` [PATCH v3 3/7] net: stmmac: platform: Add snps,dwmac-5.20 IP compatible string Yanhong Wang
2023-01-06  2:59 ` [PATCH v3 4/7] dt-bindings: net: Add support StarFive dwmac Yanhong Wang
2023-01-06 12:45   ` Krzysztof Kozlowski
2023-01-18  1:45     ` yanhong wang
2023-01-18  8:00       ` Krzysztof Kozlowski
2023-01-06  2:59 ` [PATCH v3 5/7] net: stmmac: Add glue layer for StarFive JH7110 SoCs Yanhong Wang
2023-01-08 11:11   ` Arun.Ramadoss
2023-01-09  1:13     ` yanhong wang
2023-01-06  3:00 ` [PATCH v3 6/7] riscv: dts: starfive: jh7110: Add ethernet device node Yanhong Wang
2023-01-06  3:00 ` [PATCH v3 7/7] riscv: dts: starfive: visionfive-v2: Enable gmac device tree node Yanhong Wang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=8ee5f6ef-80cb-2e0f-6681-598ccc697291@linaro.org \
    --to=krzysztof.kozlowski@linaro.org \
    --cc=andrew@lunn.ch \
    --cc=davem@davemloft.net \
    --cc=devicetree@vger.kernel.org \
    --cc=edumazet@google.com \
    --cc=hkallweit1@gmail.com \
    --cc=kernel@esmil.dk \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-riscv@lists.infradead.org \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=pgwipeout@gmail.com \
    --cc=richardcochran@gmail.com \
    --cc=robh+dt@kernel.org \
    --cc=yanhong.wang@starfivetech.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).