The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/gpu/arm,mali-bifrost.yaml

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 # SPDX-License-Identifier: GPL-2.0-only
    2 %YAML 1.2
    3 ---
    4 $id: http://devicetree.org/schemas/gpu/arm,mali-bifrost.yaml#
    5 $schema: http://devicetree.org/meta-schemas/core.yaml#
    6 
    7 title: ARM Mali Bifrost GPU
    8 
    9 maintainers:
   10   - Rob Herring <robh@kernel.org>
   11 
   12 properties:
   13   $nodename:
   14     pattern: '^gpu@[a-f0-9]+$'
   15 
   16   compatible:
   17     oneOf:
   18       - items:
   19           - enum:
   20               - amlogic,meson-g12a-mali
   21               - mediatek,mt8183-mali
   22               - realtek,rtd1619-mali
   23               - renesas,r9a07g044-mali
   24               - renesas,r9a07g054-mali
   25               - rockchip,px30-mali
   26               - rockchip,rk3568-mali
   27           - const: arm,mali-bifrost # Mali Bifrost GPU model/revision is fully discoverable
   28       - items:
   29           - enum:
   30               - mediatek,mt8192-mali
   31           - const: arm,mali-valhall-jm # Mali Valhall GPU model/revision is fully discoverable
   32 
   33   reg:
   34     maxItems: 1
   35 
   36   interrupts:
   37     minItems: 3
   38     items:
   39       - description: Job interrupt
   40       - description: MMU interrupt
   41       - description: GPU interrupt
   42       - description: Event interrupt
   43 
   44   interrupt-names:
   45     minItems: 3
   46     items:
   47       - const: job
   48       - const: mmu
   49       - const: gpu
   50       - const: event
   51 
   52   clocks:
   53     minItems: 1
   54     maxItems: 3
   55 
   56   clock-names: true
   57 
   58   mali-supply: true
   59 
   60   sram-supply: true
   61 
   62   operating-points-v2: true
   63 
   64   power-domains:
   65     minItems: 1
   66     maxItems: 3
   67 
   68   resets:
   69     minItems: 1
   70     maxItems: 3
   71 
   72   reset-names: true
   73 
   74   "#cooling-cells":
   75     const: 2
   76 
   77   dynamic-power-coefficient:
   78     $ref: '/schemas/types.yaml#/definitions/uint32'
   79     description:
   80       A u32 value that represents the running time dynamic
   81       power coefficient in units of uW/MHz/V^2. The
   82       coefficient can either be calculated from power
   83       measurements or derived by analysis.
   84 
   85       The dynamic power consumption of the GPU is
   86       proportional to the square of the Voltage (V) and
   87       the clock frequency (f). The coefficient is used to
   88       calculate the dynamic power as below -
   89 
   90       Pdyn = dynamic-power-coefficient * V^2 * f
   91 
   92       where voltage is in V, frequency is in MHz.
   93 
   94   dma-coherent: true
   95 
   96 required:
   97   - compatible
   98   - reg
   99   - interrupts
  100   - interrupt-names
  101   - clocks
  102 
  103 additionalProperties: false
  104 
  105 allOf:
  106   - if:
  107       properties:
  108         compatible:
  109           contains:
  110             const: amlogic,meson-g12a-mali
  111     then:
  112       required:
  113         - resets
  114   - if:
  115       properties:
  116         compatible:
  117           contains:
  118             enum:
  119               - renesas,r9a07g044-mali
  120               - renesas,r9a07g054-mali
  121     then:
  122       properties:
  123         interrupts:
  124           minItems: 4
  125         interrupt-names:
  126           minItems: 4
  127         clocks:
  128           minItems: 3
  129         clock-names:
  130           items:
  131             - const: gpu
  132             - const: bus
  133             - const: bus_ace
  134         resets:
  135           minItems: 3
  136         reset-names:
  137           items:
  138             - const: rst
  139             - const: axi_rst
  140             - const: ace_rst
  141       required:
  142         - clock-names
  143         - power-domains
  144         - resets
  145         - reset-names
  146   - if:
  147       properties:
  148         compatible:
  149           contains:
  150             const: mediatek,mt8183-mali
  151     then:
  152       properties:
  153         power-domains:
  154           minItems: 3
  155         power-domain-names:
  156           items:
  157             - const: core0
  158             - const: core1
  159             - const: core2
  160 
  161       required:
  162         - sram-supply
  163         - power-domains
  164         - power-domain-names
  165     else:
  166       properties:
  167         power-domains:
  168           maxItems: 1
  169         sram-supply: false
  170   - if:
  171       properties:
  172         compatible:
  173           contains:
  174             const: rockchip,rk3568-mali
  175     then:
  176       properties:
  177         clocks:
  178           minItems: 2
  179         clock-names:
  180           items:
  181             - const: gpu
  182             - const: bus
  183       required:
  184         - clock-names
  185 
  186 examples:
  187   - |
  188     #include <dt-bindings/interrupt-controller/irq.h>
  189     #include <dt-bindings/interrupt-controller/arm-gic.h>
  190 
  191     gpu@ffe40000 {
  192       compatible = "amlogic,meson-g12a-mali", "arm,mali-bifrost";
  193       reg = <0xffe40000 0x10000>;
  194       interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
  195              <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
  196              <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
  197       interrupt-names = "job", "mmu", "gpu";
  198       clocks = <&clk 1>;
  199       mali-supply = <&vdd_gpu>;
  200       operating-points-v2 = <&gpu_opp_table>;
  201       resets = <&reset 0>, <&reset 1>;
  202     };
  203 
  204     gpu_opp_table: opp-table {
  205       compatible = "operating-points-v2";
  206 
  207       opp-533000000 {
  208         opp-hz = /bits/ 64 <533000000>;
  209         opp-microvolt = <1250000>;
  210       };
  211       opp-450000000 {
  212         opp-hz = /bits/ 64 <450000000>;
  213         opp-microvolt = <1150000>;
  214       };
  215       opp-400000000 {
  216         opp-hz = /bits/ 64 <400000000>;
  217         opp-microvolt = <1125000>;
  218       };
  219       opp-350000000 {
  220         opp-hz = /bits/ 64 <350000000>;
  221         opp-microvolt = <1075000>;
  222       };
  223       opp-266000000 {
  224         opp-hz = /bits/ 64 <266000000>;
  225         opp-microvolt = <1025000>;
  226       };
  227       opp-160000000 {
  228         opp-hz = /bits/ 64 <160000000>;
  229         opp-microvolt = <925000>;
  230       };
  231       opp-100000000 {
  232         opp-hz = /bits/ 64 <100000000>;
  233         opp-microvolt = <912500>;
  234       };
  235     };
  236 
  237 ...

Cache object: 2e75bc96c08c013842b1bfc6425e9456


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.