Mailing List Archive

[PATCH 09 of 14 V3] amd iommu: Add a hypercall for hvmloader
# HG changeset patch
# User Wei Wang <wei.wang2@amd.com>
# Date 1326213608 -3600
# Node ID 2f9c68c3b521efccebebffe76d17ace7dbae5e25
# Parent 82f5e77e13c43f0e4e34dfefdd218aec092f9542
amd iommu: Add a hypercall for hvmloader.
IOMMU MMIO base address is dynamically allocated by firmware.
This patch allows hvmloader to notify hypervisor where the
iommu mmio pages are.

Signed-off-by: Wei Wang <wei.wang2@amd.com>

diff -r 82f5e77e13c4 -r 2f9c68c3b521 xen/arch/x86/hvm/hvm.c
--- a/xen/arch/x86/hvm/hvm.c Tue Jan 10 17:40:04 2012 +0100
+++ b/xen/arch/x86/hvm/hvm.c Tue Jan 10 17:40:08 2012 +0100
@@ -65,6 +65,7 @@
#include <public/memory.h>
#include <asm/mem_event.h>
#include <public/mem_event.h>
+#include <asm/hvm/svm/amd-iommu-proto.h>

bool_t __read_mostly hvm_enabled;

@@ -3677,6 +3678,9 @@ long do_hvm_op(unsigned long op, XEN_GUE
case HVM_PARAM_BUFIOREQ_EVTCHN:
rc = -EINVAL;
break;
+ case HVM_PARAM_IOMMU_BASE:
+ rc = guest_iommu_set_base(d, a.value);
+ break;
}

if ( rc == 0 )
diff -r 82f5e77e13c4 -r 2f9c68c3b521 xen/include/public/hvm/params.h
--- a/xen/include/public/hvm/params.h Tue Jan 10 17:40:04 2012 +0100
+++ b/xen/include/public/hvm/params.h Tue Jan 10 17:40:08 2012 +0100
@@ -141,7 +141,8 @@

/* Boolean: Enable nestedhvm (hvm only) */
#define HVM_PARAM_NESTEDHVM 24
+#define HVM_PARAM_IOMMU_BASE 27

-#define HVM_NR_PARAMS 27
+#define HVM_NR_PARAMS 28

#endif /* __XEN_PUBLIC_HVM_PARAMS_H__ */


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel