HPM SDK
HPMicro Software Development Kit
hpm_clock_drv.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 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 
13 #define CLOCK_DIV_INVALID (~0UL)
14 
18 enum {
30 
31 };
32 
33 
34 
38 #define CLK_SRC_GROUP_COMMON (0U)
39 #define CLK_SRC_GROUP_ADC (1U)
40 #define CLK_SRC_GROUP_I2S (2U)
41 #define CLK_SRC_GROUP_EWDG (3U)
42 #define CLK_SRC_GROUP_AHB (4U)
43 #define CLK_SRC_GROUP_AXIF (5U)
44 #define CLK_SRC_GROUP_AXIS (6U)
45 #define CLK_SRC_GROUP_AXIC (7U)
46 #define CLK_SRC_GROUP_PMIC (8U)
47 #define CLK_SRC_GROUP_PEWDG (9U)
48 #define CLK_SRC_GROUP_CPU0 (10U)
49 #define CLK_SRC_GROUP_CPU1 (11U)
50 #define CLK_SRC_GROUP_SRC (12U)
51 #define CLK_SRC_GROUP_INVALID (13U)
52 
53 #define MAKE_CLK_SRC(src_grp, index) (((uint8_t)(src_grp)<<4) | (index))
54 #define GET_CLK_SRC_GROUP(src) (((uint8_t)(src)>>4) & 0x0FU)
55 #define GET_CLK_SRC_INDEX(src) ((uint8_t)(src) & 0x0FU)
56 
57 #define GET_CLOCK_SOURCE_FROM_CLK_SRC(clk_src) (clock_source_t)((uint32_t)(clk_src) & 0xFU)
58 
62 typedef enum _clock_sources {
72 
78 
81  clk_i2s_src_audn = MAKE_CLK_SRC(CLK_SRC_GROUP_I2S, 0), /* clk_i2s_src_audn is equal to clk_i2s_src_aud0 and clk_i2s_src_aud1, n is the num */
83 
85 
88 
91 
94 
95 
96 #define RESOURCE_INVALID (0xFFFFU)
97 
98 #define GET_CLOCK_SOURCE_FROM_CLK_SRC(clk_src) (clock_source_t)((uint32_t)(clk_src) & 0xFU)
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 {
149 
182 
187 
200 
202 
203  /* For ADC, there are 2-stage clock source and divider configurations */
212 
213  /* For I2S, there are 2-stage clock source and divider configurations */
220 
221  /* Clock sources */
231 
235 extern uint32_t hpm_core_clock;
236 
237 #ifdef __cplusplus
238 extern "C" {
239 #endif
240 
247 uint32_t clock_get_frequency(clock_name_t clock_name);
248 
255 
263 
270 uint32_t clock_get_divider(clock_name_t clock_name);
271 
282 
293 
303 
320 hpm_stat_t clock_set_source_divider(clock_name_t clock_name, clk_src_t src, uint32_t div);
321 
334 
339 void clock_enable(clock_name_t clock_name);
340 
345 void clock_disable(clock_name_t clock_name);
346 
352 void clock_add_to_group(clock_name_t clock_name, uint32_t group);
353 
359 void clock_remove_from_group(clock_name_t clock_name, uint32_t group);
360 
367 bool clock_check_in_group(clock_name_t clock_name, uint32_t group);
368 
374 void clock_connect_group_to_cpu(uint32_t group, uint32_t cpu);
375 
381 void clock_disconnect_group_from_cpu(uint32_t group, uint32_t cpu);
382 
388 uint32_t clock_get_core_clock_ticks_per_us(void);
389 
395 uint32_t clock_get_core_clock_ticks_per_ms(void);
396 
402 void clock_cpu_delay_us(uint32_t us);
403 
409 void clock_cpu_delay_ms(uint32_t ms);
410 
414 void clock_update_core_clock(void);
415 
416 
417 #ifdef __cplusplus
418 }
419 #endif
420 
421 #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:136
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:130
@ clock_lmm0
Definition: hpm_clock_drv.h:122
@ clock_ana0
Definition: hpm_clock_drv.h:140
@ status_clk_invalid
Definition: hpm_clock_drv.h:23
@ 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
@ clock_cpu0
Definition: hpm_clock_drv.h:94
@ clock_ana2
Definition: hpm_clock_drv.h:145
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_pll1_clk2
Definition: hpm_clock_drv.h:63
@ clk_src_pll0_clk0
Definition: hpm_clock_drv.h:58
@ clk_src_pll0_clk1
Definition: hpm_clock_drv.h:59
@ clock_mbx0
Definition: hpm_clock_drv.h:124
@ clock_gpio
Definition: hpm_clock_drv.h:129
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:128
@ clk_osc0clk0
Definition: hpm_clock_drv.h:149
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
@ 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:133
@ clock_spi0
Definition: hpm_clock_drv.h:103
@ clock_mchtmr0
Definition: hpm_clock_drv.h:96
@ 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
@ clock_mot0
Definition: hpm_clock_drv.h:127
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_xpi0
Definition: hpm_clock_drv.h:112
@ clk_pll1clk0
Definition: hpm_clock_drv.h:153
@ 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:150
@ 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
@ clock_crc0
Definition: hpm_clock_drv.h:125
@ clk_pll0clk1
Definition: hpm_clock_drv.h:151
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
@ clk_pll1clk2
Definition: hpm_clock_drv.h:155
@ clock_uart3
Definition: hpm_clock_drv.h:110
@ clk_pll1clk1
Definition: hpm_clock_drv.h:154
@ 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:142
@ 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:141
@ clock_ptmr
Definition: hpm_clock_drv.h:135
@ clk_pwdg_src_osc24m
Definition: hpm_clock_drv.h:74
@ clock_ref1
Definition: hpm_clock_drv.h:114
@ clock_tsns
Definition: hpm_clock_drv.h:132
@ clock_ana3
Definition: hpm_clock_drv.h:146
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_dac1
Definition: hpm_clock_drv.h:168
@ clock_uart6
Definition: hpm_clock_drv.h:124
@ clock_dac0
Definition: hpm_clock_drv.h:167
@ 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
@ clk_dac_src_ahb0
Definition: hpm_clock_drv.h:72
@ 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_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
@ clock_axic
Definition: hpm_clock_drv.h:139
@ clk_src_pll2_clk0
Definition: hpm_clock_drv.h:67
@ clock_ram0
Definition: hpm_clock_drv.h:154
@ clk_adc_src_ana2
Definition: hpm_clock_drv.h:73
@ clock_sdm0
Definition: hpm_clock_drv.h:168
@ clock_xdma
Definition: hpm_clock_drv.h:152
@ clock_cpu1
Definition: hpm_clock_drv.h:105
@ clock_mchtmr1
Definition: hpm_clock_drv.h:106
@ clk_pll2clk1
Definition: hpm_clock_drv.h:196
@ clock_axis
Definition: hpm_clock_drv.h:140
@ clock_lmm1
Definition: hpm_clock_drv.h:171
@ clock_adc2
Definition: hpm_clock_drv.h:180
@ clk_i2s_src_audx
Definition: hpm_clock_drv.h:81
@ clk_i2s_src_audn
Definition: hpm_clock_drv.h:80
@ clock_aud0
Definition: hpm_clock_drv.h:188
@ clock_eth0
Definition: hpm_clock_drv.h:152
@ clock_ptp0
Definition: hpm_clock_drv.h:153
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
@ clock_ffa0
Definition: hpm_clock_drv.h:170
@ clk_i2s_src_aud0
Definition: hpm_clock_drv.h:78
@ clock_i2s0
Definition: hpm_clock_drv.h:190
@ clock_adc3
Definition: hpm_clock_drv.h:212
@ clock_watchdog2
Definition: hpm_clock_drv.h:170
@ clock_watchdog3
Definition: hpm_clock_drv.h:171
@ clock_axif
Definition: hpm_clock_drv.h:105
@ status_clk_shared_axic
Definition: hpm_clock_drv.h:26
@ status_clk_shared_axis
Definition: hpm_clock_drv.h:25
@ status_clk_shared_axif
Definition: hpm_clock_drv.h:28
@ clock_qeo0
Definition: hpm_clock_drv.h:192
@ clock_lobs
Definition: hpm_clock_drv.h:181
@ clock_vsc0
Definition: hpm_clock_drv.h:208
@ clk_adc_src_ana3
Definition: hpm_clock_drv.h:75
@ clock_qeo1
Definition: hpm_clock_drv.h:193
@ clock_clc0
Definition: hpm_clock_drv.h:210
@ clock_acmp2
Definition: hpm_clock_drv.h:184
@ clock_acmp1
Definition: hpm_clock_drv.h:183
@ clock_pwm0
Definition: hpm_clock_drv.h:196
@ clock_qei0
Definition: hpm_clock_drv.h:188
@ clock_acmp3
Definition: hpm_clock_drv.h:185
@ clock_plb0
Definition: hpm_clock_drv.h:204
@ clock_rom0
Definition: hpm_clock_drv.h:225
@ clock_emds
Definition: hpm_clock_drv.h:212
@ clock_pwm2
Definition: hpm_clock_drv.h:198
@ clock_mtg0
Definition: hpm_clock_drv.h:206
@ clock_pwm1
Definition: hpm_clock_drv.h:197
@ clock_ppi0
Definition: hpm_clock_drv.h:179
@ clock_qei1
Definition: hpm_clock_drv.h:189
@ clock_pwm3
Definition: hpm_clock_drv.h:199
@ clock_sei0
Definition: hpm_clock_drv.h:205
@ clock_ahb0
Definition: hpm_clock_drv.h:110
@ clock_rdc0
Definition: hpm_clock_drv.h:200
#define CLK_SRC_GROUP_EWDG
Definition: hpm_clock_drv.h:41
#define MAKE_CLK_SRC(src_grp, index)
Definition: hpm_clock_drv.h:53
#define MAKE_CLOCK_NAME(resource, src_type, node)
Definition: hpm_clock_drv.h:101
#define CLK_SRC_GROUP_PEWDG
Definition: hpm_clock_drv.h:47
#define CLK_SRC_GROUP_AXIC
Definition: hpm_clock_drv.h:45
#define CLK_SRC_GROUP_COMMON
Clock source group definitions.
Definition: hpm_clock_drv.h:38
#define CLK_SRC_GROUP_INVALID
Definition: hpm_clock_drv.h:51
#define CLK_SRC_GROUP_AXIF
Definition: hpm_clock_drv.h:43
#define CLK_SRC_GROUP_CPU0
Definition: hpm_clock_drv.h:48
#define CLK_SRC_GROUP_AHB
Definition: hpm_clock_drv.h:42
#define CLK_SRC_GROUP_CPU1
Definition: hpm_clock_drv.h:49
#define CLK_SRC_GROUP_ADC
Definition: hpm_clock_drv.h:39
#define CLK_SRC_GROUP_PMIC
Definition: hpm_clock_drv.h:46
#define CLK_SRC_GROUP_AXIS
Definition: hpm_clock_drv.h:44
#define RESOURCE_INVALID
Definition: hpm_clock_drv.h:96
#define CLK_SRC_GROUP_SRC
Definition: hpm_clock_drv.h:50
#define CLK_SRC_GROUP_I2S
Definition: hpm_clock_drv.h:40
uint32_t hpm_stat_t
Definition: hpm_common.h:126
#define MAKE_STATUS(group, code)
Definition: hpm_common.h:135
@ status_group_clk
Definition: hpm_common.h:160
clock_source_t
General clock sources.
Definition: hpm_sysctl_drv.h:193
@ sysctl_resource_ref0
Definition: hpm_sysctl_drv.h:132
@ sysctl_resource_i2c3
Definition: hpm_sysctl_drv.h:109
@ sysctl_resource_clc0
Definition: hpm_sysctl_drv.h:270
@ sysctl_resource_uart3
Definition: hpm_sysctl_drv.h:117
@ sysctl_resource_xtal
Definition: hpm_sysctl_drv.h:60
@ sysctl_resource_mtg0
Definition: hpm_sysctl_drv.h:266
@ 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_tsns
Definition: hpm_sysctl_drv.h:122
@ sysctl_resource_clk0_pll0
Definition: hpm_sysctl_drv.h:62
@ sysctl_resource_uart1
Definition: hpm_sysctl_drv.h:115
@ sysctl_resource_clk2_pll1
Definition: hpm_sysctl_drv.h:68
@ sysctl_resource_sdm0
Definition: hpm_sysctl_drv.h:157
@ sysctl_resource_mchtmr1
Definition: hpm_sysctl_drv.h:135
@ sysctl_resource_pwm3
Definition: hpm_sysctl_drv.h:259
@ sysctl_resource_hdma
Definition: hpm_sysctl_drv.h:129
@ sysctl_resource_kman
Definition: hpm_sysctl_drv.h:127
@ sysctl_resource_i2c0
Definition: hpm_sysctl_drv.h:106
@ sysctl_resource_can1
Definition: hpm_sysctl_drv.h:120
@ sysctl_resource_pwm1
Definition: hpm_sysctl_drv.h:257
@ sysctl_resource_clk1_pll1
Definition: hpm_sysctl_drv.h:67
@ 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_cmp0
Definition: hpm_sysctl_drv.h:231
@ sysctl_resource_gptmr0
Definition: hpm_sysctl_drv.h:104
@ sysctl_resource_wdg3
Definition: hpm_sysctl_drv.h:208
@ sysctl_resource_sei0
Definition: hpm_sysctl_drv.h:265
@ sysctl_resource_wdg2
Definition: hpm_sysctl_drv.h:207
@ sysctl_resource_cmp2
Definition: hpm_sysctl_drv.h:233
@ sysctl_resource_qeo0
Definition: hpm_sysctl_drv.h:252
@ sysctl_resource_clk0_pll1
Definition: hpm_sysctl_drv.h:66
@ sysctl_resource_lobs
Definition: hpm_sysctl_drv.h:226
@ sysctl_resource_spi0
Definition: hpm_sysctl_drv.h:110
@ sysctl_resource_cmp1
Definition: hpm_sysctl_drv.h:232
@ sysctl_resource_uart0
Definition: hpm_sysctl_drv.h:114
@ sysctl_resource_mbx0
Definition: hpm_sysctl_drv.h:121
@ sysctl_resource_lmm0
Definition: hpm_sysctl_drv.h:100
@ sysctl_resource_ffa0
Definition: hpm_sysctl_drv.h:172
@ sysctl_resource_i2c1
Definition: hpm_sysctl_drv.h:107
@ sysctl_resource_clk1_pll2
Definition: hpm_sysctl_drv.h:76
@ sysctl_resource_cmp3
Definition: hpm_sysctl_drv.h:234
@ sysctl_resource_adc1
Definition: hpm_sysctl_drv.h:154
@ sysctl_resource_plb0
Definition: hpm_sysctl_drv.h:264
@ 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_qei0
Definition: hpm_sysctl_drv.h:248
@ sysctl_resource_pwm2
Definition: hpm_sysctl_drv.h:258
@ sysctl_resource_vsc0
Definition: hpm_sysctl_drv.h:268
@ sysctl_resource_xdma
Definition: hpm_sysctl_drv.h:281
@ 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_i2spdm0
Definition: hpm_sysctl_drv.h:208
@ sysctl_resource_i2c2
Definition: hpm_sysctl_drv.h:108
@ sysctl_resource_cpu0
Definition: hpm_sysctl_drv.h:55
@ sysctl_resource_rng0
Definition: hpm_sysctl_drv.h:161
@ sysctl_resource_ptpc
Definition: hpm_sysctl_drv.h:103
@ sysctl_resource_adc3
Definition: hpm_sysctl_drv.h:249
@ 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_ppi0
Definition: hpm_sysctl_drv.h:224
@ sysctl_resource_mbx1
Definition: hpm_sysctl_drv.h:178
@ sysctl_resource_emds
Definition: hpm_sysctl_drv.h:272
@ sysctl_resource_ram0
Definition: hpm_sysctl_drv.h:137
@ sysctl_resource_xpi0
Definition: hpm_sysctl_drv.h:130
@ sysctl_resource_sdp0
Definition: hpm_sysctl_drv.h:162
@ sysctl_resource_pwm0
Definition: hpm_sysctl_drv.h:256
@ sysctl_resource_qei1
Definition: hpm_sysctl_drv.h:249
@ sysctl_resource_usb0
Definition: hpm_sysctl_drv.h:131
@ sysctl_resource_uart6
Definition: hpm_sysctl_drv.h:146
@ sysctl_resource_axis
Definition: hpm_sysctl_drv.h:130
@ sysctl_resource_ahbp
Definition: hpm_sysctl_drv.h:129
@ sysctl_resource_can3
Definition: hpm_sysctl_drv.h:122
@ sysctl_resource_can0
Definition: hpm_sysctl_drv.h:119
@ sysctl_resource_crc0
Definition: hpm_sysctl_drv.h:123
@ sysctl_resource_gpio
Definition: hpm_sysctl_drv.h:128
@ sysctl_resource_qeo1
Definition: hpm_sysctl_drv.h:253
@ sysctl_resource_rdc0
Definition: hpm_sysctl_drv.h:260
@ sysctl_resource_dac0
Definition: hpm_sysctl_drv.h:155
@ sysctl_resource_dac1
Definition: hpm_sysctl_drv.h:156
@ sysctl_resource_can2
Definition: hpm_sysctl_drv.h:121
@ sysctl_resource_uart7
Definition: hpm_sysctl_drv.h:147
@ sysctl_resource_ref1
Definition: hpm_sysctl_drv.h:133
@ sysctl_resource_clk1_pll0
Definition: hpm_sysctl_drv.h:63
@ clock_node_axic
Definition: hpm_sysctl_drv.h:285
@ clock_node_axif
Definition: hpm_sysctl_drv.h:283
@ clock_node_mchtmr0
Definition: hpm_sysctl_drv.h:151
@ clock_node_uart6
Definition: hpm_sysctl_drv.h:210
@ clock_node_ana3
Definition: hpm_sysctl_drv.h:171
@ clock_node_ana1
Definition: hpm_sysctl_drv.h:169
@ clock_node_eth0
Definition: hpm_sysctl_drv.h:269
@ clock_node_gptmr1
Definition: hpm_sysctl_drv.h:153
@ clock_node_spi1
Definition: hpm_sysctl_drv.h:159
@ 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:154
@ clock_node_uart7
Definition: hpm_sysctl_drv.h:211
@ clock_node_uart3
Definition: hpm_sysctl_drv.h:165
@ clock_node_aud1
Definition: hpm_sysctl_drv.h:268
@ clock_node_uart1
Definition: hpm_sysctl_drv.h:163
@ clock_node_spi0
Definition: hpm_sysctl_drv.h:158
@ clock_node_uart2
Definition: hpm_sysctl_drv.h:164
@ clock_node_xpi0
Definition: hpm_sysctl_drv.h:167
@ clock_node_axis
Definition: hpm_sysctl_drv.h:284
@ 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:162
@ clock_node_can2
Definition: hpm_sysctl_drv.h:190
@ clock_node_spi2
Definition: hpm_sysctl_drv.h:160
@ clock_node_ref0
Definition: hpm_sysctl_drv.h:172
@ clock_node_ana0
Definition: hpm_sysctl_drv.h:168
@ clock_node_uart4
Definition: hpm_sysctl_drv.h:166
@ clock_node_aud0
Definition: hpm_sysctl_drv.h:267
@ clock_node_gptmr3
Definition: hpm_sysctl_drv.h:195
@ clock_node_uart5
Definition: hpm_sysctl_drv.h:209
@ clock_node_can0
Definition: hpm_sysctl_drv.h:188
@ clock_node_i2c3
Definition: hpm_sysctl_drv.h:157
@ clock_node_ntmr0
Definition: hpm_sysctl_drv.h:273
@ clock_node_femc
Definition: hpm_sysctl_drv.h:237
@ clock_node_ptp0
Definition: hpm_sysctl_drv.h:270
@ clock_node_spi3
Definition: hpm_sysctl_drv.h:161
@ clock_node_ref1
Definition: hpm_sysctl_drv.h:173
@ clock_node_cpu1
Definition: hpm_sysctl_drv.h:265
@ clock_node_i2c2
Definition: hpm_sysctl_drv.h:156
@ clock_node_cpu0
Definition: hpm_sysctl_drv.h:185
@ clock_node_ana2
Definition: hpm_sysctl_drv.h:170
@ clock_node_can3
Definition: hpm_sysctl_drv.h:191
@ clock_node_i2c1
Definition: hpm_sysctl_drv.h:155
@ clock_node_gptmr0
Definition: hpm_sysctl_drv.h:152