1724b74f69
Add a function to check sanity of a given RTC date and time. Invalid values in terms of overrun ranges of the registers can lead to strange issues in the OS. Change-Id: I0a381d445c894eee4f82b50fe86dad22cc587605 Signed-off-by: Werner Zeh <werner.zeh@siemens.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/54913 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Arthur Heymans <arthur@aheymans.xyz> Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
26 lines
545 B
C
26 lines
545 B
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
|
|
#ifndef _RTC_H_
|
|
#define _RTC_H_
|
|
|
|
struct rtc_time {
|
|
int sec;
|
|
int min;
|
|
int hour;
|
|
int mday;
|
|
int mon;
|
|
int year;
|
|
int wday;
|
|
};
|
|
|
|
/* Implemented by the RTC driver (there can be only one) */
|
|
int rtc_set(const struct rtc_time *time);
|
|
int rtc_get(struct rtc_time *time);
|
|
|
|
/* Common functions */
|
|
int rtc_to_tm(int tim, struct rtc_time *tm);
|
|
unsigned long rtc_mktime(const struct rtc_time *tm);
|
|
void rtc_display(const struct rtc_time *tm);
|
|
int rtc_invalid(const struct rtc_time *tm);
|
|
|
|
#endif /* _RTC_H_ */
|