/* See COPYRIGHT for copyright information. */

/* Support for two time-related hardware gadgets: 1) the run time
 * clock with its NVRAM access functions; 2) the 8253 timer, which
 * generates interrupts on IRQ 0.
 */

#include <arch/x86.h>

#include <kclock.h>

unsigned
mc146818_read(unsigned reg)
{
	outb(IO_RTC, reg);
	return inb(IO_RTC+1);
}

void
mc146818_write(unsigned reg, unsigned datum)
{
	outb(IO_RTC, reg);
	outb(IO_RTC+1, datum);
}

uint64_t read_persistent_clock(void)
{
	return 1242129600 * 1000000000UL; /* nanwan's birthday */
}
