diff options
author | Jan Beulich <jbeulich@suse.com> | 2012-09-21 17:02:46 +0200 |
---|---|---|
committer | Jan Beulich <jbeulich@suse.com> | 2012-09-21 17:02:46 +0200 |
commit | 1b33d3acd1a7550b858379f38e01e085dc444d08 (patch) | |
tree | 7c97db23a20fa3e9c258e53e81952cabddd4702a /xen/arch/x86/acpi/suspend.c | |
parent | 508609eec58f748a1f86953322e6ac32ae0b3c19 (diff) | |
download | xen-1b33d3acd1a7550b858379f38e01e085dc444d08.tar.gz xen-1b33d3acd1a7550b858379f38e01e085dc444d08.tar.bz2 xen-1b33d3acd1a7550b858379f38e01e085dc444d08.zip |
x86: enable VIA CPU support
Newer VIA CPUs have both 64-bit and VMX support. Enable them to be
recognized for these purposes, at once stripping off any 32-bit CPU
only bits from the respective CPU support file, and adding 64-bit ones
found in recent Linux.
This particularly implies untying the VMX == Intel assumption in a few
places.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'xen/arch/x86/acpi/suspend.c')
-rw-r--r-- | xen/arch/x86/acpi/suspend.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/xen/arch/x86/acpi/suspend.c b/xen/arch/x86/acpi/suspend.c index 9f7f3545b0..c690b45345 100644 --- a/xen/arch/x86/acpi/suspend.c +++ b/xen/arch/x86/acpi/suspend.c @@ -32,7 +32,8 @@ void save_rest_processor_state(void) rdmsrl(MSR_SHADOW_GS_BASE, saved_kernel_gs_base); rdmsrl(MSR_CSTAR, saved_cstar); rdmsrl(MSR_LSTAR, saved_lstar); - if ( boot_cpu_data.x86_vendor == X86_VENDOR_INTEL ) + if ( boot_cpu_data.x86_vendor == X86_VENDOR_INTEL || + boot_cpu_data.x86_vendor == X86_VENDOR_CENTAUR ) { rdmsrl(MSR_IA32_SYSENTER_ESP, saved_sysenter_esp); rdmsrl(MSR_IA32_SYSENTER_EIP, saved_sysenter_eip); @@ -59,7 +60,8 @@ void restore_rest_processor_state(void) wrmsrl(MSR_GS_BASE, saved_gs_base); wrmsrl(MSR_SHADOW_GS_BASE, saved_kernel_gs_base); - if ( boot_cpu_data.x86_vendor == X86_VENDOR_INTEL ) + if ( boot_cpu_data.x86_vendor == X86_VENDOR_INTEL || + boot_cpu_data.x86_vendor == X86_VENDOR_CENTAUR ) { /* Recover sysenter MSRs */ wrmsrl(MSR_IA32_SYSENTER_ESP, saved_sysenter_esp); |