1 /*
2  * Copyright (C) 2015-2020 Alibaba Group Holding Limited
3  */
4 #ifndef __HAL_RTC_H__
5 #define __HAL_RTC_H__
6 
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10 
11 #include "plat_types.h"
12 
13 struct rtc_time {
14         int tm_sec;
15         int tm_min;
16         int tm_hour;
17         int tm_mday;
18         int tm_mon;
19         int tm_year;
20 };
21 
22 typedef void (*HAL_RTC_IRQ_HANDLER_T)(struct rtc_time *time);
23 
24 int hal_rtc_get(struct rtc_time *time);
25 
26 int hal_rtc_set(struct rtc_time *time);
27 
28 int hal_rtc_set_alarm(struct rtc_time *time);
29 
30 int hal_rtc_clear_alarm(void);
31 
32 HAL_RTC_IRQ_HANDLER_T hal_rtc_set_irq_handler(HAL_RTC_IRQ_HANDLER_T handler);
33 
34 #ifdef __cplusplus
35 }
36 #endif
37 
38 #endif
39