File Index
Files and directories
Sign in
FILE

brcm,kona-ccu.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/clock/brcm,kona-ccu.yaml YAML
  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,kona-ccu.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Broadcom Kona family clock control units (CCU)
  8
  9maintainers:
 10  - Florian Fainelli <florian.fainelli@broadcom.com>
 11  - Ray Jui <rjui@broadcom.com>
 12  - Scott Branden <sbranden@broadcom.com>
 13
 14description: |
 15  Broadcom "Kona" style clock control unit (CCU) is a clock provider that
 16  manages a set of clock signals.
 17
 18  All available clock IDs are defined in
 19  - include/dt-bindings/clock/bcm281xx.h for BCM281XX family
 20  - include/dt-bindings/clock/bcm21664.h for BCM21664 family
 21
 22properties:
 23  compatible:
 24    enum:
 25      - brcm,bcm11351-aon-ccu
 26      - brcm,bcm11351-hub-ccu
 27      - brcm,bcm11351-master-ccu
 28      - brcm,bcm11351-root-ccu
 29      - brcm,bcm11351-slave-ccu
 30      - brcm,bcm21664-aon-ccu
 31      - brcm,bcm21664-master-ccu
 32      - brcm,bcm21664-root-ccu
 33      - brcm,bcm21664-slave-ccu
 34
 35  reg:
 36    maxItems: 1
 37
 38  '#clock-cells':
 39    const: 1
 40
 41  clock-output-names:
 42    minItems: 1
 43    maxItems: 10
 44
 45required:
 46  - compatible
 47  - reg
 48  - '#clock-cells'
 49  - clock-output-names
 50
 51allOf:
 52  - if:
 53      properties:
 54        compatible:
 55          contains:
 56            const: brcm,bcm11351-aon-ccu
 57    then:
 58      properties:
 59        clock-output-names:
 60          items:
 61            - const: hub_timer
 62            - const: pmu_bsc
 63            - const: pmu_bsc_var
 64  - if:
 65      properties:
 66        compatible:
 67          contains:
 68            const: brcm,bcm11351-hub-ccu
 69    then:
 70      properties:
 71        clock-output-names:
 72          const: tmon_1m
 73  - if:
 74      properties:
 75        compatible:
 76          contains:
 77            const: brcm,bcm11351-master-ccu
 78    then:
 79      properties:
 80        clock-output-names:
 81          items:
 82            - const: sdio1
 83            - const: sdio2
 84            - const: sdio3
 85            - const: sdio4
 86            - const: usb_ic
 87            - const: hsic2_48m
 88            - const: hsic2_12m
 89  - if:
 90      properties:
 91        compatible:
 92          contains:
 93            enum:
 94              - brcm,bcm11351-root-ccu
 95              - brcm,bcm21664-root-ccu
 96    then:
 97      properties:
 98        clock-output-names:
 99          const: frac_1m
100  - if:
101      properties:
102        compatible:
103          contains:
104            const: brcm,bcm11351-slave-ccu
105    then:
106      properties:
107        clock-output-names:
108          items:
109            - const: uartb
110            - const: uartb2
111            - const: uartb3
112            - const: uartb4
113            - const: ssp0
114            - const: ssp2
115            - const: bsc1
116            - const: bsc2
117            - const: bsc3
118            - const: pwm
119  - if:
120      properties:
121        compatible:
122          contains:
123            const: brcm,bcm21664-aon-ccu
124    then:
125      properties:
126        clock-output-names:
127          const: hub_timer
128  - if:
129      properties:
130        compatible:
131          contains:
132            const: brcm,bcm21664-master-ccu
133    then:
134      properties:
135        clock-output-names:
136          items:
137            - const: sdio1
138            - const: sdio2
139            - const: sdio3
140            - const: sdio4
141            - const: sdio1_sleep
142            - const: sdio2_sleep
143            - const: sdio3_sleep
144            - const: sdio4_sleep
145  - if:
146      properties:
147        compatible:
148          contains:
149            const: brcm,bcm21664-slave-ccu
150    then:
151      properties:
152        clock-output-names:
153          items:
154            - const: uartb
155            - const: uartb2
156            - const: uartb3
157            - const: bsc1
158            - const: bsc2
159            - const: bsc3
160            - const: bsc4
161
162additionalProperties: false
163
164examples:
165  - |
166    clock-controller@3e011000 {
167      compatible = "brcm,bcm11351-slave-ccu";
168      reg = <0x3e011000 0x0f00>;
169      #clock-cells = <1>;
170      clock-output-names = "uartb",
171                           "uartb2",
172                           "uartb3",
173                           "uartb4",
174                           "ssp0",
175                           "ssp2",
176                           "bsc1",
177                           "bsc2",
178                           "bsc3",
179                           "pwm";
180    };
181...
~/ Read-only file preview.