Re: [Freedreno] [PATCH v2 1/4] dt-bindings: display: msm: Convert GMU bindings to YAML

2020-02-26 Thread Rob Herring
On Thu, Feb 20, 2020 at 11:26:53AM -0700, Jordan Crouse wrote:
> Convert display/msm/gmu.txt to display/msm/gmu.yaml and remove the old
> text bindings.
> 
> Signed-off-by: Jordan Crouse 
> ---
> 
>  .../devicetree/bindings/display/msm/gmu.txt| 116 --
>  .../devicetree/bindings/display/msm/gmu.yaml   | 130 
> +
>  2 files changed, 130 insertions(+), 116 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/display/msm/gmu.txt
>  create mode 100644 Documentation/devicetree/bindings/display/msm/gmu.yaml


> diff --git a/Documentation/devicetree/bindings/display/msm/gmu.yaml 
> b/Documentation/devicetree/bindings/display/msm/gmu.yaml
> new file mode 100644
> index 000..776ff92
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/msm/gmu.yaml
> @@ -0,0 +1,130 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +# Copyright 2019-2020, The Linux Foundation, All Rights Reserved
> +%YAML 1.2
> +---
> +
> +$id: "http://devicetree.org/schemas/display/msm/gmu.yaml#;
> +$schema: "http://devicetree.org/meta-schemas/core.yaml#;
> +
> +title: Devicetree bindings for the GMU attached to certain Adreno GPUs
> +
> +maintainers:
> +  - Rob Clark 
> +
> +description: |
> +  These bindings describe the Graphics Management Unit (GMU) that is attached
> +  to members of the Adreno A6xx GPU family. The GMU provides on-device power
> +  management and support to improve power efficiency and reduce the load on
> +  the CPU.
> +
> +properties:
> +  compatible:
> +items:
> +  - enum:
> +  - qcom,adreno-gmu-630.2
> +  - const: qcom,adreno-gmu
> +
> +  reg:
> +items:
> +  - description: Core GMU registers
> +  - description: GMU PDC registers
> +  - description: GMU PDC sequence registers
> +
> +  reg-names:
> +items:
> +  - const: gmu
> +  - const: gmu_pdc
> +  - const: gmu_pdc_seq
> +
> +  clocks:
> +items:
> + - description: GMU clock
> + - description: GPU CX clock
> + - description: GPU AXI clock
> + - description: GPU MEMNOC clock
> +
> +  clock-names:
> +items:
> +  - const: gmu
> +  - const: cxo
> +  - const: axi
> +  - const: memnoc
> +
> +  interrupts:
> +items:
> + - description: GMU HFI interrupt
> + - description: GMU interrupt
> +
> +
> +  interrupt-names:
> +items:
> +  - const: hfi
> +  - const: gmu
> +
> +  power-domains:
> + items:
> +   - description: CX power domain
> +   - description: GX power domain
> +
> +  power-domain-names:
> + items:
> +   - const: cx
> +   - const: gx
> +
> +  iommus:
> +$ref: /schemas/types.yaml#/definitions/phandle-array

Already has a type. Just need to define how many entries (maxItems).

> +description:
> +   Phandle to a IOMMU device and stream ID. Refer to 
> ../../iommu/iommu.txt
> +   for more information.

Drop. That's all iommus entries.

> +
> +  operating-points-v2:
> +$ref: /schemas/types.yaml#/definitions/phandle
> +description:
> +  Phandle to the OPP table for the available GMU frequencies. Refer to
> +  ../../opp/opp.txt for more information.

Just 'true' is enough here.

> +
> +required:
> +  - compatible
> +  - reg
> +  - reg-names
> +  - clocks
> +  - clock-names
> +  - interrupts
> +  - interrupt-names
> +  - power-domains
> +  - power-domain-names
> +  - iommus
> +  - operating-points-v2
> +
> +examples:
> + - |
> +   #include 
> +   #include 
> +   #include 
> +   #include 
> +
> +   gmu: gmu@506a000 {
> +compatible="qcom,adreno-gmu-630.2", "qcom,adreno-gmu";
> +
> +reg = <0x506a000 0x3>,
> +  <0xb28 0x1>,
> +  <0xb48 0x1>;
> +reg-names = "gmu", "gmu_pdc", "gmu_pdc_seq";
> +
> +clocks = < GPU_CC_CX_GMU_CLK>,
> + < GPU_CC_CXO_CLK>,
> + < GCC_DDRSS_GPU_AXI_CLK>,
> + < GCC_GPU_MEMNOC_GFX_CLK>;
> +clock-names = "gmu", "cxo", "axi", "memnoc";
> +
> +interrupts = ,
> + ;
> +interrupt-names = "hfi", "gmu";
> +
> +power-domains = < GPU_CX_GDSC>,
> +< GPU_GX_GDSC>;
> +power-domain-names = "cx", "gx";
> +
> +iommus = <_smmu 5>;
> +operating-points-v2 = <_opp_table>;
> +   };
> -- 
> 2.7.4
> 
___
Freedreno mailing list
Freedreno@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/freedreno


[Freedreno] [PATCH v2 1/4] dt-bindings: display: msm: Convert GMU bindings to YAML

2020-02-20 Thread Jordan Crouse
Convert display/msm/gmu.txt to display/msm/gmu.yaml and remove the old
text bindings.

