Message ID | 20230411-topic-straitlagoon_mdss-v3-3-9837d6b3516d@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | SM63(50|75) DPU support | expand |
On 05/05/2023 23:40, Konrad Dybcio wrote: > SC7180, SM6350 and SM6375 use a rather similar hw setup for DPU, with > the main exception being that the last one requires an additional > throttle clock. > > It is not well understood yet, but failing to toggle it on makes the > display hardware stall and not output any frames. > > Document SM6350 and SM6375 DPU. > > Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org> > --- > .../bindings/display/msm/qcom,sc7180-dpu.yaml | 23 +++++++++++++++++++++- > 1 file changed, 22 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sc7180-dpu.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sc7180-dpu.yaml > index 1fb8321d9ee8..630b11480496 100644 > --- a/Documentation/devicetree/bindings/display/msm/qcom,sc7180-dpu.yaml > +++ b/Documentation/devicetree/bindings/display/msm/qcom,sc7180-dpu.yaml > @@ -13,7 +13,10 @@ $ref: /schemas/display/msm/dpu-common.yaml# > > properties: > compatible: > - const: qcom,sc7180-dpu > + enum: > + - qcom,sc7180-dpu > + - qcom,sm6350-dpu > + - qcom,sm6375-dpu > > reg: > items: > @@ -26,6 +29,7 @@ properties: > - const: vbif > > clocks: > + minItems: 6 > items: > - description: Display hf axi clock > - description: Display ahb clock > @@ -33,8 +37,10 @@ properties: > - description: Display lut clock > - description: Display core clock > - description: Display vsync clock > + - description: Display core throttle clock > > clock-names: > + minItems: 6 > items: > - const: bus > - const: iface > @@ -42,6 +48,7 @@ properties: > - const: lut > - const: core > - const: vsync > + - const: throttle > > required: > - compatible > @@ -52,6 +59,20 @@ required: > > unevaluatedProperties: false > > +allOf: > + - if: > + properties: > + compatible: > + const: qcom,sm6375-dpu And the two other variants? Is the clock valid there or not? If not really, then you should have else: with maxItems: 6. > + > + then: > + properties: > + clocks: > + minItems: 7 > + > + clock-names: > + minItems: 7 If there is going new version - put allOf: before unevaluatedProperties:. Otherwise it is fine. > + > examples: > - | > #include <dt-bindings/clock/qcom,dispcc-sc7180.h> > Best regards, Krzysztof
On 7.05.2023 10:14, Krzysztof Kozlowski wrote: > On 05/05/2023 23:40, Konrad Dybcio wrote: >> SC7180, SM6350 and SM6375 use a rather similar hw setup for DPU, with >> the main exception being that the last one requires an additional >> throttle clock. >> >> It is not well understood yet, but failing to toggle it on makes the >> display hardware stall and not output any frames. >> >> Document SM6350 and SM6375 DPU. >> >> Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org> >> --- >> .../bindings/display/msm/qcom,sc7180-dpu.yaml | 23 +++++++++++++++++++++- >> 1 file changed, 22 insertions(+), 1 deletion(-) >> >> diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sc7180-dpu.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sc7180-dpu.yaml >> index 1fb8321d9ee8..630b11480496 100644 >> --- a/Documentation/devicetree/bindings/display/msm/qcom,sc7180-dpu.yaml >> +++ b/Documentation/devicetree/bindings/display/msm/qcom,sc7180-dpu.yaml >> @@ -13,7 +13,10 @@ $ref: /schemas/display/msm/dpu-common.yaml# >> >> properties: >> compatible: >> - const: qcom,sc7180-dpu >> + enum: >> + - qcom,sc7180-dpu >> + - qcom,sm6350-dpu >> + - qcom,sm6375-dpu >> >> reg: >> items: >> @@ -26,6 +29,7 @@ properties: >> - const: vbif >> >> clocks: >> + minItems: 6 >> items: >> - description: Display hf axi clock >> - description: Display ahb clock >> @@ -33,8 +37,10 @@ properties: >> - description: Display lut clock >> - description: Display core clock >> - description: Display vsync clock >> + - description: Display core throttle clock >> >> clock-names: >> + minItems: 6 >> items: >> - const: bus >> - const: iface >> @@ -42,6 +48,7 @@ properties: >> - const: lut >> - const: core >> - const: vsync >> + - const: throttle >> >> required: >> - compatible >> @@ -52,6 +59,20 @@ required: >> >> unevaluatedProperties: false >> >> +allOf: >> + - if: >> + properties: >> + compatible: >> + const: qcom,sm6375-dpu > > And the two other variants? Is the clock valid there or not? If not > really, then you should have else: with maxItems: 6. Oh right! > >> + >> + then: >> + properties: >> + clocks: >> + minItems: 7 >> + >> + clock-names: >> + minItems: 7 > > If there is going new version - put allOf: before > unevaluatedProperties:. Otherwise it is fine. Thanks! Konrad > >> + >> examples: >> - | >> #include <dt-bindings/clock/qcom,dispcc-sc7180.h> >> > > Best regards, > Krzysztof >
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sc7180-dpu.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sc7180-dpu.yaml index 1fb8321d9ee8..630b11480496 100644 --- a/Documentation/devicetree/bindings/display/msm/qcom,sc7180-dpu.yaml +++ b/Documentation/devicetree/bindings/display/msm/qcom,sc7180-dpu.yaml @@ -13,7 +13,10 @@ $ref: /schemas/display/msm/dpu-common.yaml# properties: compatible: - const: qcom,sc7180-dpu + enum: + - qcom,sc7180-dpu + - qcom,sm6350-dpu + - qcom,sm6375-dpu reg: items: @@ -26,6 +29,7 @@ properties: - const: vbif clocks: + minItems: 6 items: - description: Display hf axi clock - description: Display ahb clock @@ -33,8 +37,10 @@ properties: - description: Display lut clock - description: Display core clock - description: Display vsync clock + - description: Display core throttle clock clock-names: + minItems: 6 items: - const: bus - const: iface @@ -42,6 +48,7 @@ properties: - const: lut - const: core - const: vsync + - const: throttle required: - compatible @@ -52,6 +59,20 @@ required: unevaluatedProperties: false +allOf: + - if: + properties: + compatible: + const: qcom,sm6375-dpu + + then: + properties: + clocks: + minItems: 7 + + clock-names: + minItems: 7 + examples: - | #include <dt-bindings/clock/qcom,dispcc-sc7180.h>
SC7180, SM6350 and SM6375 use a rather similar hw setup for DPU, with the main exception being that the last one requires an additional throttle clock. It is not well understood yet, but failing to toggle it on makes the display hardware stall and not output any frames. Document SM6350 and SM6375 DPU. Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org> --- .../bindings/display/msm/qcom,sc7180-dpu.yaml | 23 +++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-)