diff options
author | kaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk> | 2004-11-29 10:09:43 +0000 |
---|---|---|
committer | kaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk> | 2004-11-29 10:09:43 +0000 |
commit | d053e605831b1d58ab951db9347a83694581338f (patch) | |
tree | c4b80e5a52619049454115e7ba0e77a6c81bdb6b /xen/include/asm-x86/mtrr.h | |
parent | 001350e508669e1688464cccd55919ef4b80b6c3 (diff) | |
download | xen-d053e605831b1d58ab951db9347a83694581338f.tar.gz xen-d053e605831b1d58ab951db9347a83694581338f.tar.bz2 xen-d053e605831b1d58ab951db9347a83694581338f.zip |
bitkeeper revision 1.1159.187.32 (41aaf567IYxx6S0v45_yrK6nVpncuA)
Pull Linux MTRR driver into Xen. This ensures that MTRRs are consistent
across all CPUs at boot time. We still need to export MTRR setting via
the control interface, and virtualise the XenLinux MTRR driver.
Diffstat (limited to 'xen/include/asm-x86/mtrr.h')
-rw-r--r-- | xen/include/asm-x86/mtrr.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/xen/include/asm-x86/mtrr.h b/xen/include/asm-x86/mtrr.h new file mode 100644 index 0000000000..8f615809c7 --- /dev/null +++ b/xen/include/asm-x86/mtrr.h @@ -0,0 +1,22 @@ +#ifndef __ASM_X86_MTRR_H__ +#define __ASM_X86_MTRR_H__ + +#include <xen/config.h> + +/* These are the region types. They match the architectural specification. */ +#define MTRR_TYPE_UNCACHABLE 0 +#define MTRR_TYPE_WRCOMB 1 +#define MTRR_TYPE_WRTHROUGH 4 +#define MTRR_TYPE_WRPROT 5 +#define MTRR_TYPE_WRBACK 6 +#define MTRR_NUM_TYPES 7 + +extern int mtrr_add(unsigned long base, unsigned long size, + unsigned int type, char increment); +extern int mtrr_add_page(unsigned long base, unsigned long size, + unsigned int type, char increment); +extern int mtrr_del(int reg, unsigned long base, unsigned long size); +extern int mtrr_del_page(int reg, unsigned long base, unsigned long size); +extern void mtrr_centaur_report_mcr(int mcr, u32 lo, u32 hi); + +#endif /* __ASM_X86_MTRR_H__ */ |