Zephyr API Documentation
4.0.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
clock_control_silabs.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2024 Silicon Laboratories Inc.
3
*
4
* SPDX-License-Identifier: Apache-2.0
5
*/
6
7
#ifndef ZEPHYR_INCLUDE_DRIVERS_CLOCK_CONTROL_SILABS_H_
8
#define ZEPHYR_INCLUDE_DRIVERS_CLOCK_CONTROL_SILABS_H_
9
10
#include <
zephyr/drivers/clock_control.h
>
11
12
#if defined(CONFIG_SOC_SERIES_EFR32MG21)
13
#include <
zephyr/dt-bindings/clock/silabs/xg21-clock.h
>
14
#elif defined(CONFIG_SOC_SERIES_EFR32BG22)
15
#include <
zephyr/dt-bindings/clock/silabs/xg22-clock.h
>
16
#elif defined(CONFIG_SOC_SERIES_EFR32MG24)
17
#include <
zephyr/dt-bindings/clock/silabs/xg24-clock.h
>
18
#elif defined(CONFIG_SOC_SERIES_EFR32BG27)
19
#include <
zephyr/dt-bindings/clock/silabs/xg27-clock.h
>
20
#endif
21
22
struct
silabs_clock_control_cmu_config
{
23
uint32_t
bus_clock
;
24
uint8_t
branch
;
25
};
26
27
#define SILABS_DT_CLOCK_CFG(node_id) \
28
{ \
29
.bus_clock = DT_CLOCKS_CELL(node_id, enable), \
30
.branch = DT_CLOCKS_CELL(node_id, branch), \
31
}
32
33
#define SILABS_DT_INST_CLOCK_CFG(inst) \
34
{ \
35
.bus_clock = DT_INST_CLOCKS_CELL(inst, enable), \
36
.branch = DT_INST_CLOCKS_CELL(inst, branch), \
37
}
38
39
#endif
/* ZEPHYR_INCLUDE_DRIVERS_CLOCK_CONTROL_SILABS_H_ */
clock_control.h
Public Clock Control APIs.
uint32_t
__UINT32_TYPE__ uint32_t
Definition
stdint.h:90
uint8_t
__UINT8_TYPE__ uint8_t
Definition
stdint.h:88
silabs_clock_control_cmu_config
Definition
clock_control_silabs.h:22
silabs_clock_control_cmu_config::bus_clock
uint32_t bus_clock
Definition
clock_control_silabs.h:23
silabs_clock_control_cmu_config::branch
uint8_t branch
Definition
clock_control_silabs.h:24
xg21-clock.h
xg22-clock.h
xg24-clock.h
xg27-clock.h
zephyr
drivers
clock_control
clock_control_silabs.h
Generated on Sat Nov 16 2024 04:55:03 for Zephyr API Documentation by
1.12.0