Each compatible has a different set of clocks which are associated with it. Add in the list of clocks for each compatible. Cc: Rob Clark <robdclark@xxxxxxxxx> Cc: Abhinav Kumar <quic_abhinavk@xxxxxxxxxxx> Cc: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> Cc: Sean Paul <sean@xxxxxxxxxx> Cc: David Airlie <airlied@xxxxxxxxx> Cc: Daniel Vetter <daniel@xxxxxxxx> Cc: Rob Herring <robh+dt@xxxxxxxxxx> Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@xxxxxxxxxx> Cc: linux-arm-msm@xxxxxxxxxxxxxxx Cc: dri-devel@xxxxxxxxxxxxxxxxxxxxx Cc: freedreno@xxxxxxxxxxxxxxxxxxxxx Cc: devicetree@xxxxxxxxxxxxxxx Cc: linux-kernel@xxxxxxxxxxxxxxx Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@xxxxxxxxxx> --- .../display/msm/dsi-controller-main.yaml | 177 +++++++++++++++--- 1 file changed, 150 insertions(+), 27 deletions(-) diff --git a/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml b/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml index 9db3e63acda3d..c975df0ca22fc 100644 --- a/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml +++ b/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml @@ -9,24 +9,22 @@ title: Qualcomm Display DSI controller maintainers: - Krishna Manikandan <quic_mkrishn@xxxxxxxxxxx> -allOf: - - $ref: "../dsi-controller.yaml#" - properties: compatible: - enum: - - qcom,dsi-ctrl-6g-qcm2290 - - qcom,mdss-dsi-ctrl - - qcom,mdss-dsi-ctrl-apq8064 - - qcom,mdss-dsi-ctrl-msm8916 - - qcom,mdss-dsi-ctrl-msm8974 - - qcom,mdss-dsi-ctrl-msm8996 - - qcom,mdss-dsi-ctrl-sc7180 - - qcom,mdss-dsi-ctrl-sc7280 - - qcom,mdss-dsi-ctrl-sdm630 - - qcom,mdss-dsi-ctrl-sdm660 - - qcom,mdss-dsi-ctrl-sdm845 - - qcom,mdss-dsi-ctrl-sm8250 + items: + - enum: + - qcom,dsi-ctrl-6g-qcm2290 + - qcom,mdss-dsi-ctrl-apq8064 + - qcom,mdss-dsi-ctrl-msm8916 + - qcom,mdss-dsi-ctrl-msm8974 + - qcom,mdss-dsi-ctrl-msm8996 + - qcom,mdss-dsi-ctrl-sc7180 + - qcom,mdss-dsi-ctrl-sc7280 + - qcom,mdss-dsi-ctrl-sdm630 + - qcom,mdss-dsi-ctrl-sdm660 + - qcom,mdss-dsi-ctrl-sdm845 + - qcom,mdss-dsi-ctrl-sm8250 + - const: qcom,mdss-dsi-ctrl reg: maxItems: 1 @@ -51,17 +49,8 @@ properties: minItems: 6 clock-names: - items: - - const: byte - - const: byte_intf - - const: pixel - - const: core - - const: iface - - const: bus - - const: core_mmss - - const: mdp_core - - const: mnoc minItems: 6 + maxItems: 9 phys: maxItems: 1 @@ -169,6 +158,140 @@ required: - vddio-supply - vdda-supply +allOf: + - $ref: "../dsi-controller.yaml#" + - if: + properties: + compatible: + contains: + enum: + - qcom,mdss-dsi-ctrl-apq8064 + then: + properties: + clocks: + maxItems: 7 + clock-names: + items: + - const: iface + - const: bus + - const: core_mmss + - const: src + - const: byte + - const: pixel + - const: core + - if: + properties: + compatible: + contains: + enum: + - qcom,mdss-dsi-ctrl-msm8916 + then: + properties: + clocks: + maxItems: 6 + clock-names: + items: + - const: mdp_core + - const: iface + - const: bus + - const: byte + - const: pixel + - const: core + - if: + properties: + compatible: + contains: + enum: + - qcom,mdss-dsi-ctrl-msm8974 + then: + properties: + clocks: + maxItems: 3 + clock-names: + items: + - const: iface + - const: bus + - const: vsync + - if: + properties: + compatible: + contains: + enum: + - qcom,mdss-dsi-ctrl-msm8996 + then: + properties: + clocks: + maxItems: 7 + clock-names: + items: + - const: mdp_core + - const: byte + - const: iface + - const: bus + - const: core_mmss + - const: pixel + - const: core + - if: + properties: + compatible: + contains: + enum: + - qcom,mdss-dsi-ctrl-sc7180 + - qcom,mdss-dsi-ctrl-sc7280 + - qcom,mdss-dsi-ctrl-sm8250 + then: + properties: + clocks: + maxItems: 6 + clock-names: + items: + - const: byte + - const: byte_intf + - const: pixel + - const: core + - const: iface + - const: bus + - if: + properties: + compatible: + contains: + enum: + - qcom,mdss-dsi-ctrl-sdm630 + - qcom,mdss-dsi-ctrl-sdm660 + then: + properties: + clocks: + maxItems: 9 + clock-names: + items: + - const: mdp_core + - const: byte + - const: byte_intf + - const: mnoc + - const: iface + - const: bus + - const: core_mmss + - const: pixel + - const: core + - if: + properties: + compatible: + contains: + enum: + - qcom,mdss-dsi-ctrl-sdm845 + then: + properties: + clocks: + maxItems: 6 + clock-names: + items: + - const: byte + - const: byte_intf + - const: pixel + - const: core + - const: iface + - const: bus + additionalProperties: false examples: @@ -179,7 +302,7 @@ examples: #include <dt-bindings/power/qcom-rpmpd.h> dsi@ae94000 { - compatible = "qcom,mdss-dsi-ctrl"; + compatible = "qcom,mdss-dsi-ctrl-sc7180", "qcom,mdss-dsi-ctrl"; reg = <0x0ae94000 0x400>; reg-names = "dsi_ctrl"; -- 2.38.1