diff options
author | Theo de Raadt <deraadt@cvs.openbsd.org> | 2010-07-25 21:43:39 +0000 |
---|---|---|
committer | Theo de Raadt <deraadt@cvs.openbsd.org> | 2010-07-25 21:43:39 +0000 |
commit | 3cf8b3f9c645a4d2120c752576dde4cfb5bcc213 (patch) | |
tree | c9e02be8405f114a3b1f68c40df31f90098b3b62 /sys/arch/amd64/include | |
parent | 442fa8589154938ee33d15eea1605c4b76f7903e (diff) |
in the clock drivers, seperate the soft-state and hard-state which was
all jumbled up in the same functions. the rtc (mc chip) and clock (i8243)
startup was also mixed up. they the soft state and hardware state can
be started in the right order, and it is easy to restart just the
neccessary parts upon resume. tested in numerous cases:
(apic, pic) * (GENERIC.MP, GENERIC) * (mp, non-mp) * (i386, amd64)
ok kettenis
Diffstat (limited to 'sys/arch/amd64/include')
-rw-r--r-- | sys/arch/amd64/include/cpu.h | 8 | ||||
-rw-r--r-- | sys/arch/amd64/include/i82489var.h | 3 |
2 files changed, 7 insertions, 4 deletions
diff --git a/sys/arch/amd64/include/cpu.h b/sys/arch/amd64/include/cpu.h index c9730702f2f..a3e5a30d11a 100644 --- a/sys/arch/amd64/include/cpu.h +++ b/sys/arch/amd64/include/cpu.h @@ -1,4 +1,4 @@ -/* $OpenBSD: cpu.h,v 1.52 2010/07/21 14:08:09 kettenis Exp $ */ +/* $OpenBSD: cpu.h,v 1.53 2010/07/25 21:43:38 deraadt Exp $ */ /* $NetBSD: cpu.h,v 1.1 2003/04/26 18:39:39 fvdl Exp $ */ /*- @@ -290,10 +290,12 @@ void proc_trampoline(void); void child_trampoline(void); /* clock.c */ -void initrtclock(void); -void startrtclock(void); +extern void (*initclock_func)(void); +void startclocks(void); +void rtcstart(void); void i8254_delay(int); void i8254_initclocks(void); +void i8254_startclock(void); void i8254_inittimecounter(void); void i8254_inittimecounter_simple(void); diff --git a/sys/arch/amd64/include/i82489var.h b/sys/arch/amd64/include/i82489var.h index c3ceda14a91..565675b0192 100644 --- a/sys/arch/amd64/include/i82489var.h +++ b/sys/arch/amd64/include/i82489var.h @@ -1,4 +1,4 @@ -/* $OpenBSD: i82489var.h,v 1.10 2009/06/09 02:56:38 krw Exp $ */ +/* $OpenBSD: i82489var.h,v 1.11 2010/07/25 21:43:38 deraadt Exp $ */ /* $NetBSD: i82489var.h,v 1.1 2003/02/26 21:26:10 fvdl Exp $ */ /*- @@ -123,6 +123,7 @@ extern void lapic_boot_init(paddr_t); extern void lapic_set_lvt(void); extern void lapic_enable(void); extern void lapic_calibrate_timer(struct cpu_info *ci); +extern void lapic_startclock(void); extern void lapic_initclocks(void); #endif |