[PATCH v3 2/4] dt-bindings: clock: sun55i-a523-ccu: Add A523 CPU CCU clock controller
Krzysztof Kozlowski
krzk at kernel.org
Tue Sep 29 01:42:29 PDT 2026
On Sat, Sep 26, 2026 at 12:51:10AM +0200, Andre Przywara wrote:
> There are four clock controllers in the A523 SoC, but only three are
> described in the DT binding so far.
>
> Add a description for the CPU CCU, which provides separate clocks for
> the two CPU clusters and the DSU interconnect.
>
> Signed-off-by: Andre Przywara <andre.przywara at arm.com>
> ---
> .../clock/allwinner,sun55i-a523-ccu.yaml | 38 ++++++++++++++++++-
> .../dt-bindings/clock/sun55i-a523-cpu-ccu.h | 13 +++++++
> 2 files changed, 50 insertions(+), 1 deletion(-)
> create mode 100644 include/dt-bindings/clock/sun55i-a523-cpu-ccu.h
>
> diff --git a/Documentation/devicetree/bindings/clock/allwinner,sun55i-a523-ccu.yaml b/Documentation/devicetree/bindings/clock/allwinner,sun55i-a523-ccu.yaml
> index 58be701a720ea..8d5481fb63ae8 100644
> --- a/Documentation/devicetree/bindings/clock/allwinner,sun55i-a523-ccu.yaml
> +++ b/Documentation/devicetree/bindings/clock/allwinner,sun55i-a523-ccu.yaml
> @@ -19,6 +19,7 @@ properties:
> compatible:
> enum:
> - allwinner,sun55i-a523-ccu
> + - allwinner,sun55i-a523-cpu-ccu
> - allwinner,sun55i-a523-mcu-ccu
> - allwinner,sun55i-a523-r-ccu
>
> @@ -35,12 +36,23 @@ properties:
>
> required:
> - "#clock-cells"
> - - "#reset-cells"
> - compatible
> - reg
> - clocks
> - clock-names
>
> +if:
This goes to the allOf block.
> + properties:
> + compatible:
> + contains:
> + const: allwinner,sun55i-a523-cpu-ccu
> +then:
> + properties:
> + "#reset-cells": false
> +else:
> + required:
> + - "#reset-cells"
> +
> allOf:
> - if:
> properties:
> @@ -64,6 +76,30 @@ allOf:
> - const: iosc
> - const: losc-fanout
>
> + - if:
> + properties:
> + compatible:
> + enum:
> + - allwinner,sun55i-a523-cpu-ccu
> +
> + then:
> + properties:
> + clocks:
> + items:
> + - description: High Frequency Oscillator (usually at 24MHz)
> + - description: Low Frequency Oscillator (usually at 32kHz)
> + - description: Internal Oscillator
> + - description: Peripherals PLL 0 (1200 MHz output)
> + - description: Peripherals PLL 0 (600 MHz output)
> +
> + clock-names:
> + items:
> + - const: hosc
> + - const: losc
> + - const: iosc
> + - const: pll-periph0-2x
> + - const: pll-periph0-600m
> +
> - if:
> properties:
> compatible:
> diff --git a/include/dt-bindings/clock/sun55i-a523-cpu-ccu.h b/include/dt-bindings/clock/sun55i-a523-cpu-ccu.h
> new file mode 100644
> index 0000000000000..042f2310f64de
> --- /dev/null
> +++ b/include/dt-bindings/clock/sun55i-a523-cpu-ccu.h
Filename should match compatible.
> @@ -0,0 +1,13 @@
> +/* SPDX-License-Identifier: (GPL-2.0-only OR MIT) */
> +/*
> + * Copyright 2025 Arm Ltd.
> + */
> +
> +#ifndef _DT_BINDINGS_CLK_SUN55I_A523_CPU_CCU_H_
> +#define _DT_BINDINGS_CLK_SUN55I_A523_CPU_CCU_H_
> +
> +#define CLK_CPU_L 7
Indices start from 0 or 1
Best regards,
Krzysztof
More information about the linux-arm-kernel
mailing list