Date: Tue, 23 Dec 2003 01:04:19 +0100 (CET) From: Barry Bouwsma <freebsd-misuser@remove-NOSPAM-to-reply.NOSPAM.dyndns.dk> To: Freebsd Current <current@FreeBSD.org> Subject: CMOS checksums (was: Re: SC520 and reboot ) Message-ID: <200312230004.hBN04Jo03608@NOSPAM.spam.NOSPAM.spam.NOSPAM.dyndns.dk> References: <23707.1071348202@critter.freebsd.dk> <20031214090456.Q7016@gamplex.bde.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[Drop my IPv6 address for any replies or hostname-only for IPv4...] Bruce Evans <bde@zeta.org.au> wrote... > On Sat, 13 Dec 2003, Poul-Henning Kamp wrote: > > If you run adjkerntz -a it fiddles the CMOS RTC clock and possibly the > > "century" byte I think. If your BIOS uses a checksum on the RTC and > > adjkerntz doesn't know about it, your BIOS will think the contents is > > trashed. > Actually, adjkerntz -a uses the MI interface resettodr() to set the > hardware clock, CMOS or otherwise. This has the same tiny chance of This sounds like what my latest found motherboard is suffering from. It has two problems affecting shutdowns: 1) Often, the CMOS checksum is claimed to be invalid at poweron, so my BIOS settings are lost, but not always; 2) It appears to stop keeping time at poweroff, I think. When I boot back up, ntpdate steps the time by an amount comparable to the time I had it off to swap cards or whatnot. I had to replace the on-board lithium battery, otherwise I'd lose CMOS checksums every time. Ideally I'd rather never powerdown, but I'm wondering if it's possible for FreeBSD to ignore the CMOS clock -- never updating it, either with resettodr() (in sys/kern/kern_time.c that I've found; haven't done a rigorous search yet) or any other call that jerks around the CMOS time, so I can avoid, hopefully, the checksum errors that pop up now and then. Meaning my CMOS time would remain 2008 or 1986 or whatever it's set itself to randomly, or 2003/2004 but losing a few minutes each poweroff, while the system time would be set at boot (ntpdate/ntpd) and remain accurate. There would be no correlation between the two, other than that the CMOS time ticks so long as power is applied. Is this possible, or am I going to break something, more than the occasional CMOS checksum failures I get now? Seems like I'd comment out any resettodr() calls I find, and if anything else adjusts the CMOS clock, I'd have to find and comment it out too. Comments? The motherboard seems of vintage 1994-1997-ish, intended for Pentiums of roughly 75-150MHz speed. It has other minor issues too, but seems to work otherwise... thanks barry bouwsma scrap computer collector
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200312230004.hBN04Jo03608>