devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Rafał Miłecki" <rafal@milecki.pl>
To: William Zhang <william.zhang@broadcom.com>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>,
	Linux ARM List <linux-arm-kernel@lists.infradead.org>,
	kursad.oney@broadcom.com, anand.gore@broadcom.com,
	dan.beygelman@broadcom.com, f.fainelli@gmail.com,
	Broadcom Kernel List <bcm-kernel-feedback-list@broadcom.com>,
	joel.peshkin@broadcom.com,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Rob Herring <robh+dt@kernel.org>,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [RFC PATCH 1/3] dt-bindings: arm64: bcmbca: Merge BCM4908 into BCMBCA
Date: Wed, 13 Jul 2022 12:58:20 +0200	[thread overview]
Message-ID: <85219d59e2906534409fc24ad2e5e4c9@milecki.pl> (raw)
In-Reply-To: <e4356c5e89492eb690e3dc863ba281bd@milecki.pl>

On 2022-07-13 12:50, Rafał Miłecki wrote:
> On 2022-07-13 02:57, William Zhang wrote:
>> On 7/12/22 11:18, Krzysztof Kozlowski wrote:
>>> On 12/07/2022 19:37, William Zhang wrote:
>>>>>> +      - description: BCM4908 Family based boards
>>>>>> +        items:
>>>>>> +          - enum:
>>>>>> +              # BCM4908 SoC based boards
>>>>>> +              - brcm,bcm94908
>>>>>> +              - asus,gt-ac5300
>>>>>> +              - netgear,raxe500
>>>>>> +              # BCM4906 SoC based boards
>>>>>> +              - brcm,bcm94906
>>>>>> +              - netgear,r8000p
>>>>>> +              - tplink,archer-c2300-v1
>>>>>> +          - enum:
>>>>>> +              - brcm,bcm4908
>>>>>> +              - brcm,bcm4906
>>>>>> +              - brcm,bcm49408
>>>>> 
>>>>> This is wrong.  brcm,bcm94908 followed by brcm,bcm4906 does not 
>>>>> look
>>>>> like valid list of compatibles.
>>>>> 
>>>> For 4908 board variant, it will need to be followed by 4908 chip. 
>>>> Sorry
>>>> for the basic question but is there any requirement to enforce this 
>>>> kind
>>>> of rule?  I would assume dts writer know what he/she is doing and 
>>>> select
>>>> the right combination.
>>> 
>>> The entire point of DT schema is to validate DTS. Combination like 
>>> above
>>> prevents that goal.
>>> 
>>> Best regards,
>>> Krzysztof
>> Understand the DT schema purpose. But items property allows multiple
>> enums in the list which gives a lot of flexibility but make it hard to
>> validate. I am not familiar with DT schema, is there any directive to
>> specify one enum value depending on another so dts validation tool can
>> report error if combination is wrong?
>> 
>> This is our preferred format of all bcmbca compatible string
>> especially when we could have more than 10 chip variants for the same
>> chip family and we really want to work on the chip family id.  We will
>> make sure they are in the right combination in our own patch and patch
>> from other contributors. Would this work? If not, I will probably have
>> to revert the change of 4908(maybe append brcm,bcmbca as this chip
>> belongs to the same bca group) and use "enum board variant", "const
>> main chip id", "brcm,bca" for all other chips as our secondary choice.
> 
> I'm not sure why I didn't even receive 1/3 and half of discussion
> e-mails.
> 
> You can't just put all strings into a single bag and allow mixing them
> in any combos. Please check how it's properly handled in the current
> existing binding:
> Documentation/devicetree/bindings/arm/bcm/brcm,bcm4908.yaml
> 
> Above binding enforces that non-matching compatible strings are not 
> used
> together.

I just noticed you're actually removing brcm,bcm4908.yaml in the 2/3 so
you must be aware of that file.

So you see a cleanly working binding in the brcm,bcm4908.yaml but
instead copying it you decided to wrote your own one from scratch.
Incorrectly.

This smells of NIH (not invented here). Please just use that binding I
wrote and move if it needed.

  reply	other threads:[~2022-07-13 14:37 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-12  2:11 [RFC PATCH 0/3] arm: bcmbca: Update BCM4908 dts for BCMBCA merge William Zhang
2022-07-12  2:11 ` [RFC PATCH 1/3] dt-bindings: arm64: bcmbca: Merge BCM4908 into BCMBCA William Zhang
2022-07-12  7:45   ` Krzysztof Kozlowski
2022-07-12 17:37     ` William Zhang
2022-07-12 18:18       ` Krzysztof Kozlowski
2022-07-13  0:57         ` William Zhang
2022-07-13 10:50           ` Rafał Miłecki
2022-07-13 10:58             ` Rafał Miłecki [this message]
2022-07-13 18:37               ` William Zhang
2022-07-13 20:23                 ` Rafał Miłecki
2022-07-13 20:29                   ` William Zhang
2022-07-18 20:02                 ` Rob Herring
2022-07-18 22:59                   ` William Zhang
2022-07-13 16:21             ` Florian Fainelli
2022-07-12  2:11 ` [RFC PATCH 2/3] dt-bindings: arm64: bcm4908: remove binding document William Zhang
2022-07-12  7:46   ` Krzysztof Kozlowski
2022-07-12  2:11 ` [RFC PATCH 3/3] arm64: dts: bcmbca: update bcm4808 board dts file William Zhang
2022-07-12  7:47   ` Krzysztof Kozlowski
2022-07-12 15:36     ` Florian Fainelli
2022-07-12 15:50       ` Krzysztof Kozlowski
2022-07-12 17:48         ` William Zhang
2022-07-12 18:20           ` Krzysztof Kozlowski
2022-07-13  0:59             ` William Zhang
2022-07-13 10:55       ` Rafał Miłecki
2022-07-13 11:09         ` Krzysztof Kozlowski
2022-07-13 12:00           ` Rafał Miłecki

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=85219d59e2906534409fc24ad2e5e4c9@milecki.pl \
    --to=rafal@milecki.pl \
    --cc=anand.gore@broadcom.com \
    --cc=bcm-kernel-feedback-list@broadcom.com \
    --cc=dan.beygelman@broadcom.com \
    --cc=devicetree@vger.kernel.org \
    --cc=f.fainelli@gmail.com \
    --cc=joel.peshkin@broadcom.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=krzysztof.kozlowski@linaro.org \
    --cc=kursad.oney@broadcom.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=william.zhang@broadcom.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).