qemu/include/hw
Radim Krčmář 3046bb5deb target-i386: emulate CPUID level of real hardware
W10 insider has a bug where it ignores CPUID level and interprets
CPUID.(EAX=07H, ECX=0H) incorrectly, because CPUID in fact returned
CPUID.(EAX=04H, ECX=0H);  this resulted in execution of unsupported
instructions.

While it's a Windows bug, there is no reason to emulate incorrect level.

I used http://instlatx64.atw.hu/ as a source of CPUID and checked that
it matches Penryn Xeon X5472, Westmere Xeon W3520, SandyBridge i5-2540M,
and Haswell i5-4670T.

kvm64 and qemu64 were bumped to 0xD to allow all available features for
them (and to avoid the same Windows bug).

Signed-off-by: Radim Krčmář <rkrcmar@redhat.com>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
2015-07-15 17:05:59 -03:00
..
acpi ich9: add TCO interface emulation 2015-07-07 13:12:22 +03:00
arm Stop including qemu-common.h in memory.h 2015-07-06 14:59:09 +02:00
audio isa: QOM'ify ISADevice 2013-06-07 14:55:33 +02:00
block BlockConf: Call backend functions to detect geometry and blocksizes 2015-03-10 14:02:22 +01:00
char char: cadence_uart: Split state struct and type into header 2015-05-18 16:41:12 +01:00
cpu icc_bus: QOM'ify ICC 2013-12-24 18:02:18 +01:00
cris cris: Remove the CRIS PIC glue 2014-02-03 14:04:00 +00:00
i2c smbus: return -1 if nothing found at the given address 2014-05-07 19:14:46 +03:00
i386 target-i386: emulate CPUID level of real hardware 2015-07-15 17:05:59 -03:00
input input: switch hid mouse and tablet to the new input layer api. 2014-05-26 08:42:43 +02:00
intc hw/intc/arm_gic: Make ICCICR/GICC_CTLR banked 2015-05-12 11:57:17 +01:00
ipack ipack: Move IndustryPack out of hw/char/ 2014-02-14 21:11:53 +01:00
isa pc: export applesmc IO port/len 2015-03-01 12:33:22 +01:00
kvm
lm32 hmp: Name HMP info handler functions hmp_info_SUBCOMMAND() 2015-02-18 11:58:50 +01:00
m68k
mem pc,pc-dimm: Factor out reusable parts in pc_dimm_plug to a separate routine 2015-07-03 17:47:58 -03:00
mips net/dp8393x: QOM'ify 2015-06-11 10:13:30 +01:00
misc stm32f2xx_SYSCFG: Add the stm32f2xx SYSCFG 2015-03-11 13:21:05 +00:00
net net: cadence_gem: Split state struct and type into header 2015-05-18 16:41:11 +01:00
nvram fw_cfg: remove support for guest-side data writes 2015-06-10 08:00:37 +02:00
pci pc,virtio,pci: fixes and updates 2015-07-08 13:36:19 +01:00
pci-host spapr: Merge sPAPREnvironment into sPAPRMachineState 2015-07-07 17:44:50 +02:00
ppc xics_kvm: Don't enable KVM_CAP_IRQ_XICS if already enabled 2015-07-07 17:44:52 +02:00
s390x virtio-ccw: introduce ccw specific queue limit 2015-05-31 16:45:38 +02:00
scsi esp: Do not overwrite ESP_TCHI after reset 2014-11-12 10:27:03 +01:00
sh4
sparc QOM infrastructure fixes and device conversions 2015-03-02 13:20:43 +00:00
timer stm32f2xx_timer: Add the stm32f2xx Timer 2015-03-11 13:21:05 +00:00
tricore target-tricore: Add board for systemmode 2014-09-01 14:49:20 +01:00
unicore32
usb usb: move ehci register defines to header file 2014-06-02 16:28:59 +02:00
vfio hw/vfio/platform: add irqfd support 2015-07-06 12:15:14 -06:00
virtio pc,virtio,pci: fixes and updates 2015-07-08 13:36:19 +01:00
watchdog s390x/watchdog: introduce diag288 watchdog device 2015-06-11 17:45:49 +02:00
xen Fix the compatibility typedef of ioservid_t to match the Xen headers 2015-07-08 15:51:03 +01:00
boards.h ich9: add TCO interface emulation 2015-07-07 13:12:22 +03:00
bt.h Preparation for usb-bt-dongle conditional build 2013-09-10 11:14:41 +02:00
compat.h hw: Define empty HW_COMPAT_2_[23] macros 2015-05-31 16:26:41 +02:00
devices.h arm: fix location of some include files 2013-04-15 15:16:01 +02:00
elf_ops.h elf-loader: Add missing error handling for call of lseek 2015-03-19 11:37:40 +03:00
empty_slot.h
fw-path-provider.h fw-path-provider: Change GPL version to 2+ 2014-04-07 15:36:07 +02:00
hotplug.h misc: Fix new typos in comments 2015-01-15 10:44:13 +03:00
hw.h bootdevice: move code about bootorder from vl.c to bootdevice.c 2014-12-22 14:39:20 +08:00
ide.h Call pci_piix3_xen_ide_unplug from unplug_disks 2014-02-20 17:28:08 +00:00
irq.h irq: Remove qemu_irq_intercept_out 2014-10-23 16:41:25 +02:00
loader.h vl: move rom_load_all after machine init done 2015-07-07 11:03:16 +02:00
nmi.h nmi: Implement inject_nmi() for non-monitor context use 2015-06-11 17:45:50 +02:00
pcmcia.h hmp: Remove "info pcmcia" 2014-10-24 12:19:11 +01:00
platform-bus.h sysbus: Add new platform bus helper device 2014-11-04 23:26:14 +01:00
ptimer.h vmstate: Make VMSTATE_STRUCT_POINTER take type, not ptr-to-type 2014-02-04 15:51:45 +01:00
qdev-core.h qdev: Un-deprecate qdev_init_nofail() 2015-06-19 19:14:32 +02:00
qdev-dma.h qdev: Remove hex8/32/64 property types 2014-02-14 21:12:04 +01:00
qdev-properties.h qdev: fix 64 bit properties 2015-07-13 14:42:24 +03:00
qdev.h
sd.h hw: Convert from BlockDriverState to BlockBackend, mostly 2014-10-20 14:02:25 +02:00
ssi.h ssi: Name the CS GPIO 2014-05-28 17:36:21 +02:00
stream.h Trivial grammar and spelling fixes 2013-05-01 20:55:21 +04:00
sysbus.h sysbus: add irq_routing_notifier 2015-07-06 12:15:14 -06:00
usb.h usb: Remove unused functions 2015-04-30 16:05:48 +03:00