Merge tag 'amd-drm-next-5.9-2020-07-01' of git://people.freedesktop.org/~agd5f/linux...
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / gpu / vivante,gc.yaml
1 # SPDX-License-Identifier: GPL-2.0
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/gpu/vivante,gc.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Vivante GPU Bindings
8
9 description: Vivante GPU core devices
10
11 maintainers:
12   - Lucas Stach <l.stach@pengutronix.de>
13
14 properties:
15   compatible:
16     const: vivante,gc
17
18   reg:
19     maxItems: 1
20
21   interrupts:
22     maxItems: 1
23
24   clocks:
25     items:
26       - description: AXI/master interface clock
27       - description: GPU core clock
28       - description: Shader clock (only required if GPU has feature PIPE_3D)
29       - description: AHB/slave interface clock (only required if GPU can gate slave interface independently)
30     minItems: 1
31     maxItems: 4
32
33   clock-names:
34     items:
35       enum: [ bus, core, shader, reg ]
36     minItems: 1
37     maxItems: 4
38
39   resets:
40     maxItems: 1
41
42   power-domains:
43     maxItems: 1
44
45 required:
46   - compatible
47   - reg
48   - interrupts
49   - clocks
50   - clock-names
51
52 additionalProperties: false
53
54 examples:
55   - |
56     #include <dt-bindings/clock/imx6qdl-clock.h>
57     #include <dt-bindings/interrupt-controller/arm-gic.h>
58     gpu@130000 {
59       compatible = "vivante,gc";
60       reg = <0x00130000 0x4000>;
61       interrupts = <0 9 IRQ_TYPE_LEVEL_HIGH>;
62       clocks = <&clks IMX6QDL_CLK_GPU3D_AXI>,
63                <&clks IMX6QDL_CLK_GPU3D_CORE>,
64                <&clks IMX6QDL_CLK_GPU3D_SHADER>;
65       clock-names = "bus", "core", "shader";
66       power-domains = <&gpc 1>;
67     };
68
69 ...