diff options
author | iwasaki <iwasaki@FreeBSD.org> | 2002-09-18 07:34:04 +0000 |
---|---|---|
committer | iwasaki <iwasaki@FreeBSD.org> | 2002-09-18 07:34:04 +0000 |
commit | c30c4f6198157709ed26516fd8d8a998c54c3627 (patch) | |
tree | 91383f3735230e993b71a5fb217468de6ad3c853 /sys/i386 | |
parent | e35c51c74c9136c275aff6e68216801a7262f546 (diff) | |
download | FreeBSD-src-c30c4f6198157709ed26516fd8d8a998c54c3627.zip FreeBSD-src-c30c4f6198157709ed26516fd8d8a998c54c3627.tar.gz |
Restore status register A of RTC at resume time.
This should fix the 'too many RTC interrupts and statclock seems
broken after resume' problem.
MFC after: 1 week
Diffstat (limited to 'sys/i386')
-rw-r--r-- | sys/i386/i386/tsc.c | 1 | ||||
-rw-r--r-- | sys/i386/isa/clock.c | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/sys/i386/i386/tsc.c b/sys/i386/i386/tsc.c index 52e1932..539a460 100644 --- a/sys/i386/i386/tsc.c +++ b/sys/i386/i386/tsc.c @@ -719,6 +719,7 @@ rtc_restore(void) /* Reenable RTC updates and interrupts. */ /* XXX locking is needed for RTC access? */ + writertc(RTC_STATUSA, rtc_statusa); writertc(RTC_STATUSB, RTCSB_HALT | RTCSB_24HR); writertc(RTC_STATUSB, rtc_statusb); } diff --git a/sys/i386/isa/clock.c b/sys/i386/isa/clock.c index 52e1932..539a460 100644 --- a/sys/i386/isa/clock.c +++ b/sys/i386/isa/clock.c @@ -719,6 +719,7 @@ rtc_restore(void) /* Reenable RTC updates and interrupts. */ /* XXX locking is needed for RTC access? */ + writertc(RTC_STATUSA, rtc_statusa); writertc(RTC_STATUSB, RTCSB_HALT | RTCSB_24HR); writertc(RTC_STATUSB, rtc_statusb); } |