cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

arm,mali-midgard.yaml (4363B)


      1# SPDX-License-Identifier: GPL-2.0-only
      2%YAML 1.2
      3---
      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 GPU
      8
      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-mali
     20          - const: arm,mali-t604
     21      - items:
     22          - enum:
     23              - samsung,exynos5420-mali
     24          - const: arm,mali-t628
     25      - items:
     26          - enum:
     27              - allwinner,sun50i-h6-mali
     28          - const: arm,mali-t720
     29      - items:
     30          - enum:
     31              - amlogic,meson-gxm-mali
     32              - realtek,rtd1295-mali
     33          - const: arm,mali-t820
     34      - items:
     35          - enum:
     36              - arm,juno-mali
     37          - const: arm,mali-t624
     38      - items:
     39          - enum:
     40              - rockchip,rk3288-mali
     41              - samsung,exynos5433-mali
     42          - const: arm,mali-t760
     43      - items:
     44          - enum:
     45              - rockchip,rk3399-mali
     46          - const: arm,mali-t860
     47
     48          # "arm,mali-t830"
     49          # "arm,mali-t880"
     50
     51  reg:
     52    maxItems: 1
     53
     54  interrupts:
     55    items:
     56      - description: Job interrupt
     57      - description: MMU interrupt
     58      - description: GPU interrupt
     59
     60  interrupt-names:
     61    items:
     62      - const: job
     63      - const: mmu
     64      - const: gpu
     65
     66  clocks:
     67    minItems: 1
     68    maxItems: 2
     69
     70  clock-names:
     71    minItems: 1
     72    items:
     73      - const: core
     74      - const: bus
     75
     76  mali-supply: true
     77  opp-table: true
     78
     79  power-domains:
     80    maxItems: 1
     81
     82  resets:
     83    minItems: 1
     84    maxItems: 2
     85
     86  operating-points-v2: true
     87
     88  "#cooling-cells":
     89    const: 2
     90
     91  dma-coherent: true
     92
     93  dynamic-power-coefficient:
     94    $ref: '/schemas/types.yaml#/definitions/uint32'
     95    description:
     96      A u32 value that represents the running time dynamic
     97      power coefficient in units of uW/MHz/V^2. The
     98      coefficient can either be calculated from power
     99      measurements or derived by analysis.
    100
    101      The dynamic power consumption of the GPU is
    102      proportional to the square of the Voltage (V) and
    103      the clock frequency (f). The coefficient is used to
    104      calculate the dynamic power as below -
    105
    106      Pdyn = dynamic-power-coefficient * V^2 * f
    107
    108      where voltage is in V, frequency is in MHz.
    109
    110required:
    111  - compatible
    112  - reg
    113  - interrupts
    114  - interrupt-names
    115  - clocks
    116
    117additionalProperties: false
    118
    119allOf:
    120  - if:
    121      properties:
    122        compatible:
    123          contains:
    124            const: allwinner,sun50i-h6-mali
    125    then:
    126      properties:
    127        clocks:
    128          minItems: 2
    129      required:
    130        - clock-names
    131        - resets
    132  - if:
    133      properties:
    134        compatible:
    135          contains:
    136            const: amlogic,meson-gxm-mali
    137    then:
    138      properties:
    139        resets:
    140          minItems: 2
    141      required:
    142        - resets
    143
    144examples:
    145  - |
    146    #include <dt-bindings/interrupt-controller/irq.h>
    147    #include <dt-bindings/interrupt-controller/arm-gic.h>
    148
    149    gpu@ffa30000 {
    150      compatible = "rockchip,rk3288-mali", "arm,mali-t760";
    151      reg = <0xffa30000 0x10000>;
    152      interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
    153             <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
    154             <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
    155      interrupt-names = "job", "mmu", "gpu";
    156      clocks = <&cru 0>;
    157      mali-supply = <&vdd_gpu>;
    158      operating-points-v2 = <&gpu_opp_table>;
    159      power-domains = <&power 0>;
    160      #cooling-cells = <2>;
    161    };
    162
    163    gpu_opp_table: opp-table {
    164      compatible = "operating-points-v2";
    165
    166      opp-533000000 {
    167        opp-hz = /bits/ 64 <533000000>;
    168        opp-microvolt = <1250000>;
    169      };
    170      opp-450000000 {
    171        opp-hz = /bits/ 64 <450000000>;
    172        opp-microvolt = <1150000>;
    173      };
    174      opp-400000000 {
    175        opp-hz = /bits/ 64 <400000000>;
    176        opp-microvolt = <1125000>;
    177      };
    178      opp-350000000 {
    179        opp-hz = /bits/ 64 <350000000>;
    180        opp-microvolt = <1075000>;
    181      };
    182      opp-266000000 {
    183        opp-hz = /bits/ 64 <266000000>;
    184        opp-microvolt = <1025000>;
    185      };
    186      opp-160000000 {
    187        opp-hz = /bits/ 64 <160000000>;
    188        opp-microvolt = <925000>;
    189      };
    190      opp-100000000 {
    191        opp-hz = /bits/ 64 <100000000>;
    192        opp-microvolt = <912500>;
    193      };
    194    };
    195
    196...