On 10/6/2025 3:31 AM, Dmitry Baryshkov wrote: > On Sun, 5 Oct 2025 at 19:49, Ayushi Makhija <[email protected]> wrote: >> >> On 9/26/2025 3:32 AM, Dmitry Baryshkov wrote: >>> On Thu, Sep 25, 2025 at 11:06:01AM +0530, Ayushi Makhija wrote: >>>> Add device tree nodes for the DSI0 controller with their corresponding >>>> PHY found on Qualcomm QCS8300 SoC. >>>> >>>> Signed-off-by: Ayushi Makhija <[email protected]> >>>> --- >>>> arch/arm64/boot/dts/qcom/qcs8300.dtsi | 95 ++++++++++++++++++++++++++- >>>> 1 file changed, 94 insertions(+), 1 deletion(-) >>>> >>>> diff --git a/arch/arm64/boot/dts/qcom/qcs8300.dtsi >>>> b/arch/arm64/boot/dts/qcom/qcs8300.dtsi >>>> index e0e1f63fc45b..834ae0522f2f 100644 >>>> --- a/arch/arm64/boot/dts/qcom/qcs8300.dtsi >>>> +++ b/arch/arm64/boot/dts/qcom/qcs8300.dtsi >>>> @@ -3,6 +3,7 @@ >>>> * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights >>>> reserved. >>>> */ >>>> >>>> +#include <dt-bindings/clock/qcom,dsi-phy-28nm.h> >>>> #include <dt-bindings/clock/qcom,qcs8300-gcc.h> >>>> #include <dt-bindings/clock/qcom,rpmh.h> >>>> #include <dt-bindings/clock/qcom,sa8775p-camcc.h> >>>> @@ -4854,6 +4855,13 @@ dpu_intf0_out: endpoint { >>>> remote-endpoint = >>>> <&mdss_dp0_in>; >>>> }; >>>> }; >>>> + >>>> + port@1 { >>>> + reg = <1>; >>>> + dpu_intf1_out: endpoint { >>>> + remote-endpoint = >>>> <&mdss_dsi0_in>; >>>> + }; >>>> + }; >>>> }; >>>> >>>> mdp_opp_table: opp-table { >>>> @@ -4881,6 +4889,89 @@ opp-650000000 { >>>> }; >>>> }; >>>> >>>> + mdss_dsi0: dsi@ae94000 { >>>> + compatible = >>>> "qcom,sa8775p-dsi-ctrl","qcom,mdss-dsi-ctrl"; >>> >>> qcom,qcs8300-dsi-ctrl. You might use three compatibles (qcs8300, sa8775p >>> and the generic one), but there should be qcs8300 one. >>> >> >> Hi Dmitry, >> >> If I am adding three compatible string for ctrl, >> >> compatible = "qcom,qcs8300-dsi-ctrl", >> "qcom,sa8775p-dsi-ctrl", >> "qcom,mdss-dsi-ctrl"; >> >> while validating dt-binding and dtsi against dt-schema. I am getting below >> errors >> >> >> /local/mnt/workspace/amakhija/linux_next/linux/arch/arm64/boot/dts/qcom/qcs8300-ride.dtb: >> dsi@ae94000: compatible: 'oneOf' conditional failed, one must be fixed: >> ['qcom,qcs8300-dsi-ctrl', 'qcom,sa8775p-dsi-ctrl', >> 'qcom,mdss-dsi-ctrl'] is too long >> 'qcom,qcs8300-dsi-ctrl' is not one of ['qcom,dsi-ctrl-6g-qcm2290', >> 'qcom,mdss-dsi-ctrl'] >> 'qcom,mdss-dsi-ctrl' was expected >> from schema $id: >> http://devicetree.org/schemas/display/msm/dsi-controller-main.yaml# >> >> According to the dsi-controller-main.yaml schema only two strings are >> allowed one is the SOC specific and other one is generic >> "qcom,mdss-dsi-ctrl". >> >> Shall I keep only two strings qcom,qcs8300-mdss.yaml and the generic one >> "qcom,mdss-dsi-ctrl" or if we want to support 3 strings in compatible sting >> we need to modify the dsi-controller-main.yaml ? > > Of course. > >> Similarly, I am getting error for dsi_phy compatible string only one SOC >> specific compatible string is allow. > > So, what's the question? You are adding support for the platform. So > yes, you need to modify the schema. >
Thanks Dmitry for the clarification will modify the dsi-controller-main.yaml to support more than 2 strings in the compatible and dsi-phy-7nm.yaml schema to support more than one string in the compatible. Thanks, Ayushi
