[PATCH 03/10] dt-bindings: clock: add Ambarella CV75 RCT clock controller
Long Zhao <[email protected]> Thu, 30 Jul 2026 18:43:23 +0800
| Newsgroups | dev.linux.lists.soc,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-clk,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-gpio,org.kernel.vger.linux-kernel,org.kernel.vger.linux-serial |
|---|---|
| Message-ID | <[email protected]> |
Add the CV75 RCT clock controller binding and clock ID header. Signed-off-by: Long Zhao <[email protected]> --- .../bindings/clock/ambarella,cv75-rct.yaml | 94 +++++++++++++++++++ .../dt-bindings/clock/ambarella,cv75-clock.h | 17 ++++ 2 files changed, 111 insertions(+) create mode 100644 Documentation/devicetree/bindings/clock/ambarella,cv75-= rct.yaml create mode 100644 include/dt-bindings/clock/ambarella,cv75-clock.h diff --git a/Documentation/devicetree/bindings/clock/ambarella,cv75-rct.yam= l b/Documentation/devicetree/bindings/clock/ambarella,cv75-rct.yaml new file mode 100644 index 000000000000..5ff5b6a4a0b9 --- /dev/null +++ b/Documentation/devicetree/bindings/clock/ambarella,cv75-rct.yaml @@ -0,0 +1,94 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/clock/ambarella,cv75-rct.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Ambarella CV75 RCT Clock Controller + +maintainers: + - Long Zhao <[email protected]> + +description: | + The RCT (Reset and Clock Tree) block on the Ambarella CV75 SoC provides + PLLs, clock muxes and dividers for on-chip peripherals. + + The same register region is also exposed as a syscon for other drivers + (e.g. pin drive-strength), hence the "syscon" compatible. + + Clock indices are defined in + include/dt-bindings/clock/ambarella,cv75-clock.h: + + - CV75_GCLK_UART0: UART0 mux/div clock + - CV75_GCLK_CORE: Core PLL (gclk_core) + - CV75_GCLK_AHB: AHB bus clock (core / 2) + - CV75_GCLK_APB: APB bus clock (core / 4) + +allOf: + - $ref: /schemas/mfd/syscon-common.yaml# + +properties: + $nodename: + pattern: "^clock-controller(@.*)?$" + + compatible: + items: + - const: ambarella,cv75-rct + - const: syscon + + reg: + maxItems: 1 + + clocks: + description: Reference crystal oscillator (typically 24 MHz) + maxItems: 1 + + clock-names: + const: osc + + "#clock-cells": + const: 1 + + assigned-clocks: true + + assigned-clock-parents: true + + assigned-clock-rates: true + +required: + - compatible + - reg + - clocks + - clock-names + - "#clock-cells" + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/clock/ambarella,cv75-clock.h> + + / { + compatible =3D "ambarella,cv75-evk", "ambarella,cv75"; + #address-cells =3D <2>; + #size-cells =3D <2>; + + osc: oscillator { + compatible =3D "fixed-clock"; + #clock-cells =3D <0>; + clock-output-names =3D "osc"; + clock-frequency =3D <24000000>; + }; + + rct: clock-controller@ed080000 { + compatible =3D "ambarella,cv75-rct", "syscon"; + reg =3D <0xff 0xed080000 0x0 0x1000>; + clocks =3D <&osc>; + clock-names =3D "osc"; + #clock-cells =3D <1>; + + assigned-clocks =3D <&rct CV75_GCLK_UART0>; + assigned-clock-parents =3D <&osc>; + assigned-clock-rates =3D <24000000>; + }; + }; diff --git a/include/dt-bindings/clock/ambarella,cv75-clock.h b/include/dt-= bindings/clock/ambarella,cv75-clock.h new file mode 100644 index 000000000000..3d3314446e75 --- /dev/null +++ b/include/dt-bindings/clock/ambarella,cv75-clock.h @@ -0,0 +1,17 @@ +/* SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause */ +/* + * Copyright (C) 2026 Ambarella, Inc. + */ + +#ifndef _DT_BINDINGS_CLOCK_AMBARELLA_CV75_CLOCK_H +#define _DT_BINDINGS_CLOCK_AMBARELLA_CV75_CLOCK_H + +/* Boot / bus clocks */ +#define CV75_GCLK_UART0 0 +#define CV75_GCLK_CORE 1 +#define CV75_GCLK_AHB 2 +#define CV75_GCLK_APB 3 + +#define CV75_CLK_NUM 4 + +#endif -- 2.34.1 NOTE: This email (including attachments) contain Ambarella Proprietary and/= or Confidential Information and is intended solely for the use of the indiv= idual(s) to whom it is addressed. Any unauthorized review, use, disclosure,= distribute, copy, or print is prohibited. If you are not an intended recip= ient, please contact the sender by reply email and destroy all copies of th= e original message. Thank you.