devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Krzysztof Kozlowski <krzk@kernel.org>
To: Arend van Spriel <arend.vanspriel@broadcom.com>
Cc: Kalle Valo <kvalo@kernel.org>, Hector Martin <marcan@marcan.st>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	devicetree@vger.kernel.org, linux-wireless@vger.kernel.org,
	brcm80211@lists.linux.dev, asahi@lists.linux.dev
Subject: Re: [PATCH 1/2] dt-bindings: wireless: restore constraint for brcm,bcm4329-fmac compatible property
Date: Tue, 20 Aug 2024 17:36:26 +0200	[thread overview]
Message-ID: <0b639d04-af33-44b0-a556-40decff683c5@kernel.org> (raw)
In-Reply-To: <6777d425-b27f-43d0-ba81-b36ac0b8f929@broadcom.com>

On 20/08/2024 14:50, Arend van Spriel wrote:
> On 8/20/2024 1:39 PM, Krzysztof Kozlowski wrote:
>> On 20/08/2024 13:27, Krzysztof Kozlowski wrote:
>>> On Tue, Aug 20, 2024 at 12:12:15PM +0200, Arend van Spriel wrote:
>>>> When extending the bindings for Apple PCIe devices the compatible property
>>>> specification was changed. However, it was changed such that for these
>>>> devices it was no longer necessary to have "brcm,bcm4329-fmac" listed as
>>>> string in the compatible list property as it was before that extension.
>>>
>>> Apart that this was never tested... That statement is not true. Look at
>>> "fixed" commit - it is not doing like that at all.
>>>
>>> I don't understand the reasoning.
>>>
>>>> This patch restores that constraint.
>>>>
>>>> Fixes: e2e37224e8b3 ("dt-bindings: net: bcm4329-fmac: Add Apple properties & chips")
>>>> Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
>>>> ---
>>>>   .../net/wireless/brcm,bcm4329-fmac.yaml       | 19 ++++++++++---------
>>>>   1 file changed, 10 insertions(+), 9 deletions(-)
>>>>
>>>> diff --git a/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml b/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml
>>>> index e564f20d8f41..47f90446322f 100644
>>>> --- a/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml
>>>> +++ b/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml
>>>> @@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
>>>>   title: Broadcom BCM4329 family fullmac wireless SDIO/PCIE devices
>>>>   
>>>>   maintainers:
>>>> -  - Arend van Spriel <arend@broadcom.com>
>>>> +  - Arend van Spriel <arend.vanspriel@broadcom.com>
>>>>   
>>>>   description:
>>>>     The Broadcom Single chip MAC part for the BCM4329 family and
>>>> @@ -27,7 +27,6 @@ properties:
>>>>                 - brcm,bcm4341b0-fmac
>>>>                 - brcm,bcm4341b4-fmac
>>>>                 - brcm,bcm4341b5-fmac
>>>> -              - brcm,bcm4329-fmac
>>>>                 - brcm,bcm4330-fmac
>>>>                 - brcm,bcm4334-fmac
>>>>                 - brcm,bcm43340-fmac
>>>> @@ -46,13 +45,15 @@ properties:
>>>>                 - cypress,cyw43012-fmac
>>>>                 - infineon,cyw43439-fmac
>>>>             - const: brcm,bcm4329-fmac
>>>> -      - enum:
>>>> -          - brcm,bcm4329-fmac
>>>> -          - pci14e4,43dc  # BCM4355
>>>> -          - pci14e4,4464  # BCM4364
>>>> -          - pci14e4,4488  # BCM4377
>>>> -          - pci14e4,4425  # BCM4378
>>>> -          - pci14e4,4433  # BCM4387
>>>> +    - items:
>>>> +          - enum:
>>>> +              - pci14e4,43dc  # BCM4355
>>>> +              - pci14e4,4464  # BCM4364
>>>> +              - pci14e4,4488  # BCM4377
>>>> +              - pci14e4,4425  # BCM4378
>>>> +              - pci14e4,4433  # BCM4387
>>>> +          - const: brcm,bcm4329-fmac
>>>> +    - const: brcm,bcm4329-fmac
>>>
>>> And this does not make sense... You claim that some constrained was
>>> droppped and you re-add it, but in fact you still add the same code as
>>> it was before.
>>>
>>> NAK.
>>
>> Ah, the last "const" actually makes sense, I missed that.
>>
>> Commit still however lacks rationale why these devices are compatible.
>> Plus existing rationale that e2e37224e8b3 changed something is entirely
>> WRONG. It changed nothing. ZERO. It only added new devices, which was
>> claimed are not compatible with brcm,bcm4329-fmac.
> 
> So is that claim true? What does it mean that these new devices are not 
> compatible. If they are they should be in a separate binding or the 

