qemu/target-i386
Eduardo Habkost 247c9de13f target-i386: Topology & APIC ID utility functions
This introduces utility functions for the APIC ID calculation, based on:
  Intel® 64 Architecture Processor Topology Enumeration
  http://software.intel.com/en-us/articles/intel-64-architecture-processor-topology-enumeration/

The code should be compatible with AMD's "Extended Method" described at:
  AMD CPUID Specification (Publication #25481)
  Section 3: Multiple Core Calcuation
as long as:
 - nr_threads is set to 1;
 - OFFSET_IDX is assumed to be 0;
 - CPUID Fn8000_0008_ECX[ApicIdCoreIdSize[3:0]] is set to
   apicid_core_width().

Unit tests included.

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
2013-01-27 14:34:27 +01:00
..
Makefile.objs x86: switch to AREG0 free mode 2012-08-14 19:01:26 +00:00
TODO
arch_dump.c exec: change RAM list to a TAILQ 2012-12-20 23:08:47 +01:00
arch_memory_mapping.c target-i386: fix bits 39:32 of the final physical address when using 4M page 2013-01-09 15:12:20 -02:00
cc_helper.c x86: Implement SMEP and SMAP 2012-10-01 08:04:22 -05:00
cc_helper_template.h x86: avoid AREG0 for condition code helpers 2012-08-14 19:01:25 +00:00
cpu-qom.h qom: move include files to include/qom/ 2012-12-19 08:31:32 +01:00
cpu.c target-i386: Introduce x86_cpu_apic_id_from_index() function 2013-01-27 14:34:27 +01:00
cpu.h target-i386: Introduce x86_cpu_apic_id_from_index() function 2013-01-27 14:34:27 +01:00
excp_helper.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
fpu_helper.c exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
helper.c target-i386: Use switch in check_hw_breakpoints() 2013-01-15 09:23:50 +01:00
helper.h exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
hyperv.c
hyperv.h hyperv: fix build on non-KVM hosts 2012-01-23 20:04:51 +00:00
int_helper.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
ioport-user.c exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
kvm-stub.c kvm: Move kvm_allows_irq0_override() to target-i386, fix return type 2012-08-09 16:16:55 +03:00
kvm.c target-i386: kvm: Set vcpu_id to APIC ID instead of CPU index 2013-01-27 14:34:26 +01:00
kvm_i386.h softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
machine.c target-i386: Define DR7 bit field constants 2013-01-15 09:14:35 +01:00
mem_helper.c exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
misc_helper.c target-i386: Use switch in check_hw_breakpoints() 2013-01-15 09:23:50 +01:00
ops_sse.h x86: avoid AREG0 for FPU helpers 2012-08-14 19:01:25 +00:00
ops_sse_header.h x86: avoid AREG0 for FPU helpers 2012-08-14 19:01:25 +00:00
seg_helper.c target-i386: Introduce hw_{local,global}_breakpoint_enabled() 2013-01-15 09:14:48 +01:00
shift_helper_template.h x86: avoid AREG0 for integer helpers 2012-08-14 19:01:25 +00:00
smm_helper.c cpu_dump_state: move DUMP_FPU and DUMP_CCOP flags from x86-only to generic 2012-10-05 15:04:43 +01:00
svm.h
svm_helper.c exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
topology.h target-i386: Topology & APIC ID utility functions 2013-01-27 14:34:27 +01:00
translate.c exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00