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