1# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/arm/bcm/raspberrypi,bcm2835-firmware.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Raspberry Pi VideoCore firmware driver
8
9maintainers:
10  - Eric Anholt <eric@anholt.net>
11  - Stefan Wahren <wahrenst@gmx.net>
12
13select:
14  properties:
15    compatible:
16      contains:
17        const: raspberrypi,bcm2835-firmware
18
19  required:
20    - compatible
21
22properties:
23  compatible:
24    items:
25      - const: raspberrypi,bcm2835-firmware
26      - const: simple-mfd
27
28  mboxes:
29    $ref: '/schemas/types.yaml#/definitions/phandle'
30    description: |
31      Phandle to the firmware device's Mailbox.
32      (See: ../mailbox/mailbox.txt for more information)
33
34  clocks:
35    type: object
36
37    properties:
38      compatible:
39        const: raspberrypi,firmware-clocks
40
41      "#clock-cells":
42        const: 1
43        description: >
44          The argument is the ID of the clocks contained by the
45          firmware messages.
46
47    required:
48      - compatible
49      - "#clock-cells"
50
51  reset:
52    type: object
53
54    properties:
55      compatible:
56        const: raspberrypi,firmware-reset
57
58      "#reset-cells":
59        const: 1
60        description: >
61          The argument is the ID of the firmware reset line to affect.
62
63    required:
64      - compatible
65      - "#reset-cells"
66
67    additionalProperties: false
68
69required:
70  - compatible
71  - mboxes
72
73additionalProperties: false
74
75examples:
76  - |
77    firmware {
78        compatible = "raspberrypi,bcm2835-firmware", "simple-mfd";
79        mboxes = <&mailbox>;
80
81        firmware_clocks: clocks {
82            compatible = "raspberrypi,firmware-clocks";
83            #clock-cells = <1>;
84        };
85
86        reset: reset {
87            compatible = "raspberrypi,firmware-reset";
88            #reset-cells = <1>;
89        };
90    };
91...
92