Fix the header guards, comments, github labeler, CODEOWNERS and MAINTAINERS files. Signed-off-by: Carlo Caione <ccaione@baylibre.com>
74 lines
1.3 KiB
C
74 lines
1.3 KiB
C
/*
|
|
* Copyright (c) 2019 Carlo Caione <ccaione@baylibre.com>
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
#ifndef ZEPHYR_INCLUDE_ARCH_ARM64_TIMER_H_
|
|
#define ZEPHYR_INCLUDE_ARCH_ARM64_TIMER_H_
|
|
|
|
#ifndef _ASMLANGUAGE
|
|
|
|
#include <drivers/timer/arm_arch_timer.h>
|
|
#include <zephyr/types.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#define ARM_ARCH_TIMER_IRQ ARM_TIMER_VIRTUAL_IRQ
|
|
#define ARM_ARCH_TIMER_PRIO ARM_TIMER_VIRTUAL_PRIO
|
|
#define ARM_ARCH_TIMER_FLAGS ARM_TIMER_VIRTUAL_FLAGS
|
|
|
|
static ALWAYS_INLINE void arm_arch_timer_init(void)
|
|
{
|
|
}
|
|
|
|
static ALWAYS_INLINE void arm_arch_timer_set_compare(uint64_t val)
|
|
{
|
|
write_cntv_cval_el0(val);
|
|
}
|
|
|
|
static ALWAYS_INLINE void arm_arch_timer_enable(unsigned char enable)
|
|
{
|
|
uint64_t cntv_ctl;
|
|
|
|
cntv_ctl = read_cntv_ctl_el0();
|
|
|
|
if (enable) {
|
|
cntv_ctl |= CNTV_CTL_ENABLE_BIT;
|
|
} else {
|
|
cntv_ctl &= ~CNTV_CTL_ENABLE_BIT;
|
|
}
|
|
|
|
write_cntv_ctl_el0(cntv_ctl);
|
|
}
|
|
|
|
static ALWAYS_INLINE void arm_arch_timer_set_irq_mask(bool mask)
|
|
{
|
|
uint64_t cntv_ctl;
|
|
|
|
cntv_ctl = read_cntv_ctl_el0();
|
|
|
|
if (mask) {
|
|
cntv_ctl |= CNTV_CTL_IMASK_BIT;
|
|
} else {
|
|
cntv_ctl &= ~CNTV_CTL_IMASK_BIT;
|
|
}
|
|
|
|
write_cntv_ctl_el0(cntv_ctl);
|
|
}
|
|
|
|
static ALWAYS_INLINE uint64_t arm_arch_timer_count(void)
|
|
{
|
|
return read_cntvct_el0();
|
|
}
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* _ASMLANGUAGE */
|
|
|
|
#endif /* ZEPHYR_INCLUDE_ARCH_ARM64_TIMER_H_ */
|