freebsd-nq/sys
Roger Pau Monné 5f05c79450 xen: implement an early timer for Xen PVH
When running as a PVH guest, there's no emulated i8254, so we need to
use the Xen PV timer as the early source for DELAY. This change allows
for different implementations of the early DELAY function and
implements a Xen variant for it.

Approved by: gibbs
Sponsored by: Citrix Systems R&D

dev/xen/timer/timer.c:
dev/xen/timer/timer.h:
 - Implement Xen early delay functions using the PV timer and declare
   them.

x86/include/init.h:
 - Add hooks for early clock source initialization and early delay
   functions.

i386/i386/machdep.c:
pc98/pc98/machdep.c:
amd64/amd64/machdep.c:
 - Set early delay hooks to use the i8254 on bare metal.
 - Use clock_init (that will in turn make use of init_ops) to
   initialize the early clock source.

amd64/include/clock.h:
i386/include/clock.h:
 - Declare i8254_delay and clock_init.

i386/xen/clock.c:
 - Rename DELAY to i8254_delay.

x86/isa/clock.c:
 - Introduce clock_init that will take care of initializing the early
   clock by making use of the init_ops hooks.
 - Move non ISA related delay functions to the newly introduced delay
   file.

x86/x86/delay.c:
 - Add moved delay related functions.
 - Implement generic DELAY function that will use the init_ops hooks.

x86/xen/pv.c:
 - Set PVH hooks for the early delay related functions in init_ops.

conf/files.amd64:
conf/files.i386:
conf/files.pc98:
 - Add delay.c to the kernel build.
2014-03-11 10:20:42 +00:00
..
amd64 xen: implement an early timer for Xen PVH 2014-03-11 10:20:42 +00:00
arm Revert r262994 for now, it fails to boot on armv5. 2014-03-11 04:25:12 +00:00
boot howto_names: unify declaration 2014-03-11 10:13:06 +00:00
bsm
cam Fix support for increased logical sector size (4K-native drives). 2014-03-07 09:45:40 +00:00
cddl MFV r262983: 2014-03-11 00:23:50 +00:00
compat linprocfs: add support for /sys/kernel/random/uuid 2014-02-27 00:43:10 +00:00
conf xen: implement an early timer for Xen PVH 2014-03-11 10:20:42 +00:00
contrib Also tag the current HAL power mode in ar9300_set_power_mode(). 2014-03-10 06:05:26 +00:00
crypto
ddb
dev xen: implement an early timer for Xen PVH 2014-03-11 10:20:42 +00:00
fs ext2fs: Fix a bug when sorting htree entries. 2014-03-06 21:02:16 +00:00
gdb
geom In g_eli_crypto_hmac_init(), zero out after using the ipad buffer, 2014-02-08 05:17:49 +00:00
gnu Symbolic bindings for the dts files... 2014-02-28 16:51:33 +00:00
i386 xen: implement an early timer for Xen PVH 2014-03-11 10:20:42 +00:00
ia64 When reading physical memory, make sure to access it using the right 2014-03-04 03:19:36 +00:00
isa
kern - Make runq_steal_from more aggressive. Previously it would examine only 2014-03-08 00:35:06 +00:00
kgssapi
libkern
mips Populate the GPIO pins and GPIOLED configs 2014-03-05 04:22:07 +00:00
modules Use SYSDIR to reference to the top of the sys hierarchy. Define SYSDIR 2014-03-06 01:59:13 +00:00
net The route code used to mtx_destroy() a locked mutex before rtentry free. Now, 2014-03-05 21:16:46 +00:00
net80211 Another round of removing historical mbuf(9) allocator flags. 2014-01-16 13:44:47 +00:00
netatalk Fix build. 2014-03-05 02:35:41 +00:00
netgraph
netinet - Remove rt_metrics_lite and simply put its members into rtentry. 2014-03-05 01:17:47 +00:00
netinet6 - Remove rt_metrics_lite and simply put its members into rtentry. 2014-03-05 01:17:47 +00:00
netipsec Remove more constants related to static sysctl nodes. The MAXID constants 2014-02-25 18:44:33 +00:00
netipx - Remove rt_metrics_lite and simply put its members into rtentry. 2014-03-05 01:17:47 +00:00
netnatm
netpfil - Remove rt_metrics_lite and simply put its members into rtentry. 2014-03-05 01:17:47 +00:00
netsmb
nfs - Remove rt_metrics_lite and simply put its members into rtentry. 2014-03-05 01:17:47 +00:00
nfsclient
nfsserver
nlm Correct a typo in nlm_find_host_by_addr(): the intention of the 2014-03-11 00:25:55 +00:00
ofed Simplify filling sockaddr_dl structure for if_resolvemulti() 2014-01-18 23:24:51 +00:00
opencrypto allow the kern.cryptodevallowsoft sysctl to enable symetric/hashes too... 2014-03-11 01:45:46 +00:00
pc98 xen: implement an early timer for Xen PVH 2014-03-11 10:20:42 +00:00
pci - Implement the RX EARLYOFF and RXDV GATED bits as done by RealTek's Linux 2014-02-05 23:13:40 +00:00
powerpc Correct the order of arguments to mtx_init(). 2014-02-14 11:18:15 +00:00
rpc Fix lock acquisition in case no request space available, missed in r260097. 2014-02-04 00:00:01 +00:00
security
sparc64 Merge from head up to r262472. 2014-02-25 07:40:37 +00:00
sys howto_names: unify declaration 2014-03-11 10:13:06 +00:00
teken Fix typo. 2014-02-06 13:28:06 +00:00
tools Use proper include path for dtc as well as cpp. 2014-02-28 22:37:35 +00:00
ufs - If we fail to do a non-blocking acquire of a buf lock while doing a 2014-03-06 00:13:21 +00:00
vm After r251709, avoid a clang 3.4 warning about an unused static const 2014-02-14 17:47:18 +00:00
x86 xen: implement an early timer for Xen PVH 2014-03-11 10:20:42 +00:00
xdr
xen xen: add and enable Xen console for PVH guests 2014-03-11 10:09:23 +00:00
Makefile