Signed-off-by: Jordan Crouse 
---

 .../devicetree/bindings/display/msm/gmu.txt| 116 --
 .../devicetree/bindings/display/msm/gmu.yaml   | 130 +
 2 files changed, 130 insertions(+), 116 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/display/msm/gmu.txt
 create mode 100644 Documentation/devicetree/bindings/display/msm/gmu.yaml

diff --git a/Documentation/devicetree/bindings/display/msm/gmu.txt 
b/Documentation/devicetree/bindings/display/msm/gmu.txt
deleted file mode 100644
index bf9c7a2..000
--- a/Documentation/devicetree/bindings/display/msm/gmu.txt
+++ /dev/null
@@ -1,116 +0,0 @@
-Qualcomm adreno/snapdragon GMU (Graphics management unit)
-
-The GMU is a programmable power controller for the GPU. the CPU controls the
-GMU which in turn handles power controls for the GPU.
-
-Required properties:
-- compatible: "qcom,adreno-gmu-XYZ.W", "qcom,adreno-gmu"
-for example: "qcom,adreno-gmu-630.2", "qcom,adreno-gmu"
-  Note that you need to list the less specific "qcom,adreno-gmu"
-  for generic matches and the more specific identifier to identify
-  the specific device.
-- reg: Physical base address and length of the GMU registers.
-- reg-names: Matching names for the register regions
-  * "gmu"
-  * "gmu_pdc"
-  * "gmu_pdc_seg"
-- interrupts: The interrupt signals from the GMU.
-- interrupt-names: Matching names for the interrupts
-  * "hfi"
-  * "gmu"
-- clocks: phandles to the device clocks
-- clock-names: Matching names for the clocks
-   * "gmu"
-   * "cxo"
-   * "axi"
-   * "mnoc"
-- power-domains: should be:
-   <_gpucc GPU_CX_GDSC>
-   <_gpucc GPU_GX_GDSC>
-- power-domain-names: Matching names for the power domains
-- iommus: phandle to the adreno iommu
-- operating-points-v2: phandle to the OPP operating points
-
-Optional properties:
-- sram: phandle to the On Chip Memory (OCMEM) that's present on some Snapdragon
-SoCs. See Documentation/devicetree/bindings/sram/qcom,ocmem.yaml.
-
-Example:
-
-/ {
-   ...
-
-   gmu: gmu@506a000 {
-   compatible="qcom,adreno-gmu-630.2", "qcom,adreno-gmu";
-
-   reg = <0x506a000 0x3>,
-   <0xb28 0x1>,
-   <0xb48 0x1>;
-   reg-names = "gmu", "gmu_pdc", "gmu_pdc_seq";
-
-   interrupts = ,
-;
-   interrupt-names = "hfi", "gmu";
-
-   clocks = < GPU_CC_CX_GMU_CLK>,
-   < GPU_CC_CXO_CLK>,
-   < GCC_DDRSS_GPU_AXI_CLK>,
-   < GCC_GPU_MEMNOC_GFX_CLK>;
-   clock-names = "gmu", "cxo", "axi", "memnoc";
-
-   power-domains = < GPU_CX_GDSC>,
-   < GPU_GX_GDSC>;
-   power-domain-names = "cx", "gx";
-
-   iommus = <_smmu 5>;
-
-   operating-points-v2 = <_opp_table>;
-   };
-};
-
-a3xx example with OCMEM support:
-
-/ {
-   ...
-
-   gpu: adreno@fdb0 {
-   compatible = "qcom,adreno-330.2",
-"qcom,adreno";
-   reg = <0xfdb0 0x1>;
-   reg-names = "kgsl_3d0_reg_memory";
-   interrupts = ;
-   interrupt-names = "kgsl_3d0_irq";
-   clock-names = "core",
- "iface",
- "mem_iface";
-   clocks = < OXILI_GFX3D_CLK>,
-< OXILICX_AHB_CLK>,
-< OXILICX_AXI_CLK>;
-   sram = <_sram>;
-   power-domains = < OXILICX_GDSC>;
-   operating-points-v2 = <_opp_table>;
-   iommus = <_iommu 0>;
-   };
-
-   ocmem@fdd0 {
-   compatible = "qcom,msm8974-ocmem";
-
-   reg = <0xfdd0 0x2000>,
- <0xfec0 0x18>;
-   reg-names = "ctrl",
-"mem";
-
-   clocks = < RPM_SMD_OCMEMGX_CLK>,
-< OCMEMCX_OCMEMNOC_CLK>;
-   clock-names = "core",
- "iface";
-
-   #address-cells = <1>;
-   #size-cells = <1>;
-
-   gmu_sram: gmu-sram@0 {
-   reg = <0x0 0x10>;
-   ranges = <0 0 0xfec0 0x10>;
-   };
-   };
-};
diff --git a/Documentation/devicetree/bindings/display/msm/gmu.yaml 
b/Documentation/devicetree/bindings/display/msm/gmu.yaml
new file mode 100644
index 000..776ff92
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/msm/gmu.yaml
@@ -0,0 +1,130 @@
+# SPDX-License-Identifier: GPL-2.0-only
+# Copyright 2019-2020, The Linux Foundation, All Rights Reserved
+%YAML 1.2
+---
+
+$id: "http://devicetree.org/schemas/display/msm/gmu.yaml#;
+$schema: