Zephyr API Documentation
4.0.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
atmel_sam_pmc.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2023 Gerson Fernando Budke <nandojve@gmail.com
3
*
4
* SPDX-License-Identifier: Apache-2.0
5
*/
6
7
#ifndef ZEPHYR_INCLUDE_DRIVERS_CLOCK_CONTROL_ATMEL_SAM_PMC_H_
8
#define ZEPHYR_INCLUDE_DRIVERS_CLOCK_CONTROL_ATMEL_SAM_PMC_H_
9
10
#include <
zephyr/drivers/clock_control.h
>
11
#include <
zephyr/dt-bindings/clock/atmel_sam_pmc.h
>
12
13
#define SAM_DT_PMC_CONTROLLER DEVICE_DT_GET(DT_NODELABEL(pmc))
14
15
struct
atmel_sam_pmc_config
{
16
uint32_t
clock_type
;
17
uint32_t
peripheral_id
;
18
};
19
20
#define SAM_DT_CLOCK_PMC_CFG(clock_id, node_id) \
21
{ \
22
.clock_type = DT_CLOCKS_CELL_BY_IDX(node_id, clock_id, clock_type), \
23
.peripheral_id = DT_CLOCKS_CELL_BY_IDX(node_id, clock_id, peripheral_id)\
24
}
25
26
#define SAM_DT_INST_CLOCK_PMC_CFG(inst) SAM_DT_CLOCK_PMC_CFG(0, DT_DRV_INST(inst))
27
28
#define SAM_DT_CLOCKS_PMC_CFG(node_id) \
29
{ \
30
LISTIFY(DT_NUM_CLOCKS(node_id), \
31
SAM_DT_CLOCK_PMC_CFG, (,), node_id) \
32
}
33
34
#define SAM_DT_INST_CLOCKS_PMC_CFG(inst) \
35
SAM_DT_CLOCKS_PMC_CFG(DT_DRV_INST(inst))
36
37
#endif
/* ZEPHYR_INCLUDE_DRIVERS_CLOCK_CONTROL_ATMEL_SAM_PMC_H_ */
clock_control.h
Public Clock Control APIs.
atmel_sam_pmc.h
uint32_t
__UINT32_TYPE__ uint32_t
Definition
stdint.h:90
atmel_sam_pmc_config
Definition
atmel_sam_pmc.h:15
atmel_sam_pmc_config::clock_type
uint32_t clock_type
Definition
atmel_sam_pmc.h:16
atmel_sam_pmc_config::peripheral_id
uint32_t peripheral_id
Definition
atmel_sam_pmc.h:17
zephyr
drivers
clock_control
atmel_sam_pmc.h
Generated on Sat Nov 16 2024 04:55:03 for Zephyr API Documentation by
1.12.0