18#ifndef __HAL_DRIVER_${SERIES/RTC_IP}_RTC_H__
19#define __HAL_DRIVER_${SERIES/RTC_IP}_RTC_H__
25#if VSF_HAL_USE_RTC == ENABLED
37#if defined(__VSF_HAL_${RTC_IP}_RTC_CLASS_IMPLEMENT)
38# define __VSF_CLASS_IMPLEMENT__
39#elif defined(__VSF_HAL_${RTC_IP}_RTC_CLASS_INHERIT__)
40# define __VSF_CLASS_INHERIT__
57#ifndef VSF_${RTC_IP}_RTC_CFG_MULTI_CLASS
58# define VSF_${RTC_IP}_RTC_CFG_MULTI_CLASS VSF_RTC_CFG_MULTI_CLASS
72#define VSF_RTC_CFG_REIMPLEMENT_TYPE_IRQ_MASK ENABLED
73#define VSF_RTC_CFG_REIMPLEMENT_TYPE_CFG ENABLED
74#define VSF_RTC_CFG_REIMPLEMENT_TYPE_CAPABILITY ENABLED
79#define VSF_RTC_CFG_TIME_TYPE uint64_t
87#if VSF_${RTC_IP}_CFG_MULTI_CLASS == ENABLED
106#if VSF_RTC_CFG_REIMPLEMENT_TYPE_IRQ_MASK == ENABLED
114#if VSF_RTC_CFG_REIMPLEMENT_TYPE_CFG == ENABLED
127#if VSF_RTC_CFG_REIMPLEMENT_TYPE_CAPABILITY == ENABLED
129#if VSF_RTC_CFG_INHERIT_HAL_CAPABILITY == ENABLED
152#undef __VSF_HAL_${RTC_IP}_RTC_CLASS_IMPLEMENT
153#undef __VSF_HAL_${RTC_IP}_RTC_CLASS_INHERIT__
vsf_arch_prio_t
Definition cortex_a_generic.h:88
#define vsf_class(__name)
Definition ooc_class.h:48
const i_spi_t vsf_spi_irq_mask_t irq_mask
Definition spi_interface.h:38
Definition vsf_template_hal_driver.h:203
RTC capability structure. Describes the features and capabilities supported by the RTC hardware.
Definition vsf_template_rtc.h:364
inherit(vsf_peripheral_capability_t) vsf_rtc_irq_mask_t irq_mask
RTC configuration structure.
Definition vsf_template_rtc.h:350
vsf_rtc_isr_t isr
Interrupt service routine configuration.
Definition vsf_template_rtc.h:351
RTC interrupt service routine configuration structure.
Definition vsf_template_rtc.h:338
vsf_arch_prio_t prio
Priority level for RTC interrupts.
Definition vsf_template_rtc.h:341
void * target_ptr
User context pointer passed to the handler.
Definition vsf_template_rtc.h:340
vsf_rtc_isr_handler_t * handler_fn
Interrupt handler function to process RTC interrupts.
Definition vsf_template_rtc.h:339
RTC instance structure, used for RTC Multi Class support, not needed in non Multi Class mode.
Definition vsf_template_rtc.h:407
vsf_rtc_isr_t isr
Definition rtc.h:101
vsf_rtc_irq_mask_t
Definition rtc.h:107
@ VSF_RTC_IRQ_MASK_ALARM
Definition rtc.h:108
void vsf_rtc_isr_handler_t(void *target_ptr, vsf_rtc_t *rtc_ptr, vsf_rtc_irq_mask_t irq_mask)
Definition rtc.h:116
vsf_rtc_irq_mask_t
RTC interrupt mask definition. Used to identify and manage different types of RTC interrupts.
Definition vsf_template_rtc.h:187