libpayload: Add gettimeofday() and friends

Add a gettimeofday() implementation - it works pretty well, but it
drifts a little bit so its not very suitable for keeping time.  It
works best to track changes in time over small periods of time.

Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3272 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
Jordan Crouse
2008-04-25 23:11:02 +00:00
parent d772e1e7fe
commit e2271430c5
7 changed files with 200 additions and 4 deletions

View File

@ -61,10 +61,26 @@
#define NVRAM_RTC_DAY 7
#define NVRAM_RTC_MONTH 8
#define NVRAM_RTC_YEAR 9
#define NVRAM_RTC_FREQ_SELECT 10
#define NVRAM_RTC_UIP 0x80
struct tm {
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
};
/* drivers/nvram.c */
u8 nvram_read(u8 addr);
void nvram_write(u8 val, u8 addr);
int nvram_updating(void);
void rtc_read_clock(struct tm *tm);
/* drivers/keyboard.c */
void keyboard_init(void);
@ -182,6 +198,15 @@ char *strchr(const char *s, int c);
char *strdup(const char *s);
char *strstr(const char *h, const char *n);
/* libc/time.c */
struct timeval {
time_t tv_sec;
suseconds_t tv_usec;
};
int gettimeofday(struct timeval *tv, void *tz);
/* i386/coreboot.c */
int get_coreboot_info(struct sysinfo_t *info);