Commit a1ed5860 authored by Konrad Dybcio's avatar Konrad Dybcio Committed by Dmitry Baryshkov
Browse files

dt-bindings: display: msm: Add reg bus and rotator interconnects



Apart from the already handled data bus (MAS_MDP_Pn<->DDR), there are
other connection paths:
- a path that connects rotator block to the DDR.
- a path that needs to be handled to ensure MDSS register access
  functions properly, namely the "reg bus", a.k.a the CPU-MDSS CFG
  interconnect.

Describe these paths to allow using them in device trees and in the
driver.

[Konrad: rework for one vs two MDP paths, update examples]
Reviewed-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: default avatarKonrad Dybcio <konrad.dybcio@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/569480/
Link: https://lore.kernel.org/r/20231125-topic-rb1_feat-v3-2-4cbb567743bb@linaro.org


Signed-off-by: default avatarDmitry Baryshkov <dmitry.baryshkov@linaro.org>
parent 25daacc6
Loading
Loading
Loading
Loading
+14 −4
Original line number Diff line number Diff line
@@ -61,17 +61,27 @@ properties:

  ranges: true

  # This is not a perfect description, but it's impossible to discern and match
  # the entries like we do with interconnect-names
  interconnects:
    minItems: 1
    items:
      - description: Interconnect path from mdp0 (or a single mdp) port to the data bus
      - description: Interconnect path from mdp1 port to the data bus
      - description: Interconnect path from CPU to the reg bus

  interconnect-names:
    minItems: 1
    oneOf:
      - minItems: 1
        items:
          - const: mdp0-mem
          - const: cpu-cfg

      - minItems: 2
        items:
          - const: mdp0-mem
          - const: mdp1-mem
          - const: cpu-cfg

  resets:
    items:
+10 −4
Original line number Diff line number Diff line
@@ -36,10 +36,14 @@ properties:
    maxItems: 2

  interconnects:
    maxItems: 1
    items:
      - description: Interconnect path from mdp0 port to the data bus
      - description: Interconnect path from CPU to the reg bus

  interconnect-names:
    maxItems: 1
    items:
      - const: mdp0-mem
      - const: cpu-cfg

patternProperties:
  "^display-controller@[0-9a-f]+$":
@@ -98,8 +102,10 @@ examples:
        interrupt-controller;
        #interrupt-cells = <1>;

        interconnects = <&mmrt_virt MASTER_MDP0 &bimc SLAVE_EBI1>;
        interconnect-names = "mdp0-mem";
        interconnects = <&mmrt_virt MASTER_MDP0 &bimc SLAVE_EBI1>,
                        <&bimc MASTER_APPSS_PROC &config_noc SLAVE_DISPLAY_CFG>;
        interconnect-names = "mdp0-mem",
                             "cpu-cfg";

        iommus = <&apps_smmu 0x420 0x2>,
                 <&apps_smmu 0x421 0x0>;
+10 −4
Original line number Diff line number Diff line
@@ -36,10 +36,14 @@ properties:
    maxItems: 1

  interconnects:
    maxItems: 1
    items:
      - description: Interconnect path from mdp0 port to the data bus
      - description: Interconnect path from CPU to the reg bus

  interconnect-names:
    maxItems: 1
    items:
      - const: mdp0-mem
      - const: cpu-cfg

patternProperties:
  "^display-controller@[0-9a-f]+$":
@@ -106,8 +110,10 @@ examples:
        interrupt-controller;
        #interrupt-cells = <1>;

        interconnects = <&mmss_noc MASTER_MDP0 &mc_virt SLAVE_EBI1>;
        interconnect-names = "mdp0-mem";
        interconnects = <&mmss_noc MASTER_MDP0 &mc_virt SLAVE_EBI1>,
                        <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_DISPLAY_CFG>;
        interconnect-names = "mdp0-mem",
                             "cpu-cfg";

        iommus = <&apps_smmu 0x800 0x2>;
        ranges;
+10 −4
Original line number Diff line number Diff line
@@ -36,10 +36,14 @@ properties:
    maxItems: 1

  interconnects:
    maxItems: 1
    items:
      - description: Interconnect path from mdp0 port to the data bus
      - description: Interconnect path from CPU to the reg bus

  interconnect-names:
    maxItems: 1
    items:
      - const: mdp0-mem
      - const: cpu-cfg

patternProperties:
  "^display-controller@[0-9a-f]+$":
@@ -118,8 +122,10 @@ examples:
        interrupt-controller;
        #interrupt-cells = <1>;

        interconnects = <&mmss_noc MASTER_MDP0 &mc_virt SLAVE_EBI1>;
        interconnect-names = "mdp0-mem";
        interconnects = <&mmss_noc MASTER_MDP0 &mc_virt SLAVE_EBI1>,
                        <&gem_noc MASTER_APPSS_PROC &cnoc2 SLAVE_DISPLAY_CFG>;
        interconnect-names = "mdp0-mem",
                             "cpu-cfg";

        iommus = <&apps_smmu 0x900 0x402>;
        ranges;
+10 −0
Original line number Diff line number Diff line
@@ -29,6 +29,16 @@ properties:
  iommus:
    maxItems: 2

  interconnects:
    items:
      - description: Interconnect path from mdp0 port to the data bus
      - description: Interconnect path from CPU to the reg bus

  interconnect-names:
    items:
      - const: mdp0-mem
      - const: cpu-cfg

patternProperties:
  "^display-controller@[0-9a-f]+$":
    type: object
Loading