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