devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>,
	Andy Gross <agross@kernel.org>,
	Bjorn Andersson <bjorn.andersson@linaro.org>,
	Konrad Dybcio <konrad.dybcio@somainline.org>,
	Rob Clark <robdclark@gmail.com>, Sean Paul <sean@poorly.run>,
	Abhinav Kumar <quic_abhinavk@quicinc.com>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
Cc: Stephen Boyd <swboyd@chromium.org>,
	David Airlie <airlied@linux.ie>, Daniel Vetter <daniel@ffwll.ch>,
	linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,
	dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org
Subject: Re: [PATCH v2 06/11] dt-bindings: display/msm: move qcom,sc7180-mdss schema to mdss.yaml
Date: Thu, 11 Aug 2022 11:25:33 +0300	[thread overview]
Message-ID: <37bf0f7f-e555-7ae9-7d2b-e05a9e8db6a4@linaro.org> (raw)
In-Reply-To: <20220710090040.35193-7-dmitry.baryshkov@linaro.org>

On 10/07/2022 12:00, Dmitry Baryshkov wrote:
> Move schema for qcom,sc7180-mdss from dpu-sc7180.yaml to mdss.yaml so
> that the dpu file describes only the DPU schema.
> 
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
>  .../bindings/display/msm/dpu-sc7180.yaml      | 149 +++++-------------
>  .../devicetree/bindings/display/msm/mdss.yaml |  45 +++++-
>  2 files changed, 80 insertions(+), 114 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/display/msm/dpu-sc7180.yaml b/Documentation/devicetree/bindings/display/msm/dpu-sc7180.yaml
> index d3c3e4b07897..9d4ec0b60c25 100644
> --- a/Documentation/devicetree/bindings/display/msm/dpu-sc7180.yaml
> +++ b/Documentation/devicetree/bindings/display/msm/dpu-sc7180.yaml
> @@ -10,151 +10,78 @@ maintainers:
>    - Krishna Manikandan <quic_mkrishn@quicinc.com>
>  
>  description: |
> -  Device tree bindings for MSM Mobile Display Subsystem(MDSS) that encapsulates
> -  sub-blocks like DPU display controller, DSI and DP interfaces etc. Device tree
> -  bindings of MDSS and DPU are mentioned for SC7180 target.
> +  Device tree bindings for the DPU display controller for SC7180 target.
>  
>  properties:
>    compatible:
>      items:
> -      - const: qcom,sc7180-mdss
> +      - const: qcom,sc7180-dpu
>  
>    reg:
> -    maxItems: 1
> +    items:
> +      - description: Address offset and size for mdp register set
> +      - description: Address offset and size for vbif register set
>  
>    reg-names:
> -    const: mdss
> -
> -  power-domains:
> -    maxItems: 1
> +    items:
> +      - const: mdp
> +      - const: vbif
>  
>    clocks:
>      items:
> -      - description: Display AHB clock from gcc
> -      - description: Display AHB clock from dispcc
> +      - description: Display hf axi clock
> +      - description: Display ahb clock
> +      - description: Display rotator clock
> +      - description: Display lut clock
>        - description: Display core clock
> +      - description: Display vsync clock
>  
>    clock-names:
>      items:
> +      - const: bus
>        - const: iface
> -      - const: ahb
> +      - const: rot
> +      - const: lut
>        - const: core
> +      - const: vsync
>  
>    interrupts:
>      maxItems: 1
>  
> -  interrupt-controller: true
> -
> -  "#address-cells": true
> -
> -  "#size-cells": true
> -
> -  "#interrupt-cells":
> -    const: 1
> -
> -  iommus:
> -    items:
> -      - description: Phandle to apps_smmu node with SID mask for Hard-Fail port0
> -
> -  ranges: true
> -
> -  interconnects:
> -    items:
> -      - description: Interconnect path specifying the port ids for data bus
> -
> -  interconnect-names:
> -    const: mdp0-mem
> +  power-domains:
> +    maxItems: 1
>  
> -  resets:
> -    items:
> -      - description: MDSS_CORE reset
> +  operating-points-v2: true
>  
> -patternProperties:
> -  "^display-controller@[0-9a-f]+$":
> -    type: object
> -    description: Node containing the properties of DPU.
> +  ports:
> +    $ref: /schemas/graph.yaml#/properties/ports
> +    description: |
> +      Contains the list of output ports from DPU device. These ports
> +      connect to interfaces that are external to the DPU hardware,
> +      such as DSI, DP etc. Each output port contains an endpoint that
> +      describes how it is connected to an external interface.
>  
>      properties:
> -      compatible:
> -        items:
> -          - const: qcom,sc7180-dpu
> -
> -      reg:
> -        items:
> -          - description: Address offset and size for mdp register set
> -          - description: Address offset and size for vbif register set
> -
> -      reg-names:
> -        items:
> -          - const: mdp
> -          - const: vbif
> -
> -      clocks:
> -        items:
> -          - description: Display hf axi clock
> -          - description: Display ahb clock
> -          - description: Display rotator clock
> -          - description: Display lut clock
> -          - description: Display core clock
> -          - description: Display vsync clock
> -
> -      clock-names:
> -        items:
> -          - const: bus
> -          - const: iface
> -          - const: rot
> -          - const: lut
> -          - const: core
> -          - const: vsync
> -
> -      interrupts:
> -        maxItems: 1
> -
> -      power-domains:
> -        maxItems: 1
> -
> -      operating-points-v2: true
> -
> -      ports:
> -        $ref: /schemas/graph.yaml#/properties/ports
> -        description: |
> -          Contains the list of output ports from DPU device. These ports
> -          connect to interfaces that are external to the DPU hardware,
> -          such as DSI, DP etc. Each output port contains an endpoint that
> -          describes how it is connected to an external interface.
> -
> -        properties:
> -          port@0:
> -            $ref: /schemas/graph.yaml#/properties/port
> -            description: DPU_INTF1 (DSI1)
> -
> -          port@2:
> -            $ref: /schemas/graph.yaml#/properties/port
> -            description: DPU_INTF0 (DP)
> -
> -        required:
> -          - port@0
> +      port@0:
> +        $ref: /schemas/graph.yaml#/properties/port
> +        description: DPU_INTF1 (DSI1)
> +
> +      port@2:
> +        $ref: /schemas/graph.yaml#/properties/port
> +        description: DPU_INTF0 (DP)
>  
>      required:
> -      - compatible
> -      - reg
> -      - reg-names
> -      - clocks
> -      - interrupts
> -      - power-domains
> -      - operating-points-v2
> -      - ports
> +      - port@0
>  
>  required:
>    - compatible
>    - reg
>    - reg-names
> -  - power-domains
>    - clocks
>    - interrupts
> -  - interrupt-controller
> -  - iommus
> -  - ranges
> +  - power-domains
> +  - operating-points-v2
> +  - ports
>  
>  additionalProperties: false
>  
> diff --git a/Documentation/devicetree/bindings/display/msm/mdss.yaml b/Documentation/devicetree/bindings/display/msm/mdss.yaml
> index 7d4ab3d71d2d..98f1f2501291 100644
> --- a/Documentation/devicetree/bindings/display/msm/mdss.yaml
> +++ b/Documentation/devicetree/bindings/display/msm/mdss.yaml
> @@ -17,6 +17,7 @@ description:
>  properties:
>    compatible:
>      enum:
> +      - qcom,sc7180-mdss
>        - qcom,sdm845-mdss
>        - qcom,mdss
>  
> @@ -64,20 +65,21 @@ properties:
>        - description: MDSS_CORE reset
>  
>    interconnects:
> -    minItems: 2
> +    minItems: 1
>      items:
>        - description: MDP port 0
>        - description: MDP port 1
>        - description: Rotator
>  
>    interconnect-names:
> -    minItems: 2
> +    minItems: 1
>      items:
>        - const: mdp0-mem
>        - const: mdp1-mem
>        - const: rotator-mem
>  
>    iommus:
> +    minItems: 1
>      items:
>        - description: Phandle to apps_smmu node with SID mask for Hard-Fail port0
>        - description: Phandle to apps_smmu node with SID mask for Hard-Fail port1
> @@ -129,9 +131,11 @@ allOf:
>              - const: mdss
>  
>          interconnects:
> +          minItems: 1
>            maxItems: 2
>  
>          interconnect-names:
> +          minItems: 1
>            maxItems: 2
>  
>        required:
> @@ -157,6 +161,29 @@ allOf:
>          iommus:
>            minItems: 2
>  
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - qcom,sc7180-mdss
> +    then:
> +      properties:
> +        clocks:
> +          items:
> +            - description: Display AHB clock from gcc
> +            - description: Display AHB clock from dispcc
> +            - description: Display core clock
> +
> +        clock-names:
> +          items:
> +            - const: iface
> +            - const: ahb
> +            - const: core
> +
> +        iommus:
> +          maxItems: 1
> +
>  required:
>    - compatible
>    - reg
> @@ -177,7 +204,19 @@ patternProperties:
>      # TODO: add reference once the mdp5 is converted
>  
>    "^display-controller@(0|[1-9a-f][0-9a-f]*)$":
> -    $ref: dpu-sdm845.yaml
> +    oneOf:
> +      - $ref: dpu-sc7180.yaml
> +      - $ref: dpu-sdm845.yaml

