xref: /freebsd/sys/contrib/device-tree/Bindings/gpu/brcm,bcm-v3d.yaml (revision f7c32ed617858bcd22f8d1b03199099d50125721)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/gpu/brcm,bcm-v3d.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Broadcom V3D GPU Bindings
8
9maintainers:
10  - Eric Anholt <eric@anholt.net>
11  - Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
12
13properties:
14  $nodename:
15    pattern: '^gpu@[a-f0-9]+$'
16
17  compatible:
18    enum:
19      - brcm,7268-v3d
20      - brcm,7278-v3d
21
22  reg:
23    items:
24      - description: hub register (required)
25      - description: core0 register (required)
26      - description: GCA cache controller register (if GCA controller present)
27      - description: bridge register (if no external reset controller)
28    minItems: 2
29
30  reg-names:
31    items:
32      - const: hub
33      - const: core0
34      - enum: [ bridge, gca ]
35      - enum: [ bridge, gca ]
36    minItems: 2
37    maxItems: 4
38
39  interrupts:
40    items:
41      - description: hub interrupt (required)
42      - description: core interrupts (if it doesn't share the hub's interrupt)
43    minItems: 1
44
45  clocks:
46    maxItems: 1
47
48  resets:
49    maxItems: 1
50
51  power-domains:
52    maxItems: 1
53
54required:
55  - compatible
56  - reg
57  - reg-names
58  - interrupts
59
60additionalProperties: false
61
62examples:
63  - |
64    gpu@f1200000 {
65      compatible = "brcm,7268-v3d";
66      reg = <0xf1200000 0x4000>,
67            <0xf1208000 0x4000>,
68            <0xf1204000 0x100>,
69            <0xf1204100 0x100>;
70      reg-names = "hub", "core0", "bridge", "gca";
71      interrupts = <0 78 4>,
72                   <0 77 4>;
73    };
74
75...
76