# SPDX-License-Identifier: GPL-2.0-only
%YAML 1.2
---
$id: http://devicetree.org/schemas/gpu/arm,mali-midgard.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: ARM Mali Midgard GPU

maintainers:
  - Rob Herring <robh@kernel.org>

properties:
  $nodename:
    pattern: '^gpu@[a-f0-9]+$'
  compatible:
    oneOf:
      - items:
          - enum:
              - samsung,exynos5250-mali
          - const: arm,mali-t604
      - items:
          - enum:
              - samsung,exynos5420-mali
          - const: arm,mali-t628
      - items:
          - enum:
              - allwinner,sun50i-h6-mali
          - const: arm,mali-t720
      - items:
          - enum:
              - amlogic,meson-gxm-mali
              - realtek,rtd1295-mali
          - const: arm,mali-t820
      - items:
          - enum:
              - arm,juno-mali
          - const: arm,mali-t624
      - items:
          - enum:
              - rockchip,rk3288-mali
              - samsung,exynos5433-mali
          - const: arm,mali-t760
      - items:
          - enum:
              - rockchip,rk3399-mali
          - const: arm,mali-t860

          # "arm,mali-t830"
          # "arm,mali-t880"

  reg:
    maxItems: 1

  interrupts:
    items:
      - description: Job interrupt
      - description: MMU interrupt
      - description: GPU interrupt

  interrupt-names:
    items:
      - const: job
      - const: mmu
      - const: gpu

  clocks:
    minItems: 1
    maxItems: 2

  clock-names:
    minItems: 1
    items:
      - const: core
      - const: bus

  mali-supply: true
  opp-table: true

  power-domains:
    maxItems: 1

  resets:
    minItems: 1
    maxItems: 2

  operating-points-v2: true

  "#cooling-cells":
    const: 2

  dma-coherent: true

  dynamic-power-coefficient:
    $ref: '/schemas/types.yaml#/definitions/uint32'
    description:
      A u32 value that represents the running time dynamic
      power coefficient in units of uW/MHz/V^2. The
      coefficient can either be calculated from power
      measurements or derived by analysis.

      The dynamic power consumption of the GPU is
      proportional to the square of the Voltage (V) and
      the clock frequency (f). The coefficient is used to
      calculate the dynamic power as below -

      Pdyn = dynamic-power-coefficient * V^2 * f

      where voltage is in V, frequency is in MHz.

required:
  - compatible
  - reg
  - interrupts
  - interrupt-names
  - clocks

additionalProperties: false

allOf:
  - if:
      properties:
        compatible:
          contains:
            const: allwinner,sun50i-h6-mali
    then:
      properties:
        clocks:
          minItems: 2
      required:
        - clock-names
        - resets
  - if:
      properties:
        compatible:
          contains:
            const: amlogic,meson-gxm-mali
    then:
      properties:
        resets:
          minItems: 2
      required:
        - resets

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>

    gpu@ffa30000 {
      compatible = "rockchip,rk3288-mali", "arm,mali-t760";
      reg = <0xffa30000 0x10000>;
      interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
             <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
             <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
      interrupt-names = "job", "mmu", "gpu";
      clocks = <&cru 0>;
      mali-supply = <&vdd_gpu>;
      operating-points-v2 = <&gpu_opp_table>;
      power-domains = <&power 0>;
      #cooling-cells = <2>;
    };

    gpu_opp_table: opp-table {
      compatible = "operating-points-v2";

      opp-533000000 {
        opp-hz = /bits/ 64 <533000000>;
        opp-microvolt = <1250000>;
      };
      opp-450000000 {
        opp-hz = /bits/ 64 <450000000>;
        opp-microvolt = <1150000>;
      };
      opp-400000000 {
        opp-hz = /bits/ 64 <400000000>;
        opp-microvolt = <1125000>;
      };
      opp-350000000 {
        opp-hz = /bits/ 64 <350000000>;
        opp-microvolt = <1075000>;
      };
      opp-266000000 {
        opp-hz = /bits/ 64 <266000000>;
        opp-microvolt = <1025000>;
      };
      opp-160000000 {
        opp-hz = /bits/ 64 <160000000>;
        opp-microvolt = <925000>;
      };
      opp-100000000 {
        opp-hz = /bits/ 64 <100000000>;
        opp-microvolt = <912500>;
      };
    };

...
