devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Andreas Kemnade <andreas@kemnade.info>
Cc: ulf.hansson@linaro.org, robh+dt@kernel.org,
	krzysztof.kozlowski+dt@linaro.org, shawnguo@kernel.org,
	s.hauer@pengutronix.de, kernel@pengutronix.de,
	festevam@gmail.com, linux-imx@nxp.com, linux-mmc@vger.kernel.org,
	devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH] dt-bindings: mmc: fsl-imx-esdhc: allow more compatible combinations
Date: Sun, 8 Jan 2023 15:45:44 +0100	[thread overview]
Message-ID: <70474070-404b-2fbe-2575-4810f6fbda91@linaro.org> (raw)
In-Reply-To: <20230107165457.30f4dddf@aktux>

On 07/01/2023 16:54, Andreas Kemnade wrote:
> On Sat, 7 Jan 2023 16:07:35 +0100
> Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> wrote:
> 
>> On 07/01/2023 16:01, Andreas Kemnade wrote:
>>> On Sat, 7 Jan 2023 15:09:24 +0100
>>> Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> wrote:
>>>   
>>>> On 07/01/2023 15:07, Andreas Kemnade wrote:  
>>>>> On Sat, 7 Jan 2023 15:00:56 +0100
>>>>> Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> wrote:
>>>>>
>>>>> [...]    
>>>>>>>> I asked to remove half-compatible. Not to enforce.
>>>>>>>>      
>>>>> so you are saying that allowing
>>>>> compatible = "A", "B" 
>>>>> is not ok, if B is not fully compatible. I agree with that
>>>>> one.    
>>>>
>>>> I did not say that. It's not related to this problem.
>>>>  
>>> You said "I asked to remove half-compatible" that means to me
>>> remove "B" if not fully compatible with A which sounds sane to me.
>>>   
>>>> Again - you cannot have device which is and is not compatible with
>>>> something else. It's not a Schroedinger's cat to be in two states,
>>>> unless you explicitly document the cases (there are exception). If this
>>>> is such exception, it requires it's own documentation.
>>>>  
>>> so conclusion:
>>> If having A and B half-compatible with A:
>>>
>>> compatible = "A" only: is allowed to specifiy it the binding (status quo),
>>>   but not allowed to make the actual dtsi match the binding documentation
>>>   https://lore.kernel.org/linux-devicetree/72e1194e10ccb4f87aed96265114f0963e805092.camel@pengutronix.de/
>>>   and
>>>   https://lore.kernel.org/linux-devicetree/20210924091439.2561931-5-andreas@kemnade.info/
>>>
>>> compatible = "A", "B" in the binding definition: is not allowed ("I asked to remove
>>>    half-compatible" (= removing B))  
>>
>> No, half compatible is the A in such case.
>>
> I think that there is some misunderstanding in here. I try once again.
> 
> Define compatible with "X" here:
> To me it means:
> 
> device fully works with flags defined in:
> 
> static const struct esdhc_soc_data usdhc_X_data = { ... };
> 
> with usdhc_X_data referenced in
>         { .compatible = "X", .data = &usdhc_X_data, },
> 
> 
> So if there is only "A" matching with above definition of compatibility
>   compatible = "A" would sound sane to me.
> 
> And scrutinizing the flags more and not just wanting to achieve error-free
> dtbs_check, I think is this in most cases where there is only "A". 
> 
> If there is "A" and "B" which match that compatibility definition, you
> say that only compatible = "A", "B" is allowed, but not compatible = "A".
> In that case I would have no problem with that.
> 
> But if there is only "A" but no "B" matching the above definition, I would expect
> that only compatible = "A" is allowed but *not* compatible = "A", "B".

Sorry, I don't follow. I also do not understand what "matching" means in
these terms (binding driver? of_match?) and also I do not know what is
the "above definition".

Devicetree spec defines the compatibility - so this is the definition.
There will be differences when applying it to different cases.

Best regards,
Krzysztof


  reply	other threads:[~2023-01-08 14:55 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-05 21:38 [PATCH] dt-bindings: mmc: fsl-imx-esdhc: allow more compatible combinations Andreas Kemnade
2023-01-06  8:41 ` Krzysztof Kozlowski
2023-01-06 19:33   ` Andreas Kemnade
2023-01-07 13:23     ` Krzysztof Kozlowski
2023-01-07 13:43       ` Andreas Kemnade
2023-01-07 14:00         ` Krzysztof Kozlowski
2023-01-07 14:07           ` Andreas Kemnade
2023-01-07 14:09             ` Krzysztof Kozlowski
2023-01-07 15:01               ` Andreas Kemnade
2023-01-07 15:07                 ` Krzysztof Kozlowski
2023-01-07 15:54                   ` Andreas Kemnade
2023-01-08 14:45                     ` Krzysztof Kozlowski [this message]
2023-01-08 17:20                       ` Andreas Kemnade
2023-01-09  9:14                         ` Krzysztof Kozlowski
2023-01-08 22:46                     ` Rob Herring
2023-01-09 23:15                       ` Andreas Kemnade

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=70474070-404b-2fbe-2575-4810f6fbda91@linaro.org \
    --to=krzysztof.kozlowski@linaro.org \
    --cc=andreas@kemnade.info \
    --cc=devicetree@vger.kernel.org \
    --cc=festevam@gmail.com \
    --cc=kernel@pengutronix.de \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-imx@nxp.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mmc@vger.kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=s.hauer@pengutronix.de \
    --cc=shawnguo@kernel.org \
    --cc=ulf.hansson@linaro.org \
    /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).