Zephyr API Documentation 4.4.0-rc1
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
focaltech_ft9001_clocks.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2025, FocalTech Systems CO.,Ltd
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
7#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_CLOCK_FOCALTECH_FT9001_CLOCKS_H_
8#define ZEPHYR_INCLUDE_DT_BINDINGS_CLOCK_FOCALTECH_FT9001_CLOCKS_H_
9
15
48
50
51#define FOCALTECH_CLOCK_SHIFT 6U
52#define FOCALTECH_CLOCK_MASK ((1U << FOCALTECH_CLOCK_SHIFT) - 1U)
53
54#define FOCALTECH_CLOCK_CONFIG(reg, bit) \
55 (((FOCALTECH_##reg##_OFFSET) << FOCALTECH_CLOCK_SHIFT) | ((bit) & FOCALTECH_CLOCK_MASK))
56
59#define FOCALTECH_MULTICGCR_OFFSET 0x3CU
60#define FOCALTECH_SYSCGCR_OFFSET 0x40U
61#define FOCALTECH_AHB3CGCR_OFFSET 0x44U
62#define FOCALTECH_ARITHCGCR_OFFSET 0x48U
63#define FOCALTECH_IPSCGCR_OFFSET 0x4CU
64#define FOCALTECH_EPORTCGCR_OFFSET 0x84U
66
71#define FOCALTECH_CLOCK_OTP_AHB FOCALTECH_CLOCK_CONFIG(MULTICGCR, 0U)
72#define FOCALTECH_CLOCK_MCC FOCALTECH_CLOCK_CONFIG(MULTICGCR, 1U)
73#define FOCALTECH_CLOCK_MCCADR FOCALTECH_CLOCK_CONFIG(MULTICGCR, 2U)
74#define FOCALTECH_CLOCK_ADC FOCALTECH_CLOCK_CONFIG(MULTICGCR, 3U)
75#define FOCALTECH_CLOCK_MESH FOCALTECH_CLOCK_CONFIG(MULTICGCR, 4U)
76#define FOCALTECH_CLOCK_TC FOCALTECH_CLOCK_CONFIG(MULTICGCR, 5U)
77#define FOCALTECH_CLOCK_CLKOUT FOCALTECH_CLOCK_CONFIG(MULTICGCR, 6U)
78#define FOCALTECH_CLOCK_KEY_CTRL FOCALTECH_CLOCK_CONFIG(MULTICGCR, 7U)
79#define FOCALTECH_CLOCK_CCM_RESET FOCALTECH_CLOCK_CONFIG(MULTICGCR, 8U)
80#define FOCALTECH_CLOCK_OTP_IPS FOCALTECH_CLOCK_CONFIG(MULTICGCR, 9U)
81#define FOCALTECH_CLOCK_CPM_IPS FOCALTECH_CLOCK_CONFIG(MULTICGCR, 10U)
82#define FOCALTECH_CLOCK_TRACE FOCALTECH_CLOCK_CONFIG(MULTICGCR, 11U)
83#define FOCALTECH_CLOCK_I2S_M FOCALTECH_CLOCK_CONFIG(MULTICGCR, 12U)
84#define FOCALTECH_CLOCK_I2S_S FOCALTECH_CLOCK_CONFIG(MULTICGCR, 13U)
85#define FOCALTECH_CLOCK_CRC0 FOCALTECH_CLOCK_CONFIG(MULTICGCR, 14U)
86#define FOCALTECH_CLOCK_CRC1 FOCALTECH_CLOCK_CONFIG(MULTICGCR, 15U)
88
93#define FOCALTECH_CLOCK_SSISLV1 FOCALTECH_CLOCK_CONFIG(SYSCGCR, 0U)
94#define FOCALTECH_CLOCK_DMAC1 FOCALTECH_CLOCK_CONFIG(SYSCGCR, 1U)
95#define FOCALTECH_CLOCK_DMAC2 FOCALTECH_CLOCK_CONFIG(SYSCGCR, 2U)
96#define FOCALTECH_CLOCK_AHB2_MUX FOCALTECH_CLOCK_CONFIG(SYSCGCR, 3U)
97#define FOCALTECH_CLOCK_PXLP1_AHB FOCALTECH_CLOCK_CONFIG(SYSCGCR, 10U)
98#define FOCALTECH_CLOCK_PXLP2_AHB FOCALTECH_CLOCK_CONFIG(SYSCGCR, 11U)
99#define FOCALTECH_CLOCK_SRAMD FOCALTECH_CLOCK_CONFIG(SYSCGCR, 12U)
100#define FOCALTECH_CLOCK_SRAM0 FOCALTECH_CLOCK_CONFIG(SYSCGCR, 13U)
101#define FOCALTECH_CLOCK_SRAM1 FOCALTECH_CLOCK_CONFIG(SYSCGCR, 14U)
102#define FOCALTECH_CLOCK_SRAM2 FOCALTECH_CLOCK_CONFIG(SYSCGCR, 15U)
103#define FOCALTECH_CLOCK_SRAM3_4 FOCALTECH_CLOCK_CONFIG(SYSCGCR, 16U)
104#define FOCALTECH_CLOCK_SSI4 FOCALTECH_CLOCK_CONFIG(SYSCGCR, 17U)
105#define FOCALTECH_CLOCK_SSI5 FOCALTECH_CLOCK_CONFIG(SYSCGCR, 18U)
106#define FOCALTECH_CLOCK_SSI6 FOCALTECH_CLOCK_CONFIG(SYSCGCR, 19U)
108
113#define FOCALTECH_CLOCK_ROM FOCALTECH_CLOCK_CONFIG(AHB3CGCR, 0U)
114#define FOCALTECH_CLOCK_ROM_OTP_MUX FOCALTECH_CLOCK_CONFIG(AHB3CGCR, 1U)
115#define FOCALTECH_CLOCK_AHB3_MUX FOCALTECH_CLOCK_CONFIG(AHB3CGCR, 2U)
116#define FOCALTECH_CLOCK_USBC FOCALTECH_CLOCK_CONFIG(AHB3CGCR, 3U)
117#define FOCALTECH_CLOCK_PXLP1_APB FOCALTECH_CLOCK_CONFIG(AHB3CGCR, 4U)
118#define FOCALTECH_CLOCK_PXLP2_APB FOCALTECH_CLOCK_CONFIG(AHB3CGCR, 5U)
119#define FOCALTECH_CLOCK_I2S1 FOCALTECH_CLOCK_CONFIG(AHB3CGCR, 6U)
120#define FOCALTECH_CLOCK_I2S2 FOCALTECH_CLOCK_CONFIG(AHB3CGCR, 7U)
122
127#define FOCALTECH_CLOCK_AES FOCALTECH_CLOCK_CONFIG(ARITHCGCR, 1U)
128#define FOCALTECH_CLOCK_SM4 FOCALTECH_CLOCK_CONFIG(ARITHCGCR, 2U)
129#define FOCALTECH_CLOCK_RF_AES_SM4 FOCALTECH_CLOCK_CONFIG(ARITHCGCR, 4U)
130#define FOCALTECH_CLOCK_CRYPTO FOCALTECH_CLOCK_CONFIG(ARITHCGCR, 5U)
131#define FOCALTECH_CLOCK_SHA FOCALTECH_CLOCK_CONFIG(ARITHCGCR, 6U)
132#define FOCALTECH_CLOCK_EDMAC0 FOCALTECH_CLOCK_CONFIG(ARITHCGCR, 7U)
133#define FOCALTECH_CLOCK_DES FOCALTECH_CLOCK_CONFIG(ARITHCGCR, 8U)
134#define FOCALTECH_CLOCK_ZUC FOCALTECH_CLOCK_CONFIG(ARITHCGCR, 9U)
135#define FOCALTECH_CLOCK_AHB2MLB FOCALTECH_CLOCK_CONFIG(ARITHCGCR, 10U)
136#define FOCALTECH_CLOCK_AHB2IPS2 FOCALTECH_CLOCK_CONFIG(ARITHCGCR, 11U)
137#define FOCALTECH_CLOCK_TRNG FOCALTECH_CLOCK_CONFIG(ARITHCGCR, 12U)
139
144#define FOCALTECH_CLOCK_IO_CTRL FOCALTECH_CLOCK_CONFIG(IPSCGCR, 0U)
145#define FOCALTECH_CLOCK_WDT FOCALTECH_CLOCK_CONFIG(IPSCGCR, 1U)
146#define FOCALTECH_CLOCK_RTC FOCALTECH_CLOCK_CONFIG(IPSCGCR, 2U)
147#define FOCALTECH_CLOCK_PIT1 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 3U)
148#define FOCALTECH_CLOCK_PIT2 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 4U)
149#define FOCALTECH_CLOCK_USI1 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 5U)
150#define FOCALTECH_CLOCK_EDMAC1 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 6U)
151#define FOCALTECH_CLOCK_SPI1 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 7U)
152#define FOCALTECH_CLOCK_SPI2 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 8U)
153#define FOCALTECH_CLOCK_SPI3 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 9U)
154#define FOCALTECH_CLOCK_SCI1 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 10U)
155#define FOCALTECH_CLOCK_SCI2 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 11U)
156#define FOCALTECH_CLOCK_USI2 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 12U)
157#define FOCALTECH_CLOCK_CAN1 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 13U)
158#define FOCALTECH_CLOCK_I2C1 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 14U)
159#define FOCALTECH_CLOCK_PWM0 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 15U)
160#define FOCALTECH_CLOCK_I2C2 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 16U)
161#define FOCALTECH_CLOCK_CAN2 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 17U)
162#define FOCALTECH_CLOCK_SCI3 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 18U)
163#define FOCALTECH_CLOCK_QADC FOCALTECH_CLOCK_CONFIG(IPSCGCR, 20U)
164#define FOCALTECH_CLOCK_DAC FOCALTECH_CLOCK_CONFIG(IPSCGCR, 21U)
165#define FOCALTECH_CLOCK_MCC_IPS FOCALTECH_CLOCK_CONFIG(IPSCGCR, 22U)
166#define FOCALTECH_CLOCK_PWMT1 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 23U)
167#define FOCALTECH_CLOCK_LD FOCALTECH_CLOCK_CONFIG(IPSCGCR, 24U)
168#define FOCALTECH_CLOCK_PWMT2 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 25U)
169#define FOCALTECH_CLOCK_PGD FOCALTECH_CLOCK_CONFIG(IPSCGCR, 26U)
170#define FOCALTECH_CLOCK_SEC_DET FOCALTECH_CLOCK_CONFIG(IPSCGCR, 27U)
171#define FOCALTECH_CLOCK_PCI FOCALTECH_CLOCK_CONFIG(IPSCGCR, 28U)
172#define FOCALTECH_CLOCK_PMURTC FOCALTECH_CLOCK_CONFIG(IPSCGCR, 29U)
173#define FOCALTECH_CLOCK_AHB2IPS FOCALTECH_CLOCK_CONFIG(IPSCGCR, 30U)
174#define FOCALTECH_CLOCK_PWMT3 FOCALTECH_CLOCK_CONFIG(IPSCGCR, 31U)
176
181#define FOCALTECH_CLOCK_EPORT0 FOCALTECH_CLOCK_CONFIG(EPORTCGCR, 0U)
182#define FOCALTECH_CLOCK_EPORT1 FOCALTECH_CLOCK_CONFIG(EPORTCGCR, 1U)
183#define FOCALTECH_CLOCK_EPORT2 FOCALTECH_CLOCK_CONFIG(EPORTCGCR, 2U)
184#define FOCALTECH_CLOCK_EPORT3 FOCALTECH_CLOCK_CONFIG(EPORTCGCR, 3U)
185#define FOCALTECH_CLOCK_EPORT4 FOCALTECH_CLOCK_CONFIG(EPORTCGCR, 4U)
186#define FOCALTECH_CLOCK_EPORT5 FOCALTECH_CLOCK_CONFIG(EPORTCGCR, 5U)
187#define FOCALTECH_CLOCK_EPORT6 FOCALTECH_CLOCK_CONFIG(EPORTCGCR, 6U)
188#define FOCALTECH_CLOCK_EPORT7 FOCALTECH_CLOCK_CONFIG(EPORTCGCR, 7U)
189#define FOCALTECH_CLOCK_ACMP1 FOCALTECH_CLOCK_CONFIG(EPORTCGCR, 8U)
190#define FOCALTECH_CLOCK_ACMP2 FOCALTECH_CLOCK_CONFIG(EPORTCGCR, 9U)
192
194
196
197#endif /* ZEPHYR_INCLUDE_DT_BINDINGS_CLOCK_FOCALTECH_FT9001_CLOCKS_H_ */