brintos

brintos / linux-shallow public Read only

0
0
Text · 3.5 KiB · a5b4e00 Raw
148 lines · yaml
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause2%YAML 1.23---4$id: http://devicetree.org/schemas/gpu/arm,mali-valhall-csf.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: ARM Mali Valhall GPU8 9maintainers:10  - Liviu Dudau <liviu.dudau@arm.com>11  - Boris Brezillon <boris.brezillon@collabora.com>12 13properties:14  $nodename:15    pattern: '^gpu@[a-f0-9]+$'16 17  compatible:18    oneOf:19      - items:20          - enum:21              - rockchip,rk3588-mali22          - const: arm,mali-valhall-csf   # Mali Valhall GPU model/revision is fully discoverable23 24  reg:25    maxItems: 126 27  interrupts:28    items:29      - description: Job interrupt30      - description: MMU interrupt31      - description: GPU interrupt32 33  interrupt-names:34    items:35      - const: job36      - const: mmu37      - const: gpu38 39  clocks:40    minItems: 141    maxItems: 342 43  clock-names:44    minItems: 145    items:46      - const: core47      - const: coregroup48      - const: stacks49 50  mali-supply: true51 52  operating-points-v2: true53  opp-table:54    type: object55 56  power-domains:57    minItems: 158    maxItems: 559 60  power-domain-names:61    minItems: 162    maxItems: 563 64  sram-supply: true65 66  "#cooling-cells":67    const: 268 69  dynamic-power-coefficient:70    $ref: /schemas/types.yaml#/definitions/uint3271    description:72      A u32 value that represents the running time dynamic73      power coefficient in units of uW/MHz/V^2. The74      coefficient can either be calculated from power75      measurements or derived by analysis.76 77      The dynamic power consumption of the GPU is78      proportional to the square of the Voltage (V) and79      the clock frequency (f). The coefficient is used to80      calculate the dynamic power as below -81 82      Pdyn = dynamic-power-coefficient * V^2 * f83 84      where voltage is in V, frequency is in MHz.85 86  dma-coherent: true87 88required:89  - compatible90  - reg91  - interrupts92  - interrupt-names93  - clocks94  - mali-supply95 96additionalProperties: false97 98allOf:99  - if:100      properties:101        compatible:102          contains:103            const: rockchip,rk3588-mali104    then:105      properties:106        clocks:107          minItems: 3108        power-domains:109          maxItems: 1110        power-domain-names: false111 112examples:113  - |114    #include <dt-bindings/clock/rockchip,rk3588-cru.h>115    #include <dt-bindings/interrupt-controller/irq.h>116    #include <dt-bindings/interrupt-controller/arm-gic.h>117    #include <dt-bindings/power/rk3588-power.h>118 119    gpu: gpu@fb000000 {120        compatible = "rockchip,rk3588-mali", "arm,mali-valhall-csf";121        reg = <0xfb000000 0x200000>;122        interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH 0>,123                     <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH 0>,124                     <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH 0>;125        interrupt-names = "job", "mmu", "gpu";126        clock-names = "core", "coregroup", "stacks";127        clocks = <&cru CLK_GPU>, <&cru CLK_GPU_COREGROUP>,128                 <&cru CLK_GPU_STACKS>;129        power-domains = <&power RK3588_PD_GPU>;130        operating-points-v2 = <&gpu_opp_table>;131        mali-supply = <&vdd_gpu_s0>;132        sram-supply = <&vdd_gpu_mem_s0>;133 134        gpu_opp_table: opp-table {135            compatible = "operating-points-v2";136            opp-300000000 {137                opp-hz = /bits/ 64 <300000000>;138                opp-microvolt = <675000 675000 850000>;139            };140            opp-400000000 {141                opp-hz = /bits/ 64 <400000000>;142                opp-microvolt = <675000 675000 850000>;143            };144        };145    };146 147...148