diff options
Diffstat (limited to 'firmware/target/arm/imx233/rtc-imx233.h')
-rw-r--r-- | firmware/target/arm/imx233/rtc-imx233.h | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/firmware/target/arm/imx233/rtc-imx233.h b/firmware/target/arm/imx233/rtc-imx233.h index 8a5f4d035c..35304df080 100644 --- a/firmware/target/arm/imx233/rtc-imx233.h +++ b/firmware/target/arm/imx233/rtc-imx233.h | |||
@@ -37,11 +37,6 @@ struct imx233_rtc_info_t | |||
37 | bool alarm_en, alarm_wake_en, alarm_wake, alarm_irq; | 37 | bool alarm_en, alarm_wake_en, alarm_wake, alarm_irq; |
38 | }; | 38 | }; |
39 | 39 | ||
40 | static inline void imx233_rtc_init(void) | ||
41 | { | ||
42 | BF_CLR(RTC_CTRL, CLKGATE); | ||
43 | } | ||
44 | |||
45 | static inline uint32_t imx233_rtc_read_seconds(void) | 40 | static inline uint32_t imx233_rtc_read_seconds(void) |
46 | { | 41 | { |
47 | return HW_RTC_SECONDS; | 42 | return HW_RTC_SECONDS; |
@@ -71,6 +66,25 @@ static inline uint32_t imx233_rtc_read_alarm(void) | |||
71 | return HW_RTC_ALARM; | 66 | return HW_RTC_ALARM; |
72 | } | 67 | } |
73 | 68 | ||
69 | static inline void imx233_rtc_enable_watchdog(bool en) | ||
70 | { | ||
71 | if(en) | ||
72 | BF_SET(RTC_CTRL, WATCHDOGEN); | ||
73 | else | ||
74 | BF_CLR(RTC_CTRL, WATCHDOGEN); | ||
75 | } | ||
76 | |||
77 | static inline void imx233_rtc_reset_watchdog(uint32_t ms) | ||
78 | { | ||
79 | HW_RTC_WATCHDOG = ms; | ||
80 | } | ||
81 | |||
82 | static inline void imx233_rtc_init(void) | ||
83 | { | ||
84 | BF_CLR(RTC_CTRL, CLKGATE); | ||
85 | imx233_rtc_enable_watchdog(false); | ||
86 | } | ||
87 | |||
74 | void imx233_rtc_write_seconds(uint32_t seconds); | 88 | void imx233_rtc_write_seconds(uint32_t seconds); |
75 | void imx233_rtc_write_persistent(int idx, uint32_t val); | 89 | void imx233_rtc_write_persistent(int idx, uint32_t val); |
76 | void imx233_rtc_write_alarm(uint32_t seconds); | 90 | void imx233_rtc_write_alarm(uint32_t seconds); |