X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/37fb1e9cee287c9ae8c065ff517c508eb5f9d7dd..8c6f505faaa66e18cdca108dca549d4ad806a077:/lunaix-os/includes/hal/rtc.h diff --git a/lunaix-os/includes/hal/rtc.h b/lunaix-os/includes/hal/rtc.h index 69bf38e..0742f0c 100644 --- a/lunaix-os/includes/hal/rtc.h +++ b/lunaix-os/includes/hal/rtc.h @@ -26,22 +26,25 @@ #define RTC_BIN_ENCODED(reg) (reg & 0x04) #define RTC_24HRS_ENCODED(reg) (reg & 0x02) -typedef struct -{ - uint32_t year; // use int32 as we need to store the 4-digit year - uint8_t month; - uint8_t day; - uint8_t weekday; - uint8_t hour; - uint8_t minute; - uint8_t second; -} rtc_datetime; +#define RTC_TIMER_BASE_FREQUENCY 1024 +#define RTC_TIMER_ON 0x40 +#define RTC_FREQUENCY_1024HZ 0b110 +#define RTC_DIVIDER_33KHZ (0b010 << 4) + +void +rtc_init(); uint8_t rtc_read_reg(uint8_t reg_selector); -void -rtc_get_datetime(rtc_datetime* datetime); +void +rtc_write_reg(uint8_t reg_selector, uint8_t val); + +void +rtc_enable_timer(); + +void +rtc_disable_timer(); #endif /* __LUNAIX_RTC_H */