| Broadcom Kona Family Clocks |
| |
| This binding is associated with Broadcom SoCs having "Kona" style |
| clock control units (CCUs). A CCU is a clock provider that manages |
| a set of clock signals. Each CCU is represented by a node in the |
| device tree. |
| |
| This binding uses the common clock binding: |
| Documentation/devicetree/bindings/clock/clock-bindings.txt |
| |
| Required properties: |
| - compatible |
| Shall have a value of the form "brcm,<model>-<which>-ccu", |
| where <model> is a Broadcom SoC model number and <which> is |
| the name of a defined CCU. For example: |
| "brcm,bcm11351-root-ccu" |
| The compatible strings used for each supported SoC family |
| are defined below. |
| - reg |
| Shall define the base and range of the address space |
| containing clock control registers |
| - #clock-cells |
| Shall have value <1>. The permitted clock-specifier values |
| are defined below. |
| - clock-output-names |
| Shall be an ordered list of strings defining the names of |
| the clocks provided by the CCU. |
| |
| Device tree example: |
| |
| slave_ccu: slave_ccu { |
| compatible = "brcm,bcm11351-slave-ccu"; |
| reg = <0x3e011000 0x0f00>; |
| #clock-cells = <1>; |
| clock-output-names = "uartb", |
| "uartb2", |
| "uartb3", |
| "uartb4"; |
| }; |
| |
| ref_crystal_clk: ref_crystal { |
| #clock-cells = <0>; |
| compatible = "fixed-clock"; |
| clock-frequency = <26000000>; |
| }; |
| |
| uart@3e002000 { |
| compatible = "brcm,bcm11351-dw-apb-uart", "snps,dw-apb-uart"; |
| status = "disabled"; |
| reg = <0x3e002000 0x1000>; |
| clocks = <&slave_ccu BCM281XX_SLAVE_CCU_UARTB3>; |
| interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; |
| reg-shift = <2>; |
| reg-io-width = <4>; |
| }; |
| |
| BCM281XX family |
| --------------- |
| CCU compatible string values for SoCs in the BCM281XX family are: |
| "brcm,bcm11351-root-ccu" |
| "brcm,bcm11351-aon-ccu" |
| "brcm,bcm11351-hub-ccu" |
| "brcm,bcm11351-master-ccu" |
| "brcm,bcm11351-slave-ccu" |
| |
| The following table defines the set of CCUs and clock specifiers for |
| BCM281XX family clocks. When a clock consumer references a clocks, |
| its symbolic specifier (rather than its numeric index value) should |
| be used. These specifiers are defined in: |
| "include/dt-bindings/clock/bcm281xx.h" |
| |
| CCU Clock Type Index Specifier |
| --- ----- ---- ----- --------- |
| root frac_1m peri 0 BCM281XX_ROOT_CCU_FRAC_1M |
| |
| aon hub_timer peri 0 BCM281XX_AON_CCU_HUB_TIMER |
| aon pmu_bsc peri 1 BCM281XX_AON_CCU_PMU_BSC |
| aon pmu_bsc_var peri 2 BCM281XX_AON_CCU_PMU_BSC_VAR |
| |
| hub tmon_1m peri 0 BCM281XX_HUB_CCU_TMON_1M |
| |
| master sdio1 peri 0 BCM281XX_MASTER_CCU_SDIO1 |
| master sdio2 peri 1 BCM281XX_MASTER_CCU_SDIO2 |
| master sdio3 peri 2 BCM281XX_MASTER_CCU_SDIO3 |
| master sdio4 peri 3 BCM281XX_MASTER_CCU_SDIO4 |
| master dmac peri 4 BCM281XX_MASTER_CCU_DMAC |
| master usb_ic peri 5 BCM281XX_MASTER_CCU_USB_IC |
| master hsic2_48m peri 6 BCM281XX_MASTER_CCU_HSIC_48M |
| master hsic2_12m peri 7 BCM281XX_MASTER_CCU_HSIC_12M |
| |
| slave uartb peri 0 BCM281XX_SLAVE_CCU_UARTB |
| slave uartb2 peri 1 BCM281XX_SLAVE_CCU_UARTB2 |
| slave uartb3 peri 2 BCM281XX_SLAVE_CCU_UARTB3 |
| slave uartb4 peri 3 BCM281XX_SLAVE_CCU_UARTB4 |
| slave ssp0 peri 4 BCM281XX_SLAVE_CCU_SSP0 |
| slave ssp2 peri 5 BCM281XX_SLAVE_CCU_SSP2 |
| slave bsc1 peri 6 BCM281XX_SLAVE_CCU_BSC1 |
| slave bsc2 peri 7 BCM281XX_SLAVE_CCU_BSC2 |
| slave bsc3 peri 8 BCM281XX_SLAVE_CCU_BSC3 |
| slave pwm peri 9 BCM281XX_SLAVE_CCU_PWM |
| |
| |
| BCM21664 family |
| --------------- |
| CCU compatible string values for SoCs in the BCM21664 family are: |
| "brcm,bcm21664-root-ccu" |
| "brcm,bcm21664-aon-ccu" |
| "brcm,bcm21664-master-ccu" |
| "brcm,bcm21664-slave-ccu" |
| |
| The following table defines the set of CCUs and clock specifiers for |
| BCM21664 family clocks. When a clock consumer references a clocks, |
| its symbolic specifier (rather than its numeric index value) should |
| be used. These specifiers are defined in: |
| "include/dt-bindings/clock/bcm21664.h" |
| |
| CCU Clock Type Index Specifier |
| --- ----- ---- ----- --------- |
| root frac_1m peri 0 BCM21664_ROOT_CCU_FRAC_1M |
| |
| aon hub_timer peri 0 BCM21664_AON_CCU_HUB_TIMER |
| |
| master sdio1 peri 0 BCM21664_MASTER_CCU_SDIO1 |
| master sdio2 peri 1 BCM21664_MASTER_CCU_SDIO2 |
| master sdio3 peri 2 BCM21664_MASTER_CCU_SDIO3 |
| master sdio4 peri 3 BCM21664_MASTER_CCU_SDIO4 |
| master sdio1_sleep peri 4 BCM21664_MASTER_CCU_SDIO1_SLEEP |
| master sdio2_sleep peri 5 BCM21664_MASTER_CCU_SDIO2_SLEEP |
| master sdio3_sleep peri 6 BCM21664_MASTER_CCU_SDIO3_SLEEP |
| master sdio4_sleep peri 7 BCM21664_MASTER_CCU_SDIO4_SLEEP |
| |
| slave uartb peri 0 BCM21664_SLAVE_CCU_UARTB |
| slave uartb2 peri 1 BCM21664_SLAVE_CCU_UARTB2 |
| slave uartb3 peri 2 BCM21664_SLAVE_CCU_UARTB3 |
| slave uartb4 peri 3 BCM21664_SLAVE_CCU_UARTB4 |
| slave bsc1 peri 4 BCM21664_SLAVE_CCU_BSC1 |
| slave bsc2 peri 5 BCM21664_SLAVE_CCU_BSC2 |
| slave bsc3 peri 6 BCM21664_SLAVE_CCU_BSC3 |
| slave bsc4 peri 7 BCM21664_SLAVE_CCU_BSC4 |