xref: /linux/Documentation/devicetree/bindings/clock/brcm,bcm2835-cprman.yaml (revision 8d2b0853add1d7534dc0794e3c8e0b9e8c4ec640)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/clock/brcm,bcm2835-cprman.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Broadcom BCM2835 CPRMAN clocks
8
9maintainers:
10  - Stefan Wahren <wahrenst@gmx.net>
11  - Raspberry Pi Kernel Maintenance <kernel-list@raspberrypi.com>
12
13description:
14  The CPRMAN clock controller generates clocks in the audio power domain of the
15  BCM2835.  There is a level of PLLs deriving from an external oscillator, a
16  level of PLL dividers that produce channels off of the few PLLs, and a level
17  of mostly-generic clock generators sourcing from the PLL channels.  Most other
18  hardware components source from the clock generators, but a few (like the ARM
19  or HDMI) will source from the PLL dividers directly.
20
21properties:
22  compatible:
23    enum:
24      - brcm,bcm2711-cprman
25      - brcm,bcm2835-cprman
26
27  reg:
28    maxItems: 1
29
30  '#clock-cells':
31    const: 1
32
33  clocks:
34    minItems: 1
35    items:
36      - description: External oscillator clock.
37      - description: DSI0 byte clock.
38      - description: DSI0 DDR2 clock.
39      - description: DSI0 DDR clock.
40      - description: DSI1 byte clock.
41      - description: DSI1 DDR2 clock.
42      - description: DSI1 DDR clock.
43
44additionalProperties: false
45
46required:
47  - compatible
48  - '#clock-cells'
49  - reg
50  - clocks
51
52examples:
53  - |
54    clock-controller@7e101000 {
55        compatible = "brcm,bcm2835-cprman";
56        reg = <0x7e101000 0x2000>;
57        #clock-cells = <1>;
58        clocks = <&clk_osc>;
59    };
60