[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e53844b7-601b-f355-302b-cc871962a446@linaro.org>
Date: Fri, 9 Dec 2022 02:35:44 +0200
From: Dmitry Baryshkov <dmitry.baryshkov@...aro.org>
To: Kuogee Hsieh <quic_khsieh@...cinc.com>,
dri-devel@...ts.freedesktop.org, robdclark@...il.com,
sean@...rly.run, swboyd@...omium.org, dianders@...omium.org,
vkoul@...nel.org, daniel@...ll.ch, airlied@...ux.ie,
agross@...nel.org, andersson@...nel.org,
konrad.dybcio@...ainline.org, robh+dt@...nel.org,
krzysztof.kozlowski+dt@...aro.org, devicetree@...r.kernel.org,
airlied@...il.com
Cc: quic_abhinavk@...cinc.com, quic_sbillaka@...cinc.com,
freedreno@...ts.freedesktop.org, linux-arm-msm@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v11 2/5] dt-bindings: msm/dp: add data-lanes and
link-frequencies property
On 09/12/2022 02:22, Kuogee Hsieh wrote:
>
> On 12/8/2022 4:11 PM, Dmitry Baryshkov wrote:
>> On 09/12/2022 01:38, Kuogee Hsieh wrote:
>>>
>>> On 12/8/2022 3:33 PM, Dmitry Baryshkov wrote:
>>>> On 09/12/2022 00:36, Kuogee Hsieh wrote:
>>>>> Add both data-lanes and link-frequencies property into endpoint
>>>>>
>>>>> Changes in v7:
>>>>> -- split yaml out of dtsi patch
>>>>> -- link-frequencies from link rate to symbol rate
>>>>> -- deprecation of old data-lanes property
>>>>>
>>>>> Changes in v8:
>>>>> -- correct Bjorn mail address to kernel.org
>>>>>
>>>>> Changes in v10:
>>>>> -- add menu item to data-lanes and link-frequecnis
>>>>>
>>>>> Changes in v11:
>>>>> -- add endpoint property at port@1
>>>>>
>>>>> Signed-off-by: Kuogee Hsieh <quic_khsieh@...cinc.com>`
>>>>
>>>> Applying: dt-bindings: msm/dp: add data-lanes and link-frequencies
>>>> property
>>>> .git/rebase-apply/patch:47: trailing whitespace.
>>>>
>>>> .git/rebase-apply/patch:51: trailing whitespace.
>>>>
>>>>
>>>> Also the dt_binding_check fails with an error for this schema. And
>>>> after fixing the error in the schema I faced an example validation
>>>> error. Did you check that the schema is correct and that the example
>>>> validates against the schema?
>>>
>>> yes, but i run "make dt_binding_check
>>> DT_SCHEMA_FILES=Documentation/devicetree/bindings/display/msm/dp-controller.yaml" at mu v5.15 branch since
>>
>> I wouldn't ask you to post the log here. But I don't think that either
>> of the errors that I see here is related to 5.15 vs 6.1-rc.
>>
>> In fact after applying this patch against 5.15 I saw the expected
>> failure:
>>
>> Documentation/devicetree/bindings/display/msm/dp-controller.yaml:
>> properties:required: ['port@0', 'port@1'] is not of type 'object',
>> 'boolean'
>> Documentation/devicetree/bindings/display/msm/dp-controller.yaml:
>> properties: 'required' should not be valid under {'$ref':
>> '#/definitions/json-schema-prop-names'}
>> Documentation/devicetree/bindings/display/msm/dp-controller.yaml:
>> ignoring, error in schema: properties: required
>>
>>>
>>> "make dt_binding_check" does not work at msm-next branch.
>>
>> I went ahead and just checked.
>>
>> `make dt_binding_check DT_SCHEMA_FILES=display/msm` works cleanly in
>> msm-next and reports a single example-related warning in
>> msm-next-lumag. I pushed a patch to fix that warning (wich can
>> hopefully be picked up by Abhinav into msm-fixes). So you can assume
>> that both these branches have consistent error-free display/msm schemas.
>>
> I have clean msm-next branch (without my data-lines yaml patch applied)
> and run "make dt_binding_check
> DT_SCHEMA_FILES=Documentation/devicetree/bindings/display/msm/dp-controller.yaml", then I saw below error messages.
>
> Have you run into this problem?
No.
>
> HOSTCC scripts/basic/fixdep
> HOSTCC scripts/dtc/dtc.o
> HOSTCC scripts/dtc/flattree.o
> HOSTCC scripts/dtc/fstree.o
> HOSTCC scripts/dtc/data.o
> HOSTCC scripts/dtc/livetree.o
> HOSTCC scripts/dtc/treesource.o
> HOSTCC scripts/dtc/srcpos.o
> HOSTCC scripts/dtc/checks.o
> HOSTCC scripts/dtc/util.o
> LEX scripts/dtc/dtc-lexer.lex.c
> HOSTCC scripts/dtc/dtc-lexer.lex.o
> HOSTCC scripts/dtc/dtc-parser.tab.o
> HOSTLD scripts/dtc/dtc
> sort: -:2: disorder: 2022.1
> ERROR: dtschema minimum version is v2022.3
> make[2]: *** [check_dtschema_version] Error 1
> make[1]: *** [dt_binding_check] Error 2
> make: *** [__sub-make] Error 2
This means that somewhere in your path you have an older dtschema instance.
When you sent me a question regarding this error, I asked for the
additional info. You provided none. Instead you went on sending the
untested patch that doesn't work.
>
>>>
>>> But I did not check trainiling whitespace this time.
>>>
>>>>
>>>>> ---
>>>>> .../bindings/display/msm/dp-controller.yaml | 27
>>>>> ++++++++++++++++++++++
>>>>> 1 file changed, 27 insertions(+)
>>>>>
>>>>> diff --git
>>>>> a/Documentation/devicetree/bindings/display/msm/dp-controller.yaml
>>>>> b/Documentation/devicetree/bindings/display/msm/dp-controller.yaml
>>>>> index f2515af..2a7fdef8 100644
>>>>> --- a/Documentation/devicetree/bindings/display/msm/dp-controller.yaml
>>>>> +++ b/Documentation/devicetree/bindings/display/msm/dp-controller.yaml
>>>>> @@ -81,6 +81,7 @@ properties:
>>>>> data-lanes:
>>>>> $ref: /schemas/types.yaml#/definitions/uint32-array
>>>>> + deprecated: true
>>>>> minItems: 1
>>>>> maxItems: 4
>>>>> items:
>>>>> @@ -96,6 +97,7 @@ properties:
>>>>> ports:
>>>>> $ref: /schemas/graph.yaml#/properties/ports
>>>>> +
>>>>> properties:
>>>>> port@0:
>>>>> $ref: /schemas/graph.yaml#/properties/port
>>>>> @@ -105,6 +107,29 @@ properties:
>>>>> $ref: /schemas/graph.yaml#/properties/port
>>>>> description: Output endpoint of the controller
>>>>> + properties:
>>>>> + endpoint:
>>>>> + $ref: /schemas/media/video-interfaces.yaml#
>>>>> +
>>>>> + properties:
>>>>> + remote-endpoint: true
>>>>
>>>> PLease add empty lines between the property definitions
>>>>
>>>>> + data-lanes:
>>>>> + $ref: /schemas/types.yaml#/definitions/uint32-array
>>>>
>>>> This is already a part of video-interfaces, so you don't need $ref
>>>>
>>>>> + minItems: 1
>>>>> + maxItems: 4
>>>>> + items:
>>>>> + maximum: 3
>>>>
>>>> enum: [0, 1, 2, 3]
>>>>
>>>>> + link-frequencies:
>>>>> + $ref: /schemas/types.yaml#/definitions/uint64-array
>>>>> + minItems: 1
>>>>> + maxItems: 4
>>>>> + items:
>>>>> + maximum: 8100000000
>>>>
>>>> I think we can have enum here too.
>>>>
>>>>> +
>>>>> + required:
>>>>> + - port@0
>>>>> + - port@1
>>>>> +
>>>>> required:
>>>>> - compatible
>>>>> - reg
>>>>> @@ -193,6 +218,8 @@ examples:
>>>>> reg = <1>;
>>>>> endpoint {
>>>>> remote-endpoint = <&typec>;
>>>>> + data-lanes = <0 1>;
>>>>> + link-frequencies = /bits/ 64 <1620000000
>>>>> 2700000000 5400000000 8100000000>;
>>>>> };
>>>>> };
>>>>> };
>>>>
>>
--
With best wishes
Dmitry
Powered by blists - more mailing lists