Whether binding is separate or not, is just way of organizing things.

> applicable properties for these devices should be made conditional.

Could be if they are not applicable.

> 
>> Now if you claim that original commit which said "these devices are not
>> compatible with brcm,bcm4329-fmac", then please provide arguments, not
>> just say "other commit did something". It did nothing...
> 
> Not entirely true. Indeed new devices were added for which no 
> "brcm,bcm4329-fmac" string is required in the compatible property. Also 
> the commit added new properties for these new devices. Now in my opinion 
> a driver should not use these properties without a "compatible" check. 
> Hope we can agree to that. However, the driver patch for supporting the 

Sorry, I don't follow. Why the driver would need to check for compatible?

> binding change does no such thing. So if we leave the binding as it 
> currently is the driver will have to check if compatible has any of the 
> listed PCI IDs before processing the properties. As all properties old

Why driver needs to check it? Are these properties not valid?

> and new are marked as optional I can not come up with an argument that 
> these new devices are *not* compatible with brcm,bcm4329-fmac.

Compatibility is expressed by implementing same programming interfasce
(or its subset) thus being able to bind via fallback and correctly
operate in given SW.

I don't know whether that's the case here, so rephrasing my earlier
comments - the commit msg should focus on this aspect and tell that
devices are fully compatible, thus they should use fallback.

Quick look at drivers told me that not - they are not compatible...

Best regards,
Krzysztof


  parent reply	other threads:[~2024-08-20 15:36 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-20 10:12 [PATCH 0/2] dt-bindings fixup for brcm,bcm4329-fmac.yaml Arend van Spriel
2024-08-20 10:12 ` [PATCH 1/2] dt-bindings: wireless: restore constraint for brcm,bcm4329-fmac compatible property Arend van Spriel
2024-08-20 11:14   ` Rob Herring (Arm)
2024-08-20 11:43     ` Arend van Spriel
2024-08-20 11:50       ` Krzysztof Kozlowski
2024-08-20 12:08         ` Arend van Spriel
2024-08-20 19:01         ` Arend van Spriel
2024-08-20 11:27   ` Krzysztof Kozlowski
2024-08-20 11:39     ` Krzysztof Kozlowski
2024-08-20 12:50       ` Arend van Spriel
2024-08-20 14:53         ` Arend Van Spriel
2024-08-20 15:37           ` Krzysztof Kozlowski
2024-08-20 15:36         ` Krzysztof Kozlowski [this message]
2024-08-20 15:50           ` Krzysztof Kozlowski
2024-08-20 19:29             ` Arend van Spriel
2024-08-21  6:46               ` Krzysztof Kozlowski
2024-08-22  0:26                 ` Julian Calaby
2024-08-22  6:29                   ` Arend Van Spriel
2024-08-20 10:12 ` [PATCH 2/2] arm64: boot: apple: fixup wifi device specification Arend van Spriel
2024-08-20 11:30   ` Krzysztof Kozlowski

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=0b639d04-af33-44b0-a556-40decff683c5@kernel.org \
    --to=krzk@kernel.org \
    --cc=arend.vanspriel@broadcom.com \
    --cc=asahi@lists.linux.dev \
    --cc=brcm80211@lists.linux.dev \
    --cc=devicetree@vger.kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=kvalo@kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=marcan@marcan.st \
    /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).