From: mkrishn@codeaurora.org
To: Rob Herring <robh@kernel.org>
Cc: Stephen Boyd <swboyd@chromium.org>,
linux-arm-msm@vger.kernel.org, kalyan_t@codeaurora.org,
tanmay@codeaurora.org, abhinavk@codeaurora.org,
robdclark@gmail.com, bjorn.andersson@linaro.org,
vinod.koul@linaro.org, rnayak@codeaurora.org,
dianders@chromium.org, sibis@codeaurora.org,
khsieh@codeaurora.org
Subject: Re: [PATCH v14 3/4] dt-bindings: msm: dsi: add yaml schemas for DSI PHY bindings
Date: Wed, 31 Mar 2021 09:32:55 +0530 [thread overview]
Message-ID: <ee04dc23421ab315d814bad56859eb2c@codeaurora.org> (raw)
In-Reply-To: <20210330194221.GA588861@robh.at.kernel.org>
On 2021-03-31 01:12, Rob Herring wrote:
> On Tue, Mar 30, 2021 at 02:52:29PM +0530, mkrishn@codeaurora.org wrote:
>> On 2021-03-29 08:49, Stephen Boyd wrote:
>> > Quoting mkrishn@codeaurora.org (2021-03-26 03:36:30)
>> > > On 2021-03-26 04:28, Stephen Boyd wrote:
>> > > > Quoting Krishna Manikandan (2021-03-25 05:01:00)
>> > > >> diff --git
>> > > >> a/Documentation/devicetree/bindings/display/msm/dsi-phy-10nm.yaml
>> > > >> b/Documentation/devicetree/bindings/display/msm/dsi-phy-10nm.yaml
>> > > >> new file mode 100644
>> > > >> index 0000000..4a26bef
>> > > >> --- /dev/null
>> > > >> +++ b/Documentation/devicetree/bindings/display/msm/dsi-phy-10nm.yaml
>> > > >> @@ -0,0 +1,68 @@
>> > > >> +# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
>> > > >> +%YAML 1.2
>> > > >> +---
>> > > >> +$id: http://devicetree.org/schemas/display/msm/dsi-phy-10nm.yaml#
>> > > >> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> > > >> +
>> > > >> +title: Qualcomm Display DSI 10nm PHY
>> > > >> +
>> > > >> +maintainers:
>> > > >> + - Krishna Manikandan <mkrishn@codeaurora.org>
>> > > >> +
>> > > >> +allOf:
>> > > >> + - $ref: dsi-phy-common.yaml#
>> > > >> +
>> > > >> +properties:
>> > > >> + compatible:
>> > > >> + oneOf:
>> > [..]
>> > > >> and
>> > > >> + connected to VDDA_MIPI_DSI_0_PLL_0P9 pin for sdm845 target
>> > > >> +
>> > > >> +required:
>> > > >> + - compatible
>> > > >> + - reg
>> > > >> + - reg-names
>> > > >> + - vdds-supply
>> > > >> +
>> > > >> +unevaluatedProperties: false
>> > > >
>> > > > additionalProperties: false instead? This comment applies to the other
>> > > > bindings in this patch.
>> > >
>> > > Hi Stephen,
>> > > We are referencing dsi-phy-common.yaml in this file. Since the
>> > > properties of dsi-phy-common.yaml are applicable to this file also, I
>> > > added unevaluatedProperties: false. If we add additionalProperties:
>> > > false instead, then the properties of dsi-phy-common.yaml will not be
>> > > applicable here and this will throw an error if we add the properties
>> > > from dsi-phy-common.yaml in the example.
>> > >
>> >
>> > Does that matter? I was wondering about that and so I peeked at the
>> > qcom pinctrl binding and it seems to follow a similar design but doesn't
>> > have unevaluatedProperties: false. Instead it has additionalProperies:
>> > false. See qcom,sc8180x-pinctrl.yaml for an example. So did you try it
>> > or does something say you can't do this?
>>
>> Hi Stephen,
>> I had tried the same thing in one of my initial patches and I got a
>> comment
>> from Rob that we have to use unevaluatedProperties when we are
>> referring
>> another
>> file(https://patchwork.kernel.org/project/linux-arm-msm/patch/1589868421-30062-1-git-send-email-mkrishn@codeaurora.org/)
>
> Maybe I had a wrong assumption that you needed the child nodes too?
>
>> In latest dt-schema tool, we will get error if we try to change it to
>> additionalProperties: false.
>> For example, in this patch "#clock-cells' and '#phy-cells' are
>> mentioned in
>> dsi-phy-common.yaml and I am referring this file in dsi-phy-10nm.yaml.
>> If I
>> add
>> additionalProperties: false instead of unevaluatedProperties: false, I
>> will
>> get the error mentioned below.
>>
>> I checked qcom,sc8180x-pinctrl.yaml that you had mentioned in the
>> comment
>> and this file is compiling without any issues even though it is using
>> additionalProperties: false. But I see that the properties mentioned
>> in the
>> reference file (in this case, qcom,tlmm-common.yaml) are again
>> declared in
>> the main file qcom,sc8180x-pinctrl.yaml even though these are
>> mentioned as
>> required properties in the common yaml file. If I remove these
>> properties
>> from qcom,sc8180x-pinctrl.yaml, I can see the same error that I am
>> getting
>> for my file also if additionalProperties are used. If I follow the
>> same
>> approach , ie define the properties again in dsi-phy-10nm.yaml and add
>> additionalProperties: false, I dont see any errors during check
>> (working
>> change mentioned below). Should I make this change for all the files?
>>
>> Error logs:
>> mkrishn@mkrishn-linux:/local/mnt/workspace/linux-next-latest/linux-next$
>> make dt_binding_check
>> DT_SCHEMA_FILES=Documentation/devicetree/bindings/display/msm/dsi-phy-10nm.yaml
>> CHKDT
>> Documentation/devicetree/bindings/processed-schema-examples.json
>> SCHEMA
>> Documentation/devicetree/bindings/processed-schema-examples.json
>> DTEX
>> Documentation/devicetree/bindings/display/msm/dsi-phy-10nm.example.dts
>> DTC
>> Documentation/devicetree/bindings/display/msm/dsi-phy-10nm.example.dt.yaml
>> CHECK
>> Documentation/devicetree/bindings/display/msm/dsi-phy-10nm.example.dt.yaml
>> /local/mnt/workspace/linux-next-latest/linux-next/Documentation/devicetree/bindings/display/msm/dsi-phy-10nm.example.dt.yaml:
>> dsi-phy@ae94400: '#clock-cells', '#phy-cells', 'clock-names', 'clocks'
>> do
>> not match any of the regexes: 'pinctrl-[0-9]+'
>> From schema:
>> /local/mnt/workspace/linux-next-latest/linux-next/Documentation/devicetree/bindings/display/msm/dsi-phy-10nm.yaml
>>
>> Working Change:
>> --- a/Documentation/devicetree/bindings/display/msm/dsi-phy-10nm.yaml
>> +++ b/Documentation/devicetree/bindings/display/msm/dsi-phy-10nm.yaml
>> @@ -30,6 +30,11 @@ properties:
>> - const: dsi_phy_lane
>> - const: dsi_pll
>>
>> + '#clock-cells': true
>> + '#phy-cells': true
>> + clocks: true
>> + clock-names: true
>> +
>> vdds-supply:
>> description: |
>> Connected to DSI0_MIPI_DSI_PLL_VDDA0P9 pin for sc7180 target
>> and
>> @@ -41,7 +46,7 @@ required:
>> - reg-names
>> - vdds-supply
>>
>> -unevaluatedProperties: false
>> +additionalProperties: false
>
> This works if you want to use some, but not all properties in a
> referenced schema. If all apply or listing them all here is too much
> duplication (such as child nodes, but that's a judgement call), then
> use
> 'unevaluatedProperties'.
>
> unevaluatedProperties is also currently a nop because the underlying
> tools don't yet support it. So it won't catch any errors and those
> errors will all have to be fixed when the tools add support.
>
> Rob
Thanks Rob for the clarification. I will make the changes accordingly.
Thanks,
Krishna
next prev parent reply other threads:[~2021-03-31 4:04 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-25 12:00 [PATCH v14 1/4] dt-bindings: msm: disp: add yaml schemas for DPU bindings Krishna Manikandan
2021-03-25 12:00 ` [PATCH v14 2/4] dt-bindings: msm: dsi: add yaml schemas for DSI bindings Krishna Manikandan
2021-03-25 13:27 ` Dmitry Baryshkov
2021-03-25 22:28 ` Stephen Boyd
2021-03-25 22:48 ` Stephen Boyd
2021-03-25 12:01 ` [PATCH v14 3/4] dt-bindings: msm: dsi: add yaml schemas for DSI PHY bindings Krishna Manikandan
2021-03-25 22:58 ` Stephen Boyd
2021-03-26 10:36 ` mkrishn
2021-03-29 3:19 ` Stephen Boyd
2021-03-30 9:22 ` mkrishn
2021-03-30 19:17 ` Stephen Boyd
2021-03-30 19:42 ` Rob Herring
2021-03-31 4:02 ` mkrishn [this message]
2021-03-25 12:01 ` [PATCH v14 4/4] dt-bindings: msm/dp: Add bindings of MSM DisplayPort controller Krishna Manikandan
2021-03-25 23:10 ` Stephen Boyd
2021-03-25 22:45 ` [PATCH v14 1/4] dt-bindings: msm: disp: add yaml schemas for DPU bindings Stephen Boyd
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=ee04dc23421ab315d814bad56859eb2c@codeaurora.org \
--to=mkrishn@codeaurora.org \
--cc=abhinavk@codeaurora.org \
--cc=bjorn.andersson@linaro.org \
--cc=dianders@chromium.org \
--cc=kalyan_t@codeaurora.org \
--cc=khsieh@codeaurora.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=rnayak@codeaurora.org \
--cc=robdclark@gmail.com \
--cc=robh@kernel.org \
--cc=sibis@codeaurora.org \
--cc=swboyd@chromium.org \
--cc=tanmay@codeaurora.org \
--cc=vinod.koul@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