Zephyr Project API
3.6.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
nrf_grtc_timer.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2024 Nordic Semiconductor ASA
3
*
4
* SPDX-License-Identifier: Apache-2.0
5
*/
6
7
#ifndef ZEPHYR_INCLUDE_DRIVERS_TIMER_NRF_GRTC_TIMER_H
8
#define ZEPHYR_INCLUDE_DRIVERS_TIMER_NRF_GRTC_TIMER_H
9
10
#ifdef __cplusplus
11
extern
"C"
{
12
#endif
13
14
#include <
zephyr/sys_clock.h
>
15
29
typedef
void (*z_nrf_grtc_timer_compare_handler_t)(
int32_t
id,
uint64_t
expire_time,
30
void
*
user_data
);
31
37
int32_t
z_nrf_grtc_timer_chan_alloc(
void
);
38
43
void
z_nrf_grtc_timer_chan_free(
int32_t
chan);
44
49
uint64_t
z_nrf_grtc_timer_read(
void
);
50
58
bool
z_nrf_grtc_timer_compare_evt_check(
int32_t
chan);
59
68
uint32_t
z_nrf_grtc_timer_compare_evt_address_get(
int32_t
chan);
69
78
uint32_t
z_nrf_grtc_timer_capture_task_address_get(
int32_t
chan);
79
88
bool
z_nrf_grtc_timer_compare_int_lock(
int32_t
chan);
89
98
void
z_nrf_grtc_timer_compare_int_unlock(
int32_t
chan,
bool
key
);
99
108
uint64_t
z_nrf_grtc_timer_compare_read(
int32_t
chan);
109
123
int
z_nrf_grtc_timer_set(
int32_t
chan,
uint64_t
target_time,
124
z_nrf_grtc_timer_compare_handler_t
handler
,
void
*
user_data
);
125
136
void
z_nrf_grtc_timer_abort(
int32_t
chan);
137
145
uint64_t
z_nrf_grtc_timer_get_ticks(
k_timeout_t
t
);
146
160
int
z_nrf_grtc_timer_capture_prepare(
int32_t
chan);
161
173
int
z_nrf_grtc_timer_capture_read(
int32_t
chan,
uint64_t
*captured_time);
174
187
int
z_nrf_grtc_wakeup_prepare(
uint64_t
wake_time_us);
188
196
int
nrf_grtc_timer_clock_driver_init
(
void
);
197
198
#ifdef __cplusplus
199
}
200
#endif
201
202
#endif
/* ZEPHYR_INCLUDE_DRIVERS_TIMER_NRF_GRTC_TIMER_H */
sys_clock.h
Variables needed for system clock.
t
struct k_thread t
Definition
kobject.c:1324
nrf_grtc_timer_clock_driver_init
int nrf_grtc_timer_clock_driver_init(void)
Initialize the GRTC clock timer driver from an application- defined function.
key
static k_spinlock_key_t key
Definition
spinlock_error_case.c:15
uint32_t
__UINT32_TYPE__ uint32_t
Definition
stdint.h:90
int32_t
__INT32_TYPE__ int32_t
Definition
stdint.h:74
uint64_t
__UINT64_TYPE__ uint64_t
Definition
stdint.h:91
k_timeout_t
Kernel timeout type.
Definition
sys_clock.h:65
handler
static void handler(struct k_timer *timer)
Definition
main.c:19
user_data
static const intptr_t user_data[5]
Definition
main.c:588
include
zephyr
drivers
timer
nrf_grtc_timer.h
Generated on Sat Mar 23 2024 04:37:23 for Zephyr Project API by
1.9.8