xref: /freebsd/sys/contrib/device-tree/Bindings/gpu/brcm,bcm-v3d.yaml (revision 3078531de10dcae44b253a35125c949ff4235284)
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
38  interrupts:
39    items:
40      - description: hub interrupt (required)
41      - description: core interrupts (if it doesn't share the hub's interrupt)
42    minItems: 1
43
44  clocks:
45    maxItems: 1
46
47  resets:
48    maxItems: 1
49
50  power-domains:
51    maxItems: 1
52
53required:
54  - compatible
55  - reg
56  - reg-names
57  - interrupts
58
59additionalProperties: false
60
61examples:
62  - |
63    gpu@f1200000 {
64      compatible = "brcm,7268-v3d";
65      reg = <0xf1200000 0x4000>,
66            <0xf1208000 0x4000>,
67            <0xf1204000 0x100>,
68            <0xf1204100 0x100>;
69      reg-names = "hub", "core0", "bridge", "gca";
70      interrupts = <0 78 4>,
71                   <0 77 4>;
72    };
73
74...
75