HPM SDK
HPMicro Software Development Kit
hpm_clock_drv.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2021-2024 HPMicro
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 #ifndef HPM_CLOCK_DRV_H
8 #define HPM_CLOCK_DRV_H
9 
10 #include "hpm_common.h"
11 #include "hpm_sysctl_drv.h"
12 #include "hpm_csr_drv.h"
13 
21 #define CLOCK_DIV_INVALID (~0UL)
22 
26 enum {
39 };
40 
44 #define CLK_SRC_GROUP_COMMON (0U)
45 #define CLK_SRC_GROUP_ADC (1U)
46 #define CLK_SRC_GROUP_I2S (2U)
47 #define CLK_SRC_GROUP_WDG (3U)
48 #define CLK_SRC_GROUP_PMIC (4U)
49 #define CLK_SRC_GROUP_AHB (5U)
50 #define CLK_SRC_GROUP_AXI0 (6U)
51 #define CLK_SRC_GROUP_AXI1 (7U)
52 #define CLK_SRC_GROUP_AXI2 (8U)
53 #define CLK_SRC_GROUP_CPU0 (9U)
54 #define CLK_SRC_GROUP_CPU1 (10U)
55 #define CLK_SRC_GROUP_SRC (11U)
56 #define CLK_SRC_GROUP_PWDG (12U)
57 #define CLK_SRC_GROUP_INVALID (15U)
58 
59 #define MAKE_CLK_SRC(src_grp, index) (((uint8_t)(src_grp) << 4) | (index))
60 #define GET_CLK_SRC_GROUP(src) (((uint8_t)(src) >> 4) & 0x0FU)
61 #define GET_CLK_SRC_INDEX(src) ((uint8_t)(src)&0x0FU)
62 
63 #define GET_CLOCK_SOURCE_FROM_CLK_SRC(clk_src) (clock_source_t)((uint32_t)(clk_src) & 0xFU)
64 
68 typedef enum _clock_sources {
78 
83 
88 
91 
94 
97 
98 #define RESOURCE_INVALID (0xFFFFU)
99 
100 /* Clock NAME related Macros */
101 #define MAKE_CLOCK_NAME(resource, src_type, node) (((uint32_t)(resource) << 16) | ((uint32_t)(src_type) << 8) | ((uint32_t)node))
102 #define GET_CLK_SRC_GROUP_FROM_NAME(name) (((uint32_t)(name) >> 8) & 0xFFUL)
103 #define GET_CLK_NODE_FROM_NAME(name) ((uint32_t)(name)&0xFFUL)
104 #define GET_CLK_RESOURCE_FROM_NAME(name) ((uint32_t)(name) >> 16)
105 
109 typedef enum _clock_name {
164 
204 
205  /* For ADC, there are 2-stage clock source and divider configuration */
213 
214  /* For I2S, there are 2-stage clock source and divider configuration */
222 
223  /* Clock sources */
232 
233  /* Legacy name, kept for backwards compatibility */
236 
237 #ifdef __cplusplus
238 extern "C"
239 {
240 #endif
241 
248 uint32_t clock_get_frequency(clock_name_t clock_name);
249 
256 
264 
271 uint32_t clock_get_divider(clock_name_t clock_name);
272 
283 
294 
304 
322 hpm_stat_t clock_set_source_divider(clock_name_t clock_name, clk_src_t src, uint32_t div);
323 
336 
341 void clock_enable(clock_name_t clock_name);
342 
347 void clock_disable(clock_name_t clock_name);
348 
354 void clock_add_to_group(clock_name_t clock_name, uint32_t group);
355 
361 void clock_remove_from_group(clock_name_t clock_name, uint32_t group);
362 
369 bool clock_check_in_group(clock_name_t clock_name, uint32_t group);
370 
376 void clock_connect_group_to_cpu(uint32_t group, uint32_t cpu);
377 
383 void clock_disconnect_group_from_cpu(uint32_t group, uint32_t cpu);
384 
390 uint32_t clock_get_core_clock_ticks_per_us(void);
391 
397 uint32_t clock_get_core_clock_ticks_per_ms(void);
398 
404 void clock_cpu_delay_us(uint32_t us);
405 
411 void clock_cpu_delay_ms(uint32_t ms);
412 
416 void clock_update_core_clock(void);
417 
421 extern uint32_t hpm_core_clock;
422 
423 #ifdef __cplusplus
424 }
425 #endif
426 
431 #endif /* HPM_CLOCK_DRV_H */
void clock_add_to_group(clock_name_t clock_name, uint32_t group)
Add IP to specified group.
Definition: hpm_clock_drv.c:438
@ clock_puart
Definition: hpm_clock_drv.h:135
uint32_t clock_get_frequency(clock_name_t clock_name)
Get specified IP frequency.
Definition: hpm_clock_drv.c:86
@ clk_src_invalid
Definition: hpm_clock_drv.h:77
@ clk_pwdg_src_osc32k
Definition: hpm_clock_drv.h:75
uint32_t clock_get_core_clock_ticks_per_ms(void)
Get core clock ticks per millisecond.
Definition: hpm_clock_drv.c:485
enum _clock_name clock_name_t
Peripheral Clock Type Description.
@ clock_hdma
Definition: hpm_clock_drv.h:129
@ clock_lmm0
Definition: hpm_clock_drv.h:122
@ clock_ana0
Definition: hpm_clock_drv.h:139
@ clock_cpu0
Definition: hpm_clock_drv.h:94
@ clock_ana2
Definition: hpm_clock_drv.h:144
void clock_update_core_clock(void)
Update the Core clock frequency.
Definition: hpm_clock_drv.c:507
@ clock_uart2
Definition: hpm_clock_drv.h:109
@ clock_spi2
Definition: hpm_clock_drv.h:105
@ clk_src_pll1_clk1
Definition: hpm_clock_drv.h:62
@ clk_src_pll0_clk0
Definition: hpm_clock_drv.h:58
@ clock_mbx0
Definition: hpm_clock_drv.h:124
@ clock_gpio
Definition: hpm_clock_drv.h:128
bool clock_check_in_group(clock_name_t clock_name, uint32_t group)
Check IP in specified group.
Definition: hpm_clock_drv.c:456
@ clock_uart1
Definition: hpm_clock_drv.h:108
void clock_remove_from_group(clock_name_t clock_name, uint32_t group)
Remove IP from specified group.
Definition: hpm_clock_drv.c:447
@ clk_wdg_src_osc32k
Definition: hpm_clock_drv.h:72
@ clk_adc_src_ana1
Definition: hpm_clock_drv.h:69
hpm_stat_t clock_set_source_divider(clock_name_t clock_name, clk_src_t src, uint32_t div)
Set the IP clock source and divider.
Definition: hpm_clock_drv.c:369
@ clock_i2c2
Definition: hpm_clock_drv.h:101
@ clk_adc_src_ana0
Definition: hpm_clock_drv.h:68
@ clock_kman
Definition: hpm_clock_drv.h:127
@ clk_osc0clk0
Definition: hpm_clock_drv.h:148
void clock_enable(clock_name_t clock_name)
Enable IP clock.
Definition: hpm_clock_drv.c:428
@ clock_watchdog0
Definition: hpm_clock_drv.h:118
@ clock_uart0
Definition: hpm_clock_drv.h:107
@ clock_watchdog1
Definition: hpm_clock_drv.h:119
enum _clock_sources clk_src_t
Clock source definitions.
void clock_cpu_delay_us(uint32_t us)
Delay specified microseconds.
Definition: hpm_clock_drv.c:493
@ clock_ref0
Definition: hpm_clock_drv.h:113
@ clock_spi1
Definition: hpm_clock_drv.h:104
@ clock_rom
Definition: hpm_clock_drv.h:130
@ clk_wdg_src_ahb0
Definition: hpm_clock_drv.h:71
@ clock_gptmr0
Definition: hpm_clock_drv.h:97
@ clock_usb0
Definition: hpm_clock_drv.h:132
@ clock_spi0
Definition: hpm_clock_drv.h:103
@ clock_mchtmr0
Definition: hpm_clock_drv.h:96
@ clock_ahb
Definition: hpm_clock_drv.h:116
@ clock_pwdg
Definition: hpm_clock_drv.h:120
uint32_t hpm_core_clock
Definition: hpm_clock_drv.c:80
@ clock_i2c1
Definition: hpm_clock_drv.h:100
@ clk_src_osc32k
Definition: hpm_clock_drv.h:65
clk_src_t clock_get_source(clock_name_t clock_name)
Get the IP clock source Note: This API return the direct clock source.
Definition: hpm_clock_drv.c:239
@ clock_acmp
Definition: hpm_clock_drv.h:158
@ clock_xpi0
Definition: hpm_clock_drv.h:112
@ clk_pll1clk0
Definition: hpm_clock_drv.h:152
@ clk_src_osc24m
Definition: hpm_clock_drv.h:57
uint32_t get_frequency_for_source(clock_source_t source)
Get Clock frequency for selected clock source.
Definition: hpm_clock_drv.c:123
hpm_stat_t clock_set_adc_source(clock_name_t clock_name, clk_src_t src)
Set ADC clock source.
Definition: hpm_clock_drv.c:324
uint32_t clock_get_divider(clock_name_t clock_name)
Get the IP clock divider Note:This API return the direct clock divider.
Definition: hpm_clock_drv.c:293
@ clk_pll0clk0
Definition: hpm_clock_drv.h:149
@ clock_spi3
Definition: hpm_clock_drv.h:106
uint32_t clock_get_core_clock_ticks_per_us(void)
Get core clock ticks per microsecond.
Definition: hpm_clock_drv.c:477
@ clock_acmp0
Definition: hpm_clock_drv.h:126
void clock_disable(clock_name_t clock_name)
Disable IP clock.
Definition: hpm_clock_drv.c:433
@ clock_uart4
Definition: hpm_clock_drv.h:111
@ clk_src_pll1_clk0
Definition: hpm_clock_drv.h:61
hpm_stat_t clock_set_wdg_source(clock_name_t clock_name, clk_src_t src)
Set the WDG clock source.
Definition: hpm_clock_drv.c:344
void clock_cpu_delay_ms(uint32_t ms)
Delay specified milliseconds.
Definition: hpm_clock_drv.c:500
@ clock_gptmr1
Definition: hpm_clock_drv.h:98
@ clock_uart3
Definition: hpm_clock_drv.h:110
@ status_clk_shared_axi0
Definition: hpm_clock_drv.h:26
@ status_clk_invalid
Definition: hpm_clock_drv.h:23
@ status_clk_shared_axi1
Definition: hpm_clock_drv.h:27
@ status_clk_shared_axi2
Definition: hpm_clock_drv.h:28
@ status_clk_shared_cpu1
Definition: hpm_clock_drv.h:30
@ status_clk_shared_ahb
Definition: hpm_clock_drv.h:25
@ status_clk_operation_unsupported
Definition: hpm_clock_drv.h:24
@ status_clk_fixed
Definition: hpm_clock_drv.h:31
@ status_clk_src_invalid
Definition: hpm_clock_drv.h:22
@ status_clk_div_invalid
Definition: hpm_clock_drv.h:21
@ status_clk_shared_cpu0
Definition: hpm_clock_drv.h:29
@ clk_pll1clk1
Definition: hpm_clock_drv.h:153
@ clk_adc_src_ahb0
Definition: hpm_clock_drv.h:67
@ clock_i2c3
Definition: hpm_clock_drv.h:102
@ clock_adc0
Definition: hpm_clock_drv.h:141
@ clock_i2c0
Definition: hpm_clock_drv.h:99
void clock_disconnect_group_from_cpu(uint32_t group, uint32_t cpu)
Disconnect the clock group from specified CPU.
Definition: hpm_clock_drv.c:470
@ clock_ana1
Definition: hpm_clock_drv.h:140
@ clock_ptmr
Definition: hpm_clock_drv.h:134
@ clk_pwdg_src_osc24m
Definition: hpm_clock_drv.h:74
@ clock_ref1
Definition: hpm_clock_drv.h:114
void clock_connect_group_to_cpu(uint32_t group, uint32_t cpu)
Disconnect the clock group from specified CPU.
Definition: hpm_clock_drv.c:463
@ clock_can0
Definition: hpm_clock_drv.h:102
@ clock_ptpc
Definition: hpm_clock_drv.h:152
@ clock_adc1
Definition: hpm_clock_drv.h:162
@ clock_sdp
Definition: hpm_clock_drv.h:145
@ clock_uart6
Definition: hpm_clock_drv.h:124
@ clock_gptmr2
Definition: hpm_clock_drv.h:108
@ clock_can1
Definition: hpm_clock_drv.h:103
hpm_stat_t clock_wait_source_stable(clock_name_t clock_name)
Wait until the clock source for specified IP clock is stable.
Definition: hpm_clock_drv.c:351
@ clock_can2
Definition: hpm_clock_drv.h:104
@ clock_rng
Definition: hpm_clock_drv.h:144
@ clock_gptmr3
Definition: hpm_clock_drv.h:109
@ clock_mot0
Definition: hpm_clock_drv.h:143
@ clock_uart5
Definition: hpm_clock_drv.h:123
@ clock_can3
Definition: hpm_clock_drv.h:105
@ clock_uart7
Definition: hpm_clock_drv.h:125
@ clk_src_pll2_clk1
Definition: hpm_clock_drv.h:68
@ clock_mbx1
Definition: hpm_clock_drv.h:169
@ clk_pll2clk0
Definition: hpm_clock_drv.h:195
@ clk_src_pll2_clk0
Definition: hpm_clock_drv.h:67
@ clock_ram0
Definition: hpm_clock_drv.h:154
@ clock_mot2
Definition: hpm_clock_drv.h:163
@ clk_adc_src_ana2
Definition: hpm_clock_drv.h:73
@ clock_xdma
Definition: hpm_clock_drv.h:152
@ clock_cpu1
Definition: hpm_clock_drv.h:105
@ clock_mchtmr1
Definition: hpm_clock_drv.h:106
@ clock_synt
Definition: hpm_clock_drv.h:167
@ clk_pll2clk1
Definition: hpm_clock_drv.h:196
@ clock_mot3
Definition: hpm_clock_drv.h:164
@ clock_lmm1
Definition: hpm_clock_drv.h:171
@ clock_mot1
Definition: hpm_clock_drv.h:162
@ clock_adc2
Definition: hpm_clock_drv.h:180
@ clock_aud0
Definition: hpm_clock_drv.h:188
@ clock_sdxc0
Definition: hpm_clock_drv.h:136
@ clock_eth0
Definition: hpm_clock_drv.h:152
@ clock_ptp0
Definition: hpm_clock_drv.h:153
@ clock_xpi1
Definition: hpm_clock_drv.h:113
hpm_stat_t clock_set_i2s_source(clock_name_t clock_name, clk_src_t src)
Set I2S clock source.
Definition: hpm_clock_drv.c:484
@ clock_aud1
Definition: hpm_clock_drv.h:189
@ clock_femc
Definition: hpm_clock_drv.h:111
@ clock_ntmr0
Definition: hpm_clock_drv.h:137
@ clk_i2s_src_aud1
Definition: hpm_clock_drv.h:79
@ clock_i2s1
Definition: hpm_clock_drv.h:191
@ clock_dao
Definition: hpm_clock_drv.h:168
@ clock_pdm
Definition: hpm_clock_drv.h:167
@ clk_i2s_src_aud0
Definition: hpm_clock_drv.h:78
@ clock_i2s0
Definition: hpm_clock_drv.h:190
@ clock_uart13
Definition: hpm_clock_drv.h:142
@ clock_uart10
Definition: hpm_clock_drv.h:139
@ clock_axi0
Definition: hpm_clock_drv.h:114
@ clock_ntmr1
Definition: hpm_clock_drv.h:163
@ clock_axi1
Definition: hpm_clock_drv.h:115
@ clock_uart8
Definition: hpm_clock_drv.h:137
@ clk_pll3clk0
Definition: hpm_clock_drv.h:230
@ clock_gptmr7
Definition: hpm_clock_drv.h:128
@ clock_camera0
Definition: hpm_clock_drv.h:160
@ clock_gptmr4
Definition: hpm_clock_drv.h:125
@ clock_i2s3
Definition: hpm_clock_drv.h:221
@ clock_i2s2
Definition: hpm_clock_drv.h:220
@ clk_src_pll3_clk0
Definition: hpm_clock_drv.h:75
@ clock_uart12
Definition: hpm_clock_drv.h:141
@ clock_sdxc1
Definition: hpm_clock_drv.h:159
@ clock_eth1
Definition: hpm_clock_drv.h:176
@ clock_uart15
Definition: hpm_clock_drv.h:144
@ clock_gptmr6
Definition: hpm_clock_drv.h:127
@ clk_i2s_src_aud2
Definition: hpm_clock_drv.h:87
@ clock_camera1
Definition: hpm_clock_drv.h:161
@ clock_uart14
Definition: hpm_clock_drv.h:143
@ clk_src_pll4_clk0
Definition: hpm_clock_drv.h:76
@ clock_adc3
Definition: hpm_clock_drv.h:212
@ clock_pdma
Definition: hpm_clock_drv.h:187
@ clk_i2s_src_ahb0
Definition: hpm_clock_drv.h:84
@ clock_uart11
Definition: hpm_clock_drv.h:140
@ clock_gptmr5
Definition: hpm_clock_drv.h:126
@ clock_watchdog2
Definition: hpm_clock_drv.h:170
@ clock_display
Definition: hpm_clock_drv.h:157
@ clock_jpeg
Definition: hpm_clock_drv.h:186
@ clock_aud2
Definition: hpm_clock_drv.h:217
@ clock_watchdog3
Definition: hpm_clock_drv.h:171
@ clock_ram1
Definition: hpm_clock_drv.h:183
@ clock_ptp1
Definition: hpm_clock_drv.h:178
@ clock_uart9
Definition: hpm_clock_drv.h:138
@ clk_pll4clk0
Definition: hpm_clock_drv.h:231
@ clock_usb1
Definition: hpm_clock_drv.h:185
@ clock_axi2
Definition: hpm_clock_drv.h:116
#define CLK_SRC_GROUP_AXI0
Definition: hpm_clock_drv.h:50
#define MAKE_CLK_SRC(src_grp, index)
Definition: hpm_clock_drv.h:59
#define MAKE_CLOCK_NAME(resource, src_type, node)
Definition: hpm_clock_drv.h:101
#define CLK_SRC_GROUP_COMMON
Clock source group definitions.
Definition: hpm_clock_drv.h:44
#define CLK_SRC_GROUP_INVALID
Definition: hpm_clock_drv.h:57
#define CLK_SRC_GROUP_CPU0
Definition: hpm_clock_drv.h:53
#define CLK_SRC_GROUP_AHB
Definition: hpm_clock_drv.h:49
#define CLK_SRC_GROUP_CPU1
Definition: hpm_clock_drv.h:54
#define CLK_SRC_GROUP_ADC
Definition: hpm_clock_drv.h:45
#define CLK_SRC_GROUP_PMIC
Definition: hpm_clock_drv.h:48
#define CLK_SRC_GROUP_AXI1
Definition: hpm_clock_drv.h:51
#define CLK_SRC_GROUP_PWDG
Definition: hpm_clock_drv.h:56
#define RESOURCE_INVALID
Definition: hpm_clock_drv.h:98
#define CLK_SRC_GROUP_SRC
Definition: hpm_clock_drv.h:55
#define CLK_SRC_GROUP_AXI2
Definition: hpm_clock_drv.h:52
#define CLK_SRC_GROUP_WDG
Definition: hpm_clock_drv.h:47
#define CLK_SRC_GROUP_I2S
Definition: hpm_clock_drv.h:46
uint32_t hpm_stat_t
Definition: hpm_common.h:123
#define MAKE_STATUS(group, code)
Definition: hpm_common.h:132
@ status_group_clk
Definition: hpm_common.h:157
clock_source_t
General clock sources.
Definition: hpm_sysctl_drv.h:192
@ sysctl_resource_sdxc1
Definition: hpm_sysctl_drv.h:272
@ sysctl_resource_ref0
Definition: hpm_sysctl_drv.h:131
@ sysctl_resource_i2c3
Definition: hpm_sysctl_drv.h:109
@ sysctl_resource_uart3
Definition: hpm_sysctl_drv.h:117
@ sysctl_resource_xtal
Definition: hpm_sysctl_drv.h:60
@ sysctl_resource_synt
Definition: hpm_sysctl_drv.h:184
@ sysctl_resource_i2sdao
Definition: hpm_sysctl_drv.h:209
@ sysctl_resource_i2s0
Definition: hpm_sysctl_drv.h:206
@ sysctl_resource_adc0
Definition: hpm_sysctl_drv.h:124
@ sysctl_resource_rom0
Definition: hpm_sysctl_drv.h:102
@ sysctl_resource_wdg0
Definition: hpm_sysctl_drv.h:119
@ sysctl_resource_clk0_pll0
Definition: hpm_sysctl_drv.h:62
@ sysctl_resource_uart1
Definition: hpm_sysctl_drv.h:115
@ sysctl_resource_mchtmr1
Definition: hpm_sysctl_drv.h:135
@ sysctl_resource_kman
Definition: hpm_sysctl_drv.h:126
@ sysctl_resource_mot1
Definition: hpm_sysctl_drv.h:181
@ sysctl_resource_i2c0
Definition: hpm_sysctl_drv.h:106
@ sysctl_resource_can1
Definition: hpm_sysctl_drv.h:120
@ sysctl_resource_usb1
Definition: hpm_sysctl_drv.h:274
@ sysctl_resource_mot2
Definition: hpm_sysctl_drv.h:182
@ sysctl_resource_i2s2
Definition: hpm_sysctl_drv.h:253
@ sysctl_resource_clk1_pll1
Definition: hpm_sysctl_drv.h:67
@ sysctl_resource_dma0
Definition: hpm_sysctl_drv.h:186
@ sysctl_resource_eth1
Definition: hpm_sysctl_drv.h:268
@ sysctl_resource_cam1
Definition: hpm_sysctl_drv.h:264
@ sysctl_resource_gptmr2
Definition: hpm_sysctl_drv.h:130
@ sysctl_resource_eth0
Definition: hpm_sysctl_drv.h:213
@ sysctl_resource_gptmr3
Definition: hpm_sysctl_drv.h:131
@ sysctl_resource_gptmr0
Definition: hpm_sysctl_drv.h:104
@ sysctl_resource_gptmr6
Definition: hpm_sysctl_drv.h:215
@ sysctl_resource_wdg3
Definition: hpm_sysctl_drv.h:208
@ sysctl_resource_clk0_pll3
Definition: hpm_sysctl_drv.h:98
@ sysctl_resource_wdg2
Definition: hpm_sysctl_drv.h:207
@ sysctl_resource_gptmr7
Definition: hpm_sysctl_drv.h:216
@ sysctl_resource_clk0_pll1
Definition: hpm_sysctl_drv.h:66
@ sysctl_resource_spi0
Definition: hpm_sysctl_drv.h:110
@ sysctl_resource_sdxc0
Definition: hpm_sysctl_drv.h:215
@ sysctl_resource_mot0
Definition: hpm_sysctl_drv.h:160
@ sysctl_resource_axiv
Definition: hpm_sysctl_drv.h:186
@ sysctl_resource_lmm1
Definition: hpm_sysctl_drv.h:134
@ sysctl_resource_uart0
Definition: hpm_sysctl_drv.h:114
@ sysctl_resource_mbx0
Definition: hpm_sysctl_drv.h:121
@ sysctl_resource_pdma
Definition: hpm_sysctl_drv.h:266
@ sysctl_resource_lmm0
Definition: hpm_sysctl_drv.h:100
@ sysctl_resource_i2c1
Definition: hpm_sysctl_drv.h:107
@ sysctl_resource_clk1_pll2
Definition: hpm_sysctl_drv.h:76
@ sysctl_resource_adc1
Definition: hpm_sysctl_drv.h:154
@ sysctl_resource_i2s3
Definition: hpm_sysctl_drv.h:254
@ sysctl_resource_gptmr1
Definition: hpm_sysctl_drv.h:105
@ sysctl_resource_i2s1
Definition: hpm_sysctl_drv.h:207
@ sysctl_resource_cpu1
Definition: hpm_sysctl_drv.h:59
@ sysctl_resource_uart4
Definition: hpm_sysctl_drv.h:118
@ sysctl_resource_cam0
Definition: hpm_sysctl_drv.h:263
@ sysctl_resource_mot3
Definition: hpm_sysctl_drv.h:183
@ sysctl_resource_spi1
Definition: hpm_sysctl_drv.h:111
@ sysctl_resource_axic
Definition: hpm_sysctl_drv.h:131
@ sysctl_resource_spi2
Definition: hpm_sysctl_drv.h:112
@ sysctl_resource_wdg1
Definition: hpm_sysctl_drv.h:120
@ sysctl_resource_uart2
Definition: hpm_sysctl_drv.h:116
@ sysctl_resource_mchtmr0
Definition: hpm_sysctl_drv.h:101
@ sysctl_resource_gptmr5
Definition: hpm_sysctl_drv.h:214
@ sysctl_resource_xpi1
Definition: hpm_sysctl_drv.h:166
@ sysctl_resource_i2spdm0
Definition: hpm_sysctl_drv.h:208
@ sysctl_resource_uart9
Definition: hpm_sysctl_drv.h:226
@ sysctl_resource_i2c2
Definition: hpm_sysctl_drv.h:108
@ sysctl_resource_cpu0
Definition: hpm_sysctl_drv.h:55
@ sysctl_resource_uartc
Definition: hpm_sysctl_drv.h:229
@ sysctl_resource_rng0
Definition: hpm_sysctl_drv.h:161
@ sysctl_resource_ptpc
Definition: hpm_sysctl_drv.h:103
@ sysctl_resource_uartf
Definition: hpm_sysctl_drv.h:232
@ sysctl_resource_adc3
Definition: hpm_sysctl_drv.h:249
@ sysctl_resource_uart8
Definition: hpm_sysctl_drv.h:225
@ sysctl_resource_clk0_pll2
Definition: hpm_sysctl_drv.h:75
@ sysctl_resource_uart5
Definition: hpm_sysctl_drv.h:145
@ sysctl_resource_adc2
Definition: hpm_sysctl_drv.h:149
@ sysctl_resource_ntmr0
Definition: hpm_sysctl_drv.h:214
@ sysctl_resource_femc
Definition: hpm_sysctl_drv.h:160
@ sysctl_resource_spi3
Definition: hpm_sysctl_drv.h:113
@ sysctl_resource_mbx1
Definition: hpm_sysctl_drv.h:178
@ sysctl_resource_jpeg
Definition: hpm_sysctl_drv.h:265
@ sysctl_resource_ram0
Definition: hpm_sysctl_drv.h:137
@ sysctl_resource_uartb
Definition: hpm_sysctl_drv.h:228
@ sysctl_resource_clk0_pll4
Definition: hpm_sysctl_drv.h:100
@ sysctl_resource_xpi0
Definition: hpm_sysctl_drv.h:129
@ sysctl_resource_sdp0
Definition: hpm_sysctl_drv.h:162
@ sysctl_resource_uarte
Definition: hpm_sysctl_drv.h:231
@ sysctl_resource_usb0
Definition: hpm_sysctl_drv.h:130
@ sysctl_resource_uartd
Definition: hpm_sysctl_drv.h:230
@ sysctl_resource_uart6
Definition: hpm_sysctl_drv.h:146
@ sysctl_resource_acmp
Definition: hpm_sysctl_drv.h:125
@ sysctl_resource_axis
Definition: hpm_sysctl_drv.h:130
@ sysctl_resource_dis0
Definition: hpm_sysctl_drv.h:262
@ sysctl_resource_ahbp
Definition: hpm_sysctl_drv.h:129
@ sysctl_resource_dma1
Definition: hpm_sysctl_drv.h:187
@ sysctl_resource_can3
Definition: hpm_sysctl_drv.h:122
@ sysctl_resource_can0
Definition: hpm_sysctl_drv.h:119
@ sysctl_resource_gpio
Definition: hpm_sysctl_drv.h:127
@ sysctl_resource_ntmr1
Definition: hpm_sysctl_drv.h:270
@ sysctl_resource_gptmr4
Definition: hpm_sysctl_drv.h:213
@ sysctl_resource_can2
Definition: hpm_sysctl_drv.h:121
@ sysctl_resource_uart7
Definition: hpm_sysctl_drv.h:147
@ sysctl_resource_ram1
Definition: hpm_sysctl_drv.h:194
@ sysctl_resource_uarta
Definition: hpm_sysctl_drv.h:227
@ sysctl_resource_ref1
Definition: hpm_sysctl_drv.h:132
@ clock_node_uartc
Definition: hpm_sysctl_drv.h:325
@ clock_node_uart9
Definition: hpm_sysctl_drv.h:322
@ clock_node_uartf
Definition: hpm_sysctl_drv.h:328
@ clock_node_cam1
Definition: hpm_sysctl_drv.h:350
@ clock_node_mchtmr0
Definition: hpm_sysctl_drv.h:150
@ clock_node_uart6
Definition: hpm_sysctl_drv.h:210
@ clock_node_ptp1
Definition: hpm_sysctl_drv.h:354
@ clock_node_ana1
Definition: hpm_sysctl_drv.h:168
@ clock_node_sdxc1
Definition: hpm_sysctl_drv.h:360
@ clock_node_axi0
Definition: hpm_sysctl_drv.h:298
@ clock_node_eth0
Definition: hpm_sysctl_drv.h:269
@ clock_node_axi1
Definition: hpm_sysctl_drv.h:299
@ clock_node_cam0
Definition: hpm_sysctl_drv.h:349
@ clock_node_gptmr1
Definition: hpm_sysctl_drv.h:152
@ clock_node_spi1
Definition: hpm_sysctl_drv.h:158
@ clock_node_can1
Definition: hpm_sysctl_drv.h:189
@ clock_node_mchtmr1
Definition: hpm_sysctl_drv.h:213
@ clock_node_i2c0
Definition: hpm_sysctl_drv.h:153
@ clock_node_uart8
Definition: hpm_sysctl_drv.h:321
@ clock_node_uart7
Definition: hpm_sysctl_drv.h:211
@ clock_node_gptmr7
Definition: hpm_sysctl_drv.h:312
@ clock_node_uart3
Definition: hpm_sysctl_drv.h:164
@ clock_node_aud1
Definition: hpm_sysctl_drv.h:268
@ clock_node_uart1
Definition: hpm_sysctl_drv.h:162
@ clock_node_gptmr4
Definition: hpm_sysctl_drv.h:309
@ clock_node_spi0
Definition: hpm_sysctl_drv.h:157
@ clock_node_uart2
Definition: hpm_sysctl_drv.h:163
@ clock_node_xpi0
Definition: hpm_sysctl_drv.h:166
@ clock_node_gptmr2
Definition: hpm_sysctl_drv.h:194
@ clock_node_ahb0
Definition: hpm_sysctl_drv.h:301
@ clock_node_uart0
Definition: hpm_sysctl_drv.h:161
@ clock_node_can2
Definition: hpm_sysctl_drv.h:190
@ clock_node_spi2
Definition: hpm_sysctl_drv.h:159
@ clock_node_ref0
Definition: hpm_sysctl_drv.h:171
@ clock_node_gptmr5
Definition: hpm_sysctl_drv.h:310
@ clock_node_ana0
Definition: hpm_sysctl_drv.h:167
@ clock_node_ptpc
Definition: hpm_sysctl_drv.h:239
@ clock_node_uart4
Definition: hpm_sysctl_drv.h:165
@ clock_node_aud0
Definition: hpm_sysctl_drv.h:267
@ clock_node_gptmr3
Definition: hpm_sysctl_drv.h:195
@ clock_node_uartb
Definition: hpm_sysctl_drv.h:324
@ clock_node_axi2
Definition: hpm_sysctl_drv.h:300
@ clock_node_uart5
Definition: hpm_sysctl_drv.h:209
@ clock_node_uartd
Definition: hpm_sysctl_drv.h:326
@ clock_node_sdxc0
Definition: hpm_sysctl_drv.h:274
@ clock_node_aud2
Definition: hpm_sysctl_drv.h:347
@ clock_node_xpi1
Definition: hpm_sysctl_drv.h:239
@ clock_node_can0
Definition: hpm_sysctl_drv.h:188
@ clock_node_i2c3
Definition: hpm_sysctl_drv.h:156
@ clock_node_ntmr0
Definition: hpm_sysctl_drv.h:273
@ clock_node_femc
Definition: hpm_sysctl_drv.h:237
@ clock_node_uarta
Definition: hpm_sysctl_drv.h:323
@ clock_node_eth1
Definition: hpm_sysctl_drv.h:352
@ clock_node_ptp0
Definition: hpm_sysctl_drv.h:270
@ clock_node_spi3
Definition: hpm_sysctl_drv.h:160
@ clock_node_ref1
Definition: hpm_sysctl_drv.h:172
@ clock_node_cpu1
Definition: hpm_sysctl_drv.h:265
@ clock_node_i2c2
Definition: hpm_sysctl_drv.h:155
@ clock_node_cpu0
Definition: hpm_sysctl_drv.h:184
@ clock_node_ana2
Definition: hpm_sysctl_drv.h:169
@ clock_node_can3
Definition: hpm_sysctl_drv.h:191
@ clock_node_i2c1
Definition: hpm_sysctl_drv.h:154
@ clock_node_gptmr0
Definition: hpm_sysctl_drv.h:151
@ clock_node_dis0
Definition: hpm_sysctl_drv.h:348
@ clock_node_ntmr1
Definition: hpm_sysctl_drv.h:358
@ clock_node_gptmr6
Definition: hpm_sysctl_drv.h:311
@ clock_node_uarte
Definition: hpm_sysctl_drv.h:327