Message ID | 20221107235654.1769462-1-bryan.odonoghue@linaro.org |
---|---|
Headers | show |
Series | mdss-dsi-ctrl binding and dts fixes | expand |
On 08/11/2022 02:56, Bryan O'Donoghue wrote: > Currently we do not differentiate between the various users of the > qcom,mdss-dsi-ctrl. The driver is flexible enough to operate from one > compatible string but, the hardware does have some significant differences > in the number of clocks. > > To facilitate documenting the clocks add the following compatible strings > > - qcom,mdss-dsi-ctrl-apq8064 Generic comment: I think we'd better follow the arm/qcom-soc.yaml and use qcom,soc-something as compat string. This would leave us with qcom,apq8064-dsi-ctrl I'm not sure if we want to follow the qcm2290 approach and encode the DSI ctrl revision here (6g vs v2). > - 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 > > Cc: Rob Clark <robdclark@gmail.com> > Cc: Abhinav Kumar <quic_abhinavk@quicinc.com> > Cc: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > Cc: Sean Paul <sean@poorly.run> > Cc: David Airlie <airlied@gmail.com> > Cc: Daniel Vetter <daniel@ffwll.ch> > Cc: Rob Herring <robh+dt@kernel.org> > Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> > Cc: linux-arm-msm@vger.kernel.org > Cc: dri-devel@lists.freedesktop.org > Cc: freedreno@lists.freedesktop.org > Cc: devicetree@vger.kernel.org > Cc: linux-kernel@vger.kernel.org > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> > --- > .../bindings/display/msm/dsi-controller-main.yaml | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml b/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml > index b35130a77b43e..9db3e63acda3d 100644 > --- a/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml > +++ b/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml > @@ -17,6 +17,16 @@ properties: > 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 > > reg: > maxItems: 1
Hi, On 08/11/2022 02:56, Bryan O'Donoghue wrote: > V2: > https://www.spinics.net/lists/linux-arm-msm/msg116326.html Please send the whole series to both linux-arm-msm and freedreno MLs. And to all maintainers (I think it is more useful to get the whole set rather than being puzzled what happens in the rest of the patches). This would allow you to drop the Cc lists from the patches and pass the whole list to git-send-email. > > - Moves the DSI PHY changes to a different later series. > There are enough dsi-controller-main changes to justify its own > standalone series. > > - The original phy-name binding change given discussion with Rob and > Krzysztof became its own standalone series that has since been merged. > https://www.mail-archive.com/dri-devel@lists.freedesktop.org/msg403214.html > > - Retains the drop of power-domain from yaml as a required property. > I dug into the available dtsi. The apq8064 doesn't appear to have any > GDSC which can be attached as a power-domain, which means the > power-domain requirement is not universal across the various silicon > versions. I don't think 8x60/8960/8064 had GDSCs. At least msm-3.4 adds them only to msm8974. > > - Adds Dmitry's RB to power-domain drop > > - For the clock declarations I've > * I noticed that the simple change I had worked for msm8939 but > subsquently broke other dtsi which drove a bigger change to document > the clocks on a per compatible basis. > * Added compat strings in yaml. > * Moved the allOf down later in the file to acomodate the if/then. > * Number of clocks validated on a per compatible basis > * The driver code which doesn't care about the number of clocks > can still operate on the mdss-dsi-ctrl compat but the dts checks will > validate against the compat string and yaml. > > - vdd descriptions > Took the previous text I missed from the .txt file - Krzysztof, Dmitry > Adds vdd, vdda and vddio to the required list. This exposes warnings in > existing dtsi but the previous .txt declared these regulators as > required. - Krzysztof > > V1: > This series fixes up a number of dtbs checks which are being flagged adding > in the msm8939 dtsi. > > > When converting from .txt to .yaml a number of the parameters for the older > msm8916 silicon were not transmitted into the yaml. > > Adding in the msm8939 which is a near 1:1 copy of the msm8916 in terms of > dtsi triggers a rake of dtbs checks as a result. > > https://www.mail-archive.com/dri-devel@lists.freedesktop.org/msg403211.html > > Bryan O'Donoghue (18): > dt-bindings: msm: dsi-controller-main: Fix operating-points-v2 > constraint > dt-bindings: msm: dsi-controller-main: Fix power-domain constraint > dt-bindings: msm: dsi-controller-main: Add vdd* descriptions back in > dt-bindings: msm: dsi-controller-main: Fix clock declarations > dt-bindings: msm: dsi-controller-main: Fix description of core clock > dt-bindings: msm: dsi-controller-main: Alphanumerically sort > compatible enum > dt-bindings: msm: dsi-controller-main: Add compatible strings for > every current SoC > dt-bindings: msm: dsi-controller-main: Document clocks on a per > compatible basis > ARM: dts: qcom: apq8064: add compat qcom,mdss-dsi-ctrl-apq8064 > ARM: dts: qcom: msm8974: Add compat qcom,mdss-dsi-ctrl-msm8974 > arm64: dts: qcom: msm8916: Add compat qcom,mdss-dsi-ctrl-msm8916 > arm64: dts: qcom: msm8996: Add compat qcom,mdss-dsi-ctrl-msm8996 > arm64: dts: qcom: sc7180: Add compat qcom,mdss-dsi-ctrl-sc7180 > arm64: dts: qcom: sc7280: Add compat qcom,mdss-dsi-ctrl-sc7280 > arm64: dts: qcom: sdm630: Add compat qcom,mdss-dsi-ctrl-sdm630 > arm64: dts: qcom: sdm660: Add compat qcom,mdss-dsi-ctrl-sdm660 > arm64: dts: qcom: sdm845: Add compat qcom,mdss-dsi-ctrl-sdm845 > arm64: dts: qcom: sm8250: Add compat qcom,mdss-dsi-ctrl-sm8250 > > .../display/msm/dsi-controller-main.yaml | 185 ++++++++++++++++-- > arch/arm/boot/dts/qcom-apq8064.dtsi | 3 +- > arch/arm/boot/dts/qcom-msm8974.dtsi | 3 +- > arch/arm64/boot/dts/qcom/msm8916.dtsi | 3 +- > arch/arm64/boot/dts/qcom/msm8996.dtsi | 6 +- > arch/arm64/boot/dts/qcom/sc7180.dtsi | 3 +- > arch/arm64/boot/dts/qcom/sc7280.dtsi | 3 +- > arch/arm64/boot/dts/qcom/sdm630.dtsi | 3 +- > arch/arm64/boot/dts/qcom/sdm660.dtsi | 3 +- > arch/arm64/boot/dts/qcom/sdm845.dtsi | 6 +- > arch/arm64/boot/dts/qcom/sm8250.dtsi | 6 +- > 11 files changed, 194 insertions(+), 30 deletions(-) >
On 08/11/2022 02:56, Bryan O'Donoghue wrote: > When converting from .txt to .yaml dt-binding descriptions we appear to > have missed some of the previous detail on the number and names of > permissible clocks. > > Fixes: 4dbe55c97741 ("dt-bindings: msm: dsi: add yaml schemas for DSI bindings") > Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > Cc: Rob Clark <robdclark@gmail.com> > Cc: Abhinav Kumar <quic_abhinavk@quicinc.com> > Cc: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > Cc: Sean Paul <sean@poorly.run> > Cc: David Airlie <airlied@gmail.com> > Cc: Daniel Vetter <daniel@ffwll.ch> > Cc: Rob Herring <robh+dt@kernel.org> > Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> > Cc: linux-arm-msm@vger.kernel.org > Cc: dri-devel@lists.freedesktop.org > Cc: freedreno@lists.freedesktop.org > Cc: devicetree@vger.kernel.org > Cc: linux-kernel@vger.kernel.org > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> However it might be easier to move this patch after the patch adding the per-platform compat strings. Then you can push these items into the clauses where they are required. > --- > .../bindings/display/msm/dsi-controller-main.yaml | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml b/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml > index 0f7747e55b9be..cab38a20a54b0 100644 > --- a/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml > +++ b/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml > @@ -35,6 +35,10 @@ properties: > - description: Display escape clock > - description: Display AHB clock > - description: Display AXI clock > + - description: Core MultiMedia SubSystem clock > + - description: MDP Core clock > + - description: MNOC clock > + minItems: 6 > > clock-names: > items: > @@ -44,6 +48,10 @@ properties: > - const: core > - const: iface > - const: bus > + - const: core_mmss > + - const: mdp_core > + - const: mnoc > + minItems: 6 > > phys: > maxItems: 1
On 08/11/2022 02:56, Bryan O'Donoghue wrote: > There's a typo in describing the core clock as an 'escape' clock. The > accurate description is 'core'. > > Fixes: 4dbe55c97741 ("dt-bindings: msm: dsi: add yaml schemas for DSI bindings") > Cc: Rob Clark <robdclark@gmail.com> > Cc: Abhinav Kumar <quic_abhinavk@quicinc.com> > Cc: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > Cc: Sean Paul <sean@poorly.run> > Cc: David Airlie <airlied@gmail.com> > Cc: Daniel Vetter <daniel@ffwll.ch> > Cc: Rob Herring <robh+dt@kernel.org> > Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> > Cc: linux-arm-msm@vger.kernel.org > Cc: dri-devel@lists.freedesktop.org > Cc: freedreno@lists.freedesktop.org > Cc: devicetree@vger.kernel.org > Cc: linux-kernel@vger.kernel.org > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> > --- > .../devicetree/bindings/display/msm/dsi-controller-main.yaml | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > > diff --git a/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml b/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml > index cab38a20a54b0..a607ccd4a905a 100644 > --- a/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml > +++ b/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml > @@ -32,7 +32,7 @@ properties: > - description: Display byte clock > - description: Display byte interface clock > - description: Display pixel clock > - - description: Display escape clock > + - description: Display core clock > - description: Display AHB clock > - description: Display AXI clock > - description: Core MultiMedia SubSystem clock
Reviewed-by: David Heidelberg <david@ixit.cz> On 08/11/2022 00:56, Bryan O'Donoghue wrote: > Append silicon specific compatible qcom,mdss-dsi-ctrl-apq8064 to the > mdss-dsi-ctrl block. This allows us to differentiate the specific bindings > for apq8064 against the yaml documentation. > > Cc: Andy Gross <agross@kernel.org> > Cc: Bjorn Andersson <andersson@kernel.org> > Cc: Konrad Dybcio <konrad.dybcio@somainline.org> > Cc: Rob Herring <robh+dt@kernel.org> > Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> > Cc: linux-arm-msm@vger.kernel.org > Cc: devicetree@vger.kernel.org > Cc: linux-kernel@vger.kernel.org > Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> > Cc: David Heidelberg <david@ixit.cz> > Cc: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> > --- > arch/arm/boot/dts/qcom-apq8064.dtsi | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/arch/arm/boot/dts/qcom-apq8064.dtsi b/arch/arm/boot/dts/qcom-apq8064.dtsi > index d036dff4b14f7..f3624832e6841 100644 > --- a/arch/arm/boot/dts/qcom-apq8064.dtsi > +++ b/arch/arm/boot/dts/qcom-apq8064.dtsi > @@ -1287,7 +1287,8 @@ mmss_sfpb: syscon@5700000 { > }; > > dsi0: dsi@4700000 { > - compatible = "qcom,mdss-dsi-ctrl"; > + compatible = "qcom,mdss-dsi-ctrl-apq8064", > + "qcom,mdss-dsi-ctrl"; > label = "MDSS DSI CTRL->0"; > #address-cells = <1>; > #size-cells = <0>;
Hi, On Mon, Nov 7, 2022 at 3:57 PM Bryan O'Donoghue <bryan.odonoghue@linaro.org> wrote: > > Add silicon specific compatible qcom,mdss-dsi-ctrl-sdm845 to the > mdss-dsi-ctrl block. This allows us to differentiate the specific bindings > for sdm845 against the yaml documentation. > > Cc: Andy Gross <agross@kernel.org> > Cc: Bjorn Andersson <andersson@kernel.org> > Cc: Konrad Dybcio <konrad.dybcio@somainline.org> > Cc: Rob Herring <robh+dt@kernel.org> > Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> > Cc: linux-arm-msm@vger.kernel.org > Cc: devicetree@vger.kernel.org > Cc: linux-kernel@vger.kernel.org > Cc: Bjorn Andersson <andersson@kernel.org> > Cc: Douglas Anderson <dianders@chromium.org> > Cc: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > Cc: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > Cc: Rajendra Nayak <rnayak@codeaurora.org> > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> > --- > arch/arm64/boot/dts/qcom/sdm845.dtsi | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) Reviewed-by: Douglas Anderson <dianders@chromium.org>
On 08/11/2022 00:56, Bryan O'Donoghue wrote: > There's a typo in describing the core clock as an 'escape' clock. The > accurate description is 'core'. > > Fixes: 4dbe55c97741 ("dt-bindings: msm: dsi: add yaml schemas for DSI bindings") > Cc: Rob Clark <robdclark@gmail.com> Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Best regards, Krzysztof
On 08/11/2022 13:46, Dmitry Baryshkov wrote: > On 08/11/2022 02:56, Bryan O'Donoghue wrote: >> Currently we do not differentiate between the various users of the >> qcom,mdss-dsi-ctrl. The driver is flexible enough to operate from one >> compatible string but, the hardware does have some significant differences >> in the number of clocks. >> >> To facilitate documenting the clocks add the following compatible strings >> >> - qcom,mdss-dsi-ctrl-apq8064 > > Generic comment: I think we'd better follow the arm/qcom-soc.yaml and > use qcom,soc-something as compat string. This would leave us with > qcom,apq8064-dsi-ctrl That's a requirement. Only existing patterns are allowed to continue, but here all there is no such pattern. Best regards, Krzysztof
On 18/11/2022 15:29, Bryan O'Donoghue wrote: > On 08/11/2022 12:46, Dmitry Baryshkov wrote: >> On 08/11/2022 02:56, Bryan O'Donoghue wrote: >>> Currently we do not differentiate between the various users of the >>> qcom,mdss-dsi-ctrl. The driver is flexible enough to operate from one >>> compatible string but, the hardware does have some significant >>> differences >>> in the number of clocks. >>> >>> To facilitate documenting the clocks add the following compatible >>> strings >>> >>> - qcom,mdss-dsi-ctrl-apq8064 >> >> Generic comment: I think we'd better follow the arm/qcom-soc.yaml and >> use qcom,soc-something as compat string. This would leave us with >> qcom,apq8064-dsi-ctrl >> >> I'm not sure if we want to follow the qcm2290 approach and encode the >> DSI ctrl revision here (6g vs v2). > > For qcm2290 I'm thinking qcm2290-dsi-ctrl - without the 6g piece. This sounds good too. > > a) Nobody is using the compat at the moment > b) I'm not sure what - if any real information the silicon version > number conveys here. > > + Loic, Shawn > > --- > bod >