diff options
author | kfraser@localhost.localdomain <kfraser@localhost.localdomain> | 2007-09-19 09:12:06 +0100 |
---|---|---|
committer | kfraser@localhost.localdomain <kfraser@localhost.localdomain> | 2007-09-19 09:12:06 +0100 |
commit | fbe487b996b51a958844877888ed95cec36d05bc (patch) | |
tree | 3aa0b1e98502a1cd77f7062dd1e28ea019f313e7 /xen/arch/x86/hvm/intercept.c | |
parent | 7b3cb5e541601bc0d41bc92b53451bbed11a35a8 (diff) | |
download | xen-fbe487b996b51a958844877888ed95cec36d05bc.tar.gz xen-fbe487b996b51a958844877888ed95cec36d05bc.tar.bz2 xen-fbe487b996b51a958844877888ed95cec36d05bc.zip |
PCI passthru: VT-d I/O hooks.
Signed-off-by: Allen Kay <allen.m.kay@intel.com>
Signed-off-by: Guy Zana <guy@neocleus.com>
Diffstat (limited to 'xen/arch/x86/hvm/intercept.c')
-rw-r--r-- | xen/arch/x86/hvm/intercept.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/xen/arch/x86/hvm/intercept.c b/xen/arch/x86/hvm/intercept.c index e9712ce791..7dadea6d47 100644 --- a/xen/arch/x86/hvm/intercept.c +++ b/xen/arch/x86/hvm/intercept.c @@ -29,6 +29,7 @@ #include <asm/current.h> #include <io_ports.h> #include <xen/event.h> +#include <asm/iommu.h> extern struct hvm_mmio_handler hpet_mmio_handler; @@ -243,6 +244,9 @@ int hvm_io_intercept(ioreq_t *p, int type) int i; unsigned long addr, size; + if ( (type == HVM_PORTIO) && (dpci_ioport_intercept(p)) ) + return 1; + for (i = 0; i < handler->num_slot; i++) { if( type != handler->hdl_list[i].type) continue; |