I don't think this is good approach. These are strictly tied, so you
should have rather per SoC MDSS schema pulling in:
1. common MDSS
2. specific children schemas

This makes it quite obvious and specific. Your setup now allows putting
sc7180-dpu under sdm845-dpu.

Best regards,
Krzysztof

  parent reply	other threads:[~2022-08-11  8:25 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-10  9:00 [PATCH v2 00/11] dt-bindings: display/msm: rework MDSS and DPU bindings Dmitry Baryshkov
2022-07-10  9:00 ` [PATCH v2 01/11] arm64: dts: qcom: sdm845: rename DPU device node Dmitry Baryshkov
2022-07-11  8:39   ` Konrad Dybcio
2022-07-10  9:00 ` [PATCH v2 02/11] arm64: dts: qcom: sc7180: " Dmitry Baryshkov
2022-07-11  8:39   ` Konrad Dybcio
2022-07-10  9:00 ` [PATCH v2 03/11] arm64: dts: qcom: sm8250: " Dmitry Baryshkov
2022-07-11  8:40   ` Konrad Dybcio
2022-07-10  9:00 ` [PATCH v2 04/11] dt-bindings: display/msm: split qcom, mdss bindings Dmitry Baryshkov
2022-07-10 16:54   ` Rob Herring
2022-07-10 17:00     ` Dmitry Baryshkov
2022-07-11 11:37   ` Krzysztof Kozlowski
2022-08-22 18:57     ` Dmitry Baryshkov
2022-07-10  9:00 ` [PATCH v2 05/11] dt-bindings: display/msm: move qcom,sdm845-mdss schema to mdss.yaml Dmitry Baryshkov
2022-07-18 17:53   ` Rob Herring
2022-07-10  9:00 ` [PATCH v2 06/11] dt-bindings: display/msm: move qcom,sc7180-mdss " Dmitry Baryshkov
2022-07-18 17:56   ` Rob Herring
2022-08-11  8:25   ` Krzysztof Kozlowski [this message]
2022-08-22 19:04     ` Dmitry Baryshkov
2022-08-23 11:00       ` Krzysztof Kozlowski
2022-07-10  9:00 ` [PATCH v2 07/11] dt-bindings: display/msm: move qcom,sc7280-mdss " Dmitry Baryshkov
2022-07-18 17:56   ` Rob Herring
2022-07-10  9:00 ` [PATCH v2 08/11] dt-bindings: display/msm: move qcom,qcm2290-mdss " Dmitry Baryshkov
2022-07-18 17:57   ` Rob Herring
2022-07-10  9:00 ` [PATCH v2 09/11] dt-bindings: display/msm: move qcom,msm8998-mdss " Dmitry Baryshkov
2022-07-18 17:58   ` Rob Herring
2022-07-10  9:00 ` [PATCH v2 10/11] dt-bindings: display/mdm: add gcc-bus clock to dpu-smd845 Dmitry Baryshkov
2022-07-18 17:58   ` Rob Herring
2022-07-10  9:00 ` [PATCH v2 11/11] dt-bindings: display/msm: move common DPU properties to dpu-common.yaml Dmitry Baryshkov
2022-07-18 17:50   ` Rob Herring
2022-08-22 20:13     ` Dmitry Baryshkov
2022-07-16 15:18 ` (subset) [PATCH v2 00/11] dt-bindings: display/msm: rework MDSS and DPU bindings Bjorn Andersson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=37bf0f7f-e555-7ae9-7d2b-e05a9e8db6a4@linaro.org \
    --to=krzysztof.kozlowski@linaro.org \
    --cc=agross@kernel.org \
    --cc=airlied@linux.ie \
    --cc=bjorn.andersson@linaro.org \
    --cc=daniel@ffwll.ch \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.baryshkov@linaro.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=freedreno@lists.freedesktop.org \
    --cc=konrad.dybcio@somainline.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=quic_abhinavk@quicinc.com \
    --cc=robdclark@gmail.com \
    --cc=robh+dt@kernel.org \
    --cc=sean@poorly.run \
    --cc=swboyd@chromium.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).