1520d0abeSNicolas Saenz Julienne# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2520d0abeSNicolas Saenz Julienne%YAML 1.2
3520d0abeSNicolas Saenz Julienne---
4d07ae900SKrzysztof Kozlowski$id: http://devicetree.org/schemas/soc/bcm/brcm,bcm2835-pm.yaml#
5d07ae900SKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml#
6520d0abeSNicolas Saenz Julienne
7520d0abeSNicolas Saenz Juliennetitle: BCM2835 PM (Power domains, watchdog)
8520d0abeSNicolas Saenz Julienne
9520d0abeSNicolas Saenz Juliennedescription: |
10520d0abeSNicolas Saenz Julienne  The PM block controls power domains and some reset lines, and includes a
11520d0abeSNicolas Saenz Julienne  watchdog timer.
12520d0abeSNicolas Saenz Julienne
13520d0abeSNicolas Saenz Juliennemaintainers:
14520d0abeSNicolas Saenz Julienne  - Nicolas Saenz Julienne <nsaenz@kernel.org>
15520d0abeSNicolas Saenz Julienne
16520d0abeSNicolas Saenz JulienneallOf:
17*47d8f8b7SKrzysztof Kozlowski  - $ref: /schemas/watchdog/watchdog.yaml#
18520d0abeSNicolas Saenz Julienne
19520d0abeSNicolas Saenz Julienneproperties:
20520d0abeSNicolas Saenz Julienne  compatible:
21520d0abeSNicolas Saenz Julienne    items:
220e445111SStefan Wahren      - enum:
230e445111SStefan Wahren          - brcm,bcm2835-pm
240e445111SStefan Wahren          - brcm,bcm2711-pm
25520d0abeSNicolas Saenz Julienne      - const: brcm,bcm2835-pm-wdt
26520d0abeSNicolas Saenz Julienne
27520d0abeSNicolas Saenz Julienne  reg:
287bc592cfSNicolas Saenz Julienne    minItems: 2
290e445111SStefan Wahren    maxItems: 3
307bc592cfSNicolas Saenz Julienne
317bc592cfSNicolas Saenz Julienne  reg-names:
320e445111SStefan Wahren    minItems: 2
33520d0abeSNicolas Saenz Julienne    items:
347bc592cfSNicolas Saenz Julienne      - const: pm
357bc592cfSNicolas Saenz Julienne      - const: asb
360e445111SStefan Wahren      - const: rpivid_asb
37520d0abeSNicolas Saenz Julienne
38520d0abeSNicolas Saenz Julienne  "#power-domain-cells":
39520d0abeSNicolas Saenz Julienne    const: 1
40520d0abeSNicolas Saenz Julienne
41520d0abeSNicolas Saenz Julienne  "#reset-cells":
42520d0abeSNicolas Saenz Julienne    const: 1
43520d0abeSNicolas Saenz Julienne
44520d0abeSNicolas Saenz Julienne  clocks:
45520d0abeSNicolas Saenz Julienne    minItems: 4
46520d0abeSNicolas Saenz Julienne    maxItems: 4
47520d0abeSNicolas Saenz Julienne
48520d0abeSNicolas Saenz Julienne  clock-names:
49520d0abeSNicolas Saenz Julienne    items:
50520d0abeSNicolas Saenz Julienne      - const: v3d
51520d0abeSNicolas Saenz Julienne      - const: peri_image
52520d0abeSNicolas Saenz Julienne      - const: h264
53520d0abeSNicolas Saenz Julienne      - const: isp
54520d0abeSNicolas Saenz Julienne
55520d0abeSNicolas Saenz Julienne  system-power-controller:
56520d0abeSNicolas Saenz Julienne    type: boolean
57520d0abeSNicolas Saenz Julienne
58520d0abeSNicolas Saenz Julienne  timeout-sec: true
59520d0abeSNicolas Saenz Julienne
60520d0abeSNicolas Saenz Juliennerequired:
61520d0abeSNicolas Saenz Julienne  - compatible
62520d0abeSNicolas Saenz Julienne  - reg
63520d0abeSNicolas Saenz Julienne  - "#power-domain-cells"
64520d0abeSNicolas Saenz Julienne  - "#reset-cells"
65520d0abeSNicolas Saenz Julienne  - clocks
66520d0abeSNicolas Saenz Julienne
67520d0abeSNicolas Saenz JulienneadditionalProperties: false
68520d0abeSNicolas Saenz Julienne
69520d0abeSNicolas Saenz Julienneexamples:
70520d0abeSNicolas Saenz Julienne  - |
71520d0abeSNicolas Saenz Julienne    #include <dt-bindings/clock/bcm2835.h>
72520d0abeSNicolas Saenz Julienne
73520d0abeSNicolas Saenz Julienne    watchdog@7e100000 {
74520d0abeSNicolas Saenz Julienne        compatible = "brcm,bcm2835-pm", "brcm,bcm2835-pm-wdt";
75520d0abeSNicolas Saenz Julienne        #power-domain-cells = <1>;
76520d0abeSNicolas Saenz Julienne        #reset-cells = <1>;
77520d0abeSNicolas Saenz Julienne        reg = <0x7e100000 0x114>,
78520d0abeSNicolas Saenz Julienne              <0x7e00a000 0x24>;
797bc592cfSNicolas Saenz Julienne        reg-names = "pm", "asb";
80520d0abeSNicolas Saenz Julienne        clocks = <&clocks BCM2835_CLOCK_V3D>,
81520d0abeSNicolas Saenz Julienne               <&clocks BCM2835_CLOCK_PERI_IMAGE>,
82520d0abeSNicolas Saenz Julienne               <&clocks BCM2835_CLOCK_H264>,
83520d0abeSNicolas Saenz Julienne               <&clocks BCM2835_CLOCK_ISP>;
84520d0abeSNicolas Saenz Julienne        clock-names = "v3d", "peri_image", "h264", "isp";
85520d0abeSNicolas Saenz Julienne        system-power-controller;
86520d0abeSNicolas Saenz Julienne    };
87