dt-bindings: clock: Add Amlogic A9 AO clock controller

Add the Always-On clock controller dt-bindings for the Amlogic A9
SoC family.

Acked-by: Conor Dooley <conor.dooley@microchip.com>
Signed-off-by: Jian Hu <jian.hu@amlogic.com>
Link: https://patch.msgid.link/20260623-a9_aoclk-v5-1-c7cb1ff9ebf1@amlogic.com
Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
This commit is contained in:
Jian Hu 2026-06-23 10:55:33 +08:00 committed by Jerome Brunet
parent 628b6fee9f
commit d425596035
2 changed files with 152 additions and 0 deletions

View File

@ -0,0 +1,76 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
# Copyright (C) 2026 Amlogic, Inc. All rights reserved
%YAML 1.2
---
$id: http://devicetree.org/schemas/clock/amlogic,a9-aoclkc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Amlogic A9 Series Always-On Clock Controller
maintainers:
- Neil Armstrong <neil.armstrong@linaro.org>
- Jerome Brunet <jbrunet@baylibre.com>
- Jian Hu <jian.hu@amlogic.com>
- Xianwei Zhao <xianwei.zhao@amlogic.com>
properties:
compatible:
const: amlogic,a9-aoclkc
reg:
maxItems: 1
'#clock-cells':
const: 1
clocks:
minItems: 5
items:
- description: input oscillator
- description: input fclk div 3
- description: input fclk div 4
- description: input fclk div 5
- description: input sys clk
- description: external fixed 32k (optional)
clock-names:
minItems: 5
items:
- const: xtal
- const: fdiv3
- const: fdiv4
- const: fdiv5
- const: sys
- const: ext_32k
required:
- compatible
- reg
- '#clock-cells'
- clocks
- clock-names
additionalProperties: false
examples:
- |
soc {
#address-cells = <2>;
#size-cells = <2>;
clock-controller@0 {
compatible = "amlogic,a9-aoclkc";
reg = <0x0 0x0 0x0 0x58>;
#clock-cells = <1>;
clocks = <&xtal>,
<&scmi_clk 14>,
<&scmi_clk 16>,
<&scmi_clk 18>,
<&scmi_clk 21>;
clock-names = "xtal",
"fdiv3",
"fdiv4",
"fdiv5",
"sys";
};
};

View File

@ -0,0 +1,76 @@
/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
/*
* Copyright (C) 2026 Amlogic, Inc. All rights reserved.
*/
#ifndef __AMLOGIC_A9_AO_CLKC_H
#define __AMLOGIC_A9_AO_CLKC_H
#define CLKID_AO_XTAL_IN 0
#define CLKID_AO_XTAL 1
#define CLKID_AO_SYS 2
#define CLKID_AO_SYS_I3C 3
#define CLKID_AO_SYS_RTC_REG 4
#define CLKID_AO_SYS_CLKTREE 5
#define CLKID_AO_SYS_RST_CTRL 6
#define CLKID_AO_SYS_PAD 7
#define CLKID_AO_SYS_RTC_DIG 8
#define CLKID_AO_SYS_IRQ 9
#define CLKID_AO_SYS_PWRCTRL 10
#define CLKID_AO_SYS_PWM_A 11
#define CLKID_AO_SYS_PWM_B 12
#define CLKID_AO_SYS_PWM_C 13
#define CLKID_AO_SYS_PWM_D 14
#define CLKID_AO_SYS_PWM_E 15
#define CLKID_AO_SYS_PWM_F 16
#define CLKID_AO_SYS_PWM_G 17
#define CLKID_AO_SYS_I2C_A 18
#define CLKID_AO_SYS_I2C_B 19
#define CLKID_AO_SYS_I2C_C 20
#define CLKID_AO_SYS_I2C_D 21
#define CLKID_AO_SYS_SED 22
#define CLKID_AO_SYS_IR_CTRL 23
#define CLKID_AO_SYS_UART_B 24
#define CLKID_AO_SYS_UART_C 25
#define CLKID_AO_SYS_UART_D 26
#define CLKID_AO_SYS_UART_E 27
#define CLKID_AO_SYS_SPISG_0 28
#define CLKID_AO_SYS_RTC_SECURE 29
#define CLKID_AO_SYS_CEC 30
#define CLKID_AO_SYS_AOCPU 31
#define CLKID_AO_SYS_SRAM 32
#define CLKID_AO_SYS_SPISG_1 33
#define CLKID_AO_SYS_SPISG_2 34
#define CLKID_AO_PWM_A_SEL 35
#define CLKID_AO_PWM_A_DIV 36
#define CLKID_AO_PWM_A 37
#define CLKID_AO_PWM_B_SEL 38
#define CLKID_AO_PWM_B_DIV 39
#define CLKID_AO_PWM_B 40
#define CLKID_AO_PWM_C_SEL 41
#define CLKID_AO_PWM_C_DIV 42
#define CLKID_AO_PWM_C 43
#define CLKID_AO_PWM_D_SEL 44
#define CLKID_AO_PWM_D_DIV 45
#define CLKID_AO_PWM_D 46
#define CLKID_AO_PWM_E_SEL 47
#define CLKID_AO_PWM_E_DIV 48
#define CLKID_AO_PWM_E 49
#define CLKID_AO_PWM_F_SEL 50
#define CLKID_AO_PWM_F_DIV 51
#define CLKID_AO_PWM_F 52
#define CLKID_AO_PWM_G_SEL 53
#define CLKID_AO_PWM_G_DIV 54
#define CLKID_AO_PWM_G 55
#define CLKID_AO_RTC_DUALDIV_IN 56
#define CLKID_AO_RTC_DUALDIV_DIV 57
#define CLKID_AO_RTC_DUALDIV_SEL 58
#define CLKID_AO_RTC_DUALDIV 59
#define CLKID_AO_RTC 60
#define CLKID_AO_CEC_DUALDIV_IN 61
#define CLKID_AO_CEC_DUALDIV_DIV 62
#define CLKID_AO_CEC_DUALDIV_SEL 63
#define CLKID_AO_CEC_DUALDIV 64
#define CLKID_AO_CEC 65
#endif /* __AMLOGIC_A9_AO_CLKC_H */