182 lines
4.2 KiB
YAML
182 lines
4.2 KiB
YAML
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/clock/brcm,kona-ccu.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Broadcom Kona family clock control units (CCU)
|
|
|
|
maintainers:
|
|
- Florian Fainelli <florian.fainelli@broadcom.com>
|
|
- Ray Jui <rjui@broadcom.com>
|
|
- Scott Branden <sbranden@broadcom.com>
|
|
|
|
description: |
|
|
Broadcom "Kona" style clock control unit (CCU) is a clock provider that
|
|
manages a set of clock signals.
|
|
|
|
All available clock IDs are defined in
|
|
- include/dt-bindings/clock/bcm281xx.h for BCM281XX family
|
|
- include/dt-bindings/clock/bcm21664.h for BCM21664 family
|
|
|
|
properties:
|
|
compatible:
|
|
enum:
|
|
- brcm,bcm11351-aon-ccu
|
|
- brcm,bcm11351-hub-ccu
|
|
- brcm,bcm11351-master-ccu
|
|
- brcm,bcm11351-root-ccu
|
|
- brcm,bcm11351-slave-ccu
|
|
- brcm,bcm21664-aon-ccu
|
|
- brcm,bcm21664-master-ccu
|
|
- brcm,bcm21664-root-ccu
|
|
- brcm,bcm21664-slave-ccu
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
'#clock-cells':
|
|
const: 1
|
|
|
|
clock-output-names:
|
|
minItems: 1
|
|
maxItems: 10
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- '#clock-cells'
|
|
- clock-output-names
|
|
|
|
allOf:
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
const: brcm,bcm11351-aon-ccu
|
|
then:
|
|
properties:
|
|
clock-output-names:
|
|
items:
|
|
- const: hub_timer
|
|
- const: pmu_bsc
|
|
- const: pmu_bsc_var
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
const: brcm,bcm11351-hub-ccu
|
|
then:
|
|
properties:
|
|
clock-output-names:
|
|
const: tmon_1m
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
const: brcm,bcm11351-master-ccu
|
|
then:
|
|
properties:
|
|
clock-output-names:
|
|
items:
|
|
- const: sdio1
|
|
- const: sdio2
|
|
- const: sdio3
|
|
- const: sdio4
|
|
- const: usb_ic
|
|
- const: hsic2_48m
|
|
- const: hsic2_12m
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- brcm,bcm11351-root-ccu
|
|
- brcm,bcm21664-root-ccu
|
|
then:
|
|
properties:
|
|
clock-output-names:
|
|
const: frac_1m
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
const: brcm,bcm11351-slave-ccu
|
|
then:
|
|
properties:
|
|
clock-output-names:
|
|
items:
|
|
- const: uartb
|
|
- const: uartb2
|
|
- const: uartb3
|
|
- const: uartb4
|
|
- const: ssp0
|
|
- const: ssp2
|
|
- const: bsc1
|
|
- const: bsc2
|
|
- const: bsc3
|
|
- const: pwm
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
const: brcm,bcm21664-aon-ccu
|
|
then:
|
|
properties:
|
|
clock-output-names:
|
|
const: hub_timer
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
const: brcm,bcm21664-master-ccu
|
|
then:
|
|
properties:
|
|
clock-output-names:
|
|
items:
|
|
- const: sdio1
|
|
- const: sdio2
|
|
- const: sdio3
|
|
- const: sdio4
|
|
- const: sdio1_sleep
|
|
- const: sdio2_sleep
|
|
- const: sdio3_sleep
|
|
- const: sdio4_sleep
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
const: brcm,bcm21664-slave-ccu
|
|
then:
|
|
properties:
|
|
clock-output-names:
|
|
items:
|
|
- const: uartb
|
|
- const: uartb2
|
|
- const: uartb3
|
|
- const: bsc1
|
|
- const: bsc2
|
|
- const: bsc3
|
|
- const: bsc4
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
clock-controller@3e011000 {
|
|
compatible = "brcm,bcm11351-slave-ccu";
|
|
reg = <0x3e011000 0x0f00>;
|
|
#clock-cells = <1>;
|
|
clock-output-names = "uartb",
|
|
"uartb2",
|
|
"uartb3",
|
|
"uartb4",
|
|
"ssp0",
|
|
"ssp2",
|
|
"bsc1",
|
|
"bsc2",
|
|
"bsc3",
|
|
"pwm";
|
|
};
|
|
...
|