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... 182