aboutsummaryrefslogtreecommitdiffstats
path: root/xen/arch/x86/hvm/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* Nested Virtualization core implementationcegger2011-02-281-0/+1
| | | | | | | Signed-off-by: Christoph Egger <Christoph.Egger@amd.com> Acked-by: Eddie Dong <eddie.dong@intel.com> Acked-by: Tim Deegan <Tim.Deegan@citrix.com> Committed-by: Tim Deegan <Tim.Deegan@citrix.com>
* VPMU: Migrate vpmu files into public foldersKeir Fraser2010-05-131-0/+1
| | | | Signed-off-by: Wei Wang <wei.wang2@amd.com>
* hvm: Pull SVM ASID management into common HVM code where it can be shared.Keir Fraser2009-12-081-0/+1
| | | | Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
* A few trivial cleanupsKeir Fraser2009-11-121-6/+6
| | | | | | | | Alphabetize object files and guest config options for better readability. Also remove svm interrupt prototypes which do not exist. Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
* x86/hvm: don't pass through port 0x80 in a few special casesKeir Fraser2009-06-161-0/+1
| | | | | | | | | | | | In a recent commit (99f85a28a78e96d28907fe036e1671a218fee597), KVM disabled the passthrough of this port due to known problems on certain HP laptops (see http://lkml.indiana.edu/hypermail/linux/kernel/0712.3/0872.html and http://lkml.indiana.edu/hypermail/linux/kernel/0801.0/2388.html). For Xen, don't do this globally, but rather based on a DMI black list. Signed-off-by: Jan Beulich <jbeulich@novell.com>
* x86, hvm: Hyper-V guest interface support with small set of enlightenmentsKeir Fraser2008-10-141-0/+1
| | | | | | | | | | | | | A minimal implementation of the Viridian (Hyper-V) guest interface. The only enlightenments advertised and supported are vAPIC MSRs and long-spin-wait notifications. The set of enlightenments can easily be extended in future, as they are found to provide a performance win, and configured via an extended HVM_PARAM_VIRIDIAN hvm parameter. Signed-off-by: Peter Johnston <peter.johnston@citrix.com> Signed-off-by: Tim Deegan <tim.deegan@citrix.com> Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
* MSI 5/6: add MSI support to passthrough HVM domainKeir Fraser2008-05-011-0/+1
| | | | | | | Currently it only inercept access to MSI config space, no MSI-x support. Signed-off-by: Jiang Yunhong <yunhong.jiang@intel.com> Signed-off-by: Shan Haitao <haitao.shan@intel.com>
* Move iommu code to arch-generic locations, and also clean up some VT-d code.Keir Fraser2008-03-171-1/+0
| | | | Signed-off-by: Weidong Han <weidong.han@intel.com>
* x86 hvm: More emulation simplifications.Keir Fraser2008-02-221-1/+0
| | | | Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
* x86 hvm: Replace old MMIO emulator with x86_emulate()-based harness.Keir Fraser2008-02-201-1/+1
| | | | | Re-factor VMX real-mode emulation to use the same harness. Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
* x86 iommu: Define vendor-neutral interface for access to IOMMU.Keir Fraser2008-02-141-0/+1
| | | | | Signed-off-by: Wei Wang <wei.wang2@amd.com> Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
* x86, hvm: Allow stdvga acceleration to work with 32-bit x86.Keir Fraser2007-11-161-2/+1
| | | | Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
* x86, hvm: Clean up code style in stdvga code and do not compile forKeir Fraser2007-10-291-1/+2
| | | | | 32-bit hypervisor (it doesn't work). Signed-off-by: Keir Fraser <keir@xensource.com>
* x86, hvm: Improve standard VGA performanceKeir Fraser2007-10-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch improves the performance of Standard VGA, the mode used during Windows boot and by the Linux splash screen. It does so by buffering all the stdvga programmed output ops and memory mapped ops (both reads and writes) that are sent to QEMU. We maintain locally essential VGA state so we can respond immediately to input and read ops without waiting for QEMU. We snoop output and write ops to keep our state up-to-date. PIO input ops are satisfied from cached state without bothering QEMU. PIO output and mmio ops are passed through to QEMU, including mmio read ops. This is necessary because mmio reads can have side effects. I have changed the format of the buffered_iopage. It used to contain 80 elements of type ioreq_t (48 bytes each). Now it contains 672 elements of type buf_ioreq_t (6 bytes each). Being able to pipeline 8 times as many ops improves VGA performance by a factor of 8. I changed hvm_buffered_io_intercept to use the same registration and callback mechanism as hvm_portio_intercept rather than the hacky hardcoding it used before. In platform.c, I fixed send_timeoffset_req() to sets its ioreq size to 8 (rather than 4), and its count to 1 (which was missing). Signed-off-by: Ben Guthro <bguthro@virtualron.com> Signed-off-by: Robert Phillips <rphillips@virtualiron.com>
* hvm/x86: MTRR/PAT virtualisation.Keir Fraser2007-10-221-0/+1
| | | | Signed-off-by: Disheng Su <disheng.su@intel.com>
* [HVM] Save/restore: move save/restore routines out of intercept.cTim Deegan2007-02-071-0/+1
| | | | Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
* [HVM] Emulates HPET in hypervisor and extend ACPI tables.kfraser@localhost.localdomain2006-12-211-0/+1
| | | | | | Signed-off-by: Dexuan Cui <dexuan.cui@intel.com> Signed-off-by: Eddie Dong <eddie.dong@intel.com> Signed-off-by: Xiaowei Yang <xiaowei.yang@intel.com>
* [HVM] Enable more than one platform timer (PIT/RTC/HPET)kfraser@localhost.localdomain2006-12-201-0/+1
| | | | | | | | | | | programmed as periodic timer and adds them to abstract layer, which keeps track of pending_intr_nr to avoid time interrupt lost and sync'ed timer with TSC. It also makes some cleanup to the time related code. Signed-off-by: Xiaowei Yang <xiaowei.yang@intel.com> Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
* [HVM] Update VPIC device model for new interrupt delivery code.kaf24@localhost.localdomain2006-11-261-1/+1
| | | | | | Move BSP VLAPIC initialisation to hvmloader. Remove callback_irq update hack from Linux unmodified drivers. Signed-off-by: Keir Fraser <keir@xensource.com>
* [HVM] Reworked interrupt distribution logic.kfraser@localhost.localdomain2006-11-211-2/+3
| | | | | | | | | | | | | TODO: 1. Fix IO-APIC ID to not conflict with LAPIC IDS. 2. Fix i8259 device model (seems to work already though!). 3. Add INTSRC overrides in MPBIOS and ACPI tables so that PCI legacy IRQ routing always ends up at an IO-APIC input with level trigger. Restricting link routing to {5,6,10,11} and setting overrides for all four of those would work. Signed-off-by: Keir Fraser <keir@xensource.com>
* [HVM] Move ACPI timer to HV, which is the last platform timer in Qemu.kfraser@localhost.localdomain2006-10-251-0/+1
| | | | | | | | | | | | | | | | | | | | We found Vista polls ACPI timer very frequently (about 15 times averagely) when handling timer (RTC @ 64HZ) interrupt routine. Though the exact reason is known, it should be related to system time adjustment. When it's in Qemu, the overhead is big. After moving, Vista's idle overhead decreases dramatically from ~10% to 0.9%.=20 Another benefit is that Vista can only pass Performance rating with this patch. The root cause is that ACPI timer in Qemu isn't synchronous with other platform timer in HV, which results in Vista complains "can't measure TSC frequency". This patch changes vpit.h to vpt.h, for it not only has pit structure in it, but other platform timer's structure. Another change is moving ACPI timer and related address from acpi.h to ioreq.h, which can be shared by HV and ACPI firmware. Signed-off-by: Xiaowei Yang <xiaowei.yang@intel.com>
* [HVM] Move RTC emulation into the hypervisor.kfraser@localhost.localdomain2006-10-181-0/+1
| | | | Signed-off-by: Xiaowei Yang <xiaowei.yang@intel.com>
* [HVM] Use AMD's isntruction-length decoder for VMX as well as SVMkfraser@localhost.localdomain2006-09-251-0/+1
| | | | | | | | | | MMIO decode. The VMX-defined instruction-length info field is not valid for use during most page faults. Hence we have to obtain the instruction length the slow-and-stupid way. This *will* go away when we throw away the wretched MMIO emulator. Signed-off-by: Keir Fraser <keir@xensource.com>
* Sync PIT device model with latest qemu and move it to hypervisor.kaf24@firebug.cl.cam.ac.uk2006-04-191-0/+1
| | | | | Signed-off-by: Edwin Zhai <edwin.zhai@intel.com>
* Clean up build system some more. No need to explicitlykaf24@firebug.cl.cam.ac.uk2006-04-051-4/+0
| | | | | | | | include Rules.mk/Post.mk all over the place. Signed-off-by: Keir Fraser <keir@xensource.com>
* Some more build-system finessing:kaf24@firebug.cl.cam.ac.uk2006-03-201-2/+2
| | | | | | | | | | | | 1. subdirs-y -> subdir-y (match Linux name, and also obj-y is singular so this makes sense). 2. subdirs can be declared with or without trailing slash 3. As with Linux, subdirs can be declared in the obj-y list but they must be distinguished by a trailing slash Signed-off-by: Keir Fraser <keir@xensource.com>
* Move arch/x86 to new build system.kaf24@firebug.cl.cam.ac.uk2006-03-191-0/+14
Signed-off-by: Keir Fraser <keir@xensource.com>