svn commit: r322411 - in head/sys: dev/xen/timer isa x86/isa

Ian Lepore ian at FreeBSD.org
Fri Aug 11 19:02:13 UTC 2017


Author: ian
Date: Fri Aug 11 19:02:11 2017
New Revision: 322411
URL: https://svnweb.freebsd.org/changeset/base/322411

Log:
  Stop calling atrtc_set() from the xen timer clock_settime() method.  That
  removes the only reference to atrtc_set() from outside of atrtc.c, so make
  it static.
  
  The xen timer driver registers as a realtime clock with 1us resolution.  In
  the past that resulted in only the xen timer's clock_settime() getting
  called, so it would call atrtc_set() to set the hardware clock as well.  As
  of r32090, the clock_settime() method of all registered realtime clocks gets
  called, so the xen driver no longer needs to chain-call the lower-resolution
  driver.
  
  Thanks to royger@ for talking me through the xen stuff, and for testing.

Modified:
  head/sys/dev/xen/timer/timer.c
  head/sys/isa/rtc.h
  head/sys/x86/isa/atrtc.c

Modified: head/sys/dev/xen/timer/timer.c
==============================================================================
--- head/sys/dev/xen/timer/timer.c	Fri Aug 11 18:43:52 2017	(r322410)
+++ head/sys/dev/xen/timer/timer.c	Fri Aug 11 19:02:11 2017	(r322411)
@@ -64,8 +64,6 @@ __FBSDID("$FreeBSD$");
 
 #include <dev/xen/timer/timer.h>
 
-#include <isa/rtc.h>
-
 #include "clock_if.h"
 
 static devclass_t xentimer_devclass;
@@ -228,9 +226,6 @@ xentimer_settime(device_t dev __unused, struct timespe
 	 */
 	if (!xen_initial_domain())
 		return (0);
-
-	/* Set the native RTC. */
-	atrtc_set(ts);
 
 	settime.cmd = XENPF_settime64;
 	settime.u.settime64.mbz = 0;

Modified: head/sys/isa/rtc.h
==============================================================================
--- head/sys/isa/rtc.h	Fri Aug 11 18:43:52 2017	(r322410)
+++ head/sys/isa/rtc.h	Fri Aug 11 19:02:11 2017	(r322411)
@@ -118,7 +118,6 @@ extern	int atrtcclock_disable;
 int	rtcin(int reg);
 void	atrtc_restore(void);
 void	writertc(int reg, u_char val);
-void	atrtc_set(struct timespec *ts);
 #endif
 
 #endif /* _I386_ISA_RTC_H_ */

Modified: head/sys/x86/isa/atrtc.c
==============================================================================
--- head/sys/x86/isa/atrtc.c	Fri Aug 11 18:43:52 2017	(r322410)
+++ head/sys/x86/isa/atrtc.c	Fri Aug 11 19:02:11 2017	(r322411)
@@ -164,7 +164,7 @@ atrtc_restore(void)
 	rtcin(RTC_INTR);
 }
 
-void
+static void
 atrtc_set(struct timespec *ts)
 {
 	struct clocktime ct;


More information about the svn-src-head mailing list