brintos

brintos / linux-shallow public Read only

0
0
Text · 4.4 KiB · 0801da3 Raw
203 lines · yaml
1# SPDX-License-Identifier: GPL-2.0-only2%YAML 1.23---4$id: http://devicetree.org/schemas/gpu/arm,mali-midgard.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: ARM Mali Midgard GPU8 9maintainers:10  - Rob Herring <robh@kernel.org>11 12properties:13  $nodename:14    pattern: '^gpu@[a-f0-9]+$'15  compatible:16    oneOf:17      - items:18          - enum:19              - samsung,exynos5250-mali20          - const: arm,mali-t60421      - items:22          - enum:23              - samsung,exynos5420-mali24          - const: arm,mali-t62825      - items:26          - enum:27              - allwinner,sun50i-h6-mali28          - const: arm,mali-t72029      - items:30          - enum:31              - amlogic,meson-gxm-mali32              - realtek,rtd1295-mali33          - const: arm,mali-t82034      - items:35          - enum:36              - arm,juno-mali37          - const: arm,mali-t62438      - items:39          - enum:40              - rockchip,rk3288-mali41              - samsung,exynos5433-mali42          - const: arm,mali-t76043      - items:44          - enum:45              - samsung,exynos7-mali46          - const: samsung,exynos5433-mali47          - const: arm,mali-t76048      - items:49          - enum:50              - rockchip,rk3399-mali51          - const: arm,mali-t86052 53          # "arm,mali-t830"54          # "arm,mali-t880"55 56  reg:57    maxItems: 158 59  interrupts:60    items:61      - description: Job interrupt62      - description: MMU interrupt63      - description: GPU interrupt64 65  interrupt-names:66    items:67      - const: job68      - const: mmu69      - const: gpu70 71  clocks:72    minItems: 173    maxItems: 274 75  clock-names:76    minItems: 177    items:78      - const: core79      - const: bus80 81  mali-supply: true82  opp-table:83    type: object84 85  power-domains:86    maxItems: 187 88  resets:89    minItems: 190    maxItems: 291 92  operating-points-v2: true93 94  "#cooling-cells":95    const: 296 97  dma-coherent: true98 99  dynamic-power-coefficient:100    $ref: /schemas/types.yaml#/definitions/uint32101    description:102      A u32 value that represents the running time dynamic103      power coefficient in units of uW/MHz/V^2. The104      coefficient can either be calculated from power105      measurements or derived by analysis.106 107      The dynamic power consumption of the GPU is108      proportional to the square of the Voltage (V) and109      the clock frequency (f). The coefficient is used to110      calculate the dynamic power as below -111 112      Pdyn = dynamic-power-coefficient * V^2 * f113 114      where voltage is in V, frequency is in MHz.115 116required:117  - compatible118  - reg119  - interrupts120  - interrupt-names121  - clocks122 123additionalProperties: false124 125allOf:126  - if:127      properties:128        compatible:129          contains:130            const: allwinner,sun50i-h6-mali131    then:132      properties:133        clocks:134          minItems: 2135      required:136        - clock-names137        - resets138  - if:139      properties:140        compatible:141          contains:142            const: amlogic,meson-gxm-mali143    then:144      properties:145        resets:146          minItems: 2147      required:148        - resets149 150examples:151  - |152    #include <dt-bindings/interrupt-controller/irq.h>153    #include <dt-bindings/interrupt-controller/arm-gic.h>154 155    gpu@ffa30000 {156      compatible = "rockchip,rk3288-mali", "arm,mali-t760";157      reg = <0xffa30000 0x10000>;158      interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,159             <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,160             <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;161      interrupt-names = "job", "mmu", "gpu";162      clocks = <&cru 0>;163      mali-supply = <&vdd_gpu>;164      operating-points-v2 = <&gpu_opp_table>;165      power-domains = <&power 0>;166      #cooling-cells = <2>;167    };168 169    gpu_opp_table: opp-table {170      compatible = "operating-points-v2";171 172      opp-533000000 {173        opp-hz = /bits/ 64 <533000000>;174        opp-microvolt = <1250000>;175      };176      opp-450000000 {177        opp-hz = /bits/ 64 <450000000>;178        opp-microvolt = <1150000>;179      };180      opp-400000000 {181        opp-hz = /bits/ 64 <400000000>;182        opp-microvolt = <1125000>;183      };184      opp-350000000 {185        opp-hz = /bits/ 64 <350000000>;186        opp-microvolt = <1075000>;187      };188      opp-266000000 {189        opp-hz = /bits/ 64 <266000000>;190        opp-microvolt = <1025000>;191      };192      opp-160000000 {193        opp-hz = /bits/ 64 <160000000>;194        opp-microvolt = <925000>;195      };196      opp-100000000 {197        opp-hz = /bits/ 64 <100000000>;198        opp-microvolt = <912500>;199      };200    };201 202...203