xref: /freebsd/sys/contrib/device-tree/Bindings/gpu/img,powervr.yaml (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
1*8d13bc63SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*8d13bc63SEmmanuel Vadot# Copyright (c) 2023 Imagination Technologies Ltd.
3*8d13bc63SEmmanuel Vadot%YAML 1.2
4*8d13bc63SEmmanuel Vadot---
5*8d13bc63SEmmanuel Vadot$id: http://devicetree.org/schemas/gpu/img,powervr.yaml#
6*8d13bc63SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
7*8d13bc63SEmmanuel Vadot
8*8d13bc63SEmmanuel Vadottitle: Imagination Technologies PowerVR and IMG GPU
9*8d13bc63SEmmanuel Vadot
10*8d13bc63SEmmanuel Vadotmaintainers:
11*8d13bc63SEmmanuel Vadot  - Frank Binns <frank.binns@imgtec.com>
12*8d13bc63SEmmanuel Vadot
13*8d13bc63SEmmanuel Vadotproperties:
14*8d13bc63SEmmanuel Vadot  compatible:
15*8d13bc63SEmmanuel Vadot    items:
16*8d13bc63SEmmanuel Vadot      - enum:
17*8d13bc63SEmmanuel Vadot          - ti,am62-gpu
18*8d13bc63SEmmanuel Vadot      - const: img,img-axe # IMG AXE GPU model/revision is fully discoverable
19*8d13bc63SEmmanuel Vadot
20*8d13bc63SEmmanuel Vadot  reg:
21*8d13bc63SEmmanuel Vadot    maxItems: 1
22*8d13bc63SEmmanuel Vadot
23*8d13bc63SEmmanuel Vadot  clocks:
24*8d13bc63SEmmanuel Vadot    minItems: 1
25*8d13bc63SEmmanuel Vadot    maxItems: 3
26*8d13bc63SEmmanuel Vadot
27*8d13bc63SEmmanuel Vadot  clock-names:
28*8d13bc63SEmmanuel Vadot    items:
29*8d13bc63SEmmanuel Vadot      - const: core
30*8d13bc63SEmmanuel Vadot      - const: mem
31*8d13bc63SEmmanuel Vadot      - const: sys
32*8d13bc63SEmmanuel Vadot    minItems: 1
33*8d13bc63SEmmanuel Vadot
34*8d13bc63SEmmanuel Vadot  interrupts:
35*8d13bc63SEmmanuel Vadot    maxItems: 1
36*8d13bc63SEmmanuel Vadot
37*8d13bc63SEmmanuel Vadot  power-domains:
38*8d13bc63SEmmanuel Vadot    maxItems: 1
39*8d13bc63SEmmanuel Vadot
40*8d13bc63SEmmanuel Vadotrequired:
41*8d13bc63SEmmanuel Vadot  - compatible
42*8d13bc63SEmmanuel Vadot  - reg
43*8d13bc63SEmmanuel Vadot  - clocks
44*8d13bc63SEmmanuel Vadot  - clock-names
45*8d13bc63SEmmanuel Vadot  - interrupts
46*8d13bc63SEmmanuel Vadot
47*8d13bc63SEmmanuel VadotadditionalProperties: false
48*8d13bc63SEmmanuel Vadot
49*8d13bc63SEmmanuel VadotallOf:
50*8d13bc63SEmmanuel Vadot  - if:
51*8d13bc63SEmmanuel Vadot      properties:
52*8d13bc63SEmmanuel Vadot        compatible:
53*8d13bc63SEmmanuel Vadot          contains:
54*8d13bc63SEmmanuel Vadot            const: ti,am62-gpu
55*8d13bc63SEmmanuel Vadot    then:
56*8d13bc63SEmmanuel Vadot      properties:
57*8d13bc63SEmmanuel Vadot        clocks:
58*8d13bc63SEmmanuel Vadot          maxItems: 1
59*8d13bc63SEmmanuel Vadot
60*8d13bc63SEmmanuel Vadotexamples:
61*8d13bc63SEmmanuel Vadot  - |
62*8d13bc63SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
63*8d13bc63SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
64*8d13bc63SEmmanuel Vadot    #include <dt-bindings/soc/ti,sci_pm_domain.h>
65*8d13bc63SEmmanuel Vadot
66*8d13bc63SEmmanuel Vadot    gpu@fd00000 {
67*8d13bc63SEmmanuel Vadot        compatible = "ti,am62-gpu", "img,img-axe";
68*8d13bc63SEmmanuel Vadot        reg = <0x0fd00000 0x20000>;
69*8d13bc63SEmmanuel Vadot        clocks = <&k3_clks 187 0>;
70*8d13bc63SEmmanuel Vadot        clock-names = "core";
71*8d13bc63SEmmanuel Vadot        interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
72*8d13bc63SEmmanuel Vadot        power-domains = <&k3_pds 187 TI_SCI_PD_EXCLUSIVE>;
73*8d13bc63SEmmanuel Vadot    };
74