Re: [PATCH v6 01/12] dt-bindings: display/msm: split qcom,mdss bindings

Krzysztof Kozlowski
2022-09-11T18:36:57Z

On 11/09/2022 20:32, Krzysztof Kozlowski wrote:
> On 11/09/2022 19:45, Dmitry Baryshkov wrote:
>> On Sun, 11 Sept 2022 at 16:57, Krzysztof Kozlowski
>> <krzysztof.kozlowski@linaro.org> wrote:
>>>
>>> On 11/09/2022 15:45, Dmitry Baryshkov wrote:
>>>> On Sun, 11 Sept 2022 at 14:27, Krzysztof Kozlowski
>>>> <krzysztof.kozlowski@linaro.org> wrote:
>>>>>
>>>>> On 10/09/2022 14:54, Dmitry Baryshkov wrote:
>>>>>>>
>>>>>>> However I think there is no such problem, as Dmitry said, that ref
>>>>>>> changes anything. There will be always failure - either from parent
>>>>>>> schema (using $ref) or from device child schema (the one which actually
>>>>>>> misses the property).
>>>>>>
>>>>>> Initially I stumbled upon this issue with the dsi and dsi_phy nodes
>>>>>> for msm8996 devices. If I have $ref here, dsi1/dsi1_phy nodes will
>>>>>> emit warnings regarding the missing -supply properties despite nodes
>>>>>> being disabled. If I use `compatible' here, the schema checks pass.
>>>>>> Thus I'd prefer to leave `compatible' here. Not to mention that it
>>>>>> also allows specifying a tighter binding than just using the $ref.
>>>>>
>>>>> I don't think we understood each other. I claim that error will be there
>>>>> anyway, just from different schema. So your change fixes nothing in
>>>>> total schema check...
>>>>
>>>> If the node is disabled, there will be no different schema check.
>>>
>>> As I wrote before, there was.
>>
>> The following results were captured with the following command, with
>> most of the DSI and MDSS schema files fixed, using the following
>> command:
>> $ PATH=~/.local/bin/:$PATH make -C ../build-64/ ARCH=arm64
>> qcom/sda660-inforce-ifc6560.dtb CHECK_DTBS=y
>> DT_SCHEMA_FILES=display/msm
>>
>> As you can see from the example below, when using 'compatible' I'm
>> getting warnings just for the gpu@5000000 node, while using $ref I
>> also got warnings for the dsi-phy@c996400 node (disabled in the DT
>> file).
>> For your reference the tree in question is uploaded to the:
>> https://git.linaro.org/people/dmitry.baryshkov/kernel.git msm-mdss-yaml
>
> I did not say anything about msm-mdss. I said you will get errors from
> child schema anyway.
>
> From schema:
> /home/krzk/dev/linux/linux/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml
>
> /home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sda660-inforce-ifc6560.dtb:
> dsi@c994000: clock-names: ['mdp_core', 'byte', 'byte_intf', 'mnoc',
> 'iface', 'bus', 'core_mmss', 'pixel', 'core'] is too long
>
> From schema:
> /home/krzk/dev/linux/linux/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml
>
> /home/krzk/dev/linux/linux/out/arch/arm64/boot/dts/qcom/sda660-inforce-ifc6560.dtb:
> dsi@c994000: 'vdda-supply' does not match any of the regexes:
> 'pinctrl-[0-9]+'
>
>
>
> If your child schema fails, the referencing schema fails as well...

Although now with DSI-PHY I cannot reproduce it and I am pretty sure I
reproduced it with DPU controllers after modifying the DTS to lack a
property... Hmmm

Best regards,
Krzysztof