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