Statistics
| Branch: | Revision:

root / hw / i386 / pc_piix.c @ 43a52ce6

History | View | Annotate | Download (20.5 kB)

# Date Author Comment
5650f5f4 08/21/2013 11:30 pm Markus Armbruster

pc: Don't prematurely explode QEMUMachineInitArgs

Don't explode QEMUMachineInitArgs before passing it to pc_init1().

Signed-off-by: Markus Armbruster <>
Reviewed-by: Laszlo Ersek <>
Reviewed-by: Eduardo Habkost <>...

43a52ce6 08/21/2013 11:30 pm Eduardo Habkost

pc: Kill pc_init_pci_1_0()

The pc_init_pci_1_2()/pc_init_pci_1_0() split was made on commit
6fd028f64f662c801fd5a54d0e3a1d2baeee93ea, in preparation for commit
9953f8822cc316eec9962f0a2858c3439a80adec. The latter was reverted, so there's
no reason to keep two separate functions that do exactly the same, anymore....

c0b4cc1f 08/21/2013 12:18 am Michael S. Tsirkin

pc: cleanup 1.4 compat support

Make 1.4 compat code call the 1.6 one, reducing
code duplication. Add comment explaining why we can't
make 1.4 call 1.5 as usual.

Signed-off-by: Michael S. Tsirkin <>
Reviewed-by: Andreas Färber <>...

04920fc0 08/21/2013 12:18 am Michael S. Tsirkin

loader: store FW CFG ROM files in RAM

ROM files that are put in FW CFG are copied to guest ram, by BIOS, but
they are not backed by RAM so they don't get migrated.

Each time we change two bytes in such a ROM this breaks cross-version
migration: since we can migrate after BIOS has read the first byte but...

02653c5e 08/13/2013 05:02 pm Anthony Liguori

pvpanic: fix bad merge

Context matching caused the 'has_pvpanic = true' to be applied to
the 1.6 machine type instead of the 1.5 machine type.

Reported-by: Markus Armbruster <>
Reported-by: Michael S. Tsirkin <>
Signed-off-by: Anthony Liguori <>

9d054ea5 08/12/2013 11:03 pm Anthony Liguori

Merge remote-tracking branch 'afaerber/tags/qom-cpu-for-anthony' into staging

QOM CPUState refactorings

  • Fix X86CPU Westmere CPUID for pc-*-1.4 and older
  • afaerber/tags/qom-cpu-for-anthony:
    pc: Remove PCLMULQDQ from Westmere on pc-*-1.4 and older

Conflicts:...

9fb7aaaf 08/12/2013 10:59 pm Anthony Liguori

pc: drop external DSDT loading

This breaks migration and is unneeded with modern SeaBIOS.

Signed-off-by: Anthony Liguori <>
Message-id:

7f3e341a 08/12/2013 07:20 pm Marcel Apfelbaum

hw/misc: don't create pvpanic device by default

This patch is based on Hu Tao's:
http://lists.nongnu.org/archive/html/qemu-devel/2013-08/msg00124.html

No need to hard-code pvpanic as part of the machine.
It can be added with "-device pvpanic" from command line (The next patch)....

56383703 08/12/2013 06:33 pm Eduardo Habkost

pc: Remove PCLMULQDQ from Westmere on pc-*-1.4 and older

Commit 41cb383f42d0cb51d8e3e25e3ecebc954dd4196f made a guest-visible
change by adding the PCLMULQDQ bit to Westmere without adding
compatibility code to keep the ABI for older machine-types.
Fix it by adding the missing compat code....

a904410a 08/12/2013 05:31 pm Paolo Bonzini

pc_sysfw: remove the rom_only property

With the new semantics of pc_sysfw (no -pflash implies "old-style" ROM setup,
-pflash implies "new-style" ROM setup), there is no need anymore for a compat
property. Old machines simply will never use -pflash, and thus will always...

6dd2a5c9 08/12/2013 05:31 pm Paolo Bonzini

pc_sysfw: do not make it a device anymore

Move the code to hw/i386, the sole remaining property is available
as !pci_enabled.

Signed-off-by: Paolo Bonzini <>
Signed-off-by: Markus Armbruster <>
Message-id: ...

9604f70f 08/12/2013 12:05 pm Michael S. Tsirkin

pc: disable pci-info for 1.6

The BIOS that we ship in 1.6 does not use pci info
from host (yet). Several issues turned up
(e.g. around winXP boot crashes). So it's safest to disable that
interface for 1.6 machine types for now, leave it on for 1.7
as we have enough time to fix issues if any....

39848901 07/30/2013 03:33 am Igor Mammedov

pc: limit 64 bit hole to 2G by default

It turns out that some 32 bit windows guests crash
if 64 bit PCI hole size is >2G.
Limit it to 2G for piix and q35 by default.
User may override default 64-bit PCI hole size by
using "pci-hole64-size" property.

Examples:...

182735ef 07/09/2013 10:32 pm Andreas Färber

cpu: Make first_cpu and next_cpu CPUState

Move next_cpu from CPU_COMMON to CPUState.
Move first_cpu variable to qom/cpu.h.

gdbstub needs to use CPUState::env_ptr for now.
cpu_copy() no longer needs to save and restore cpu_next.

Acked-by: Paolo Bonzini <>...

dc11549e 07/08/2013 04:00 pm Anthony Liguori

Merge remote-tracking branch 'mst/tags/for_anthony' into staging

pci,misc enhancements

This includes some pci enhancements:

Better support for systems with multiple PCI root buses
FW cfg interface for more robust pci programming in BIOS
Minor fixes/cleanups for fw cfg and cross-version migration -...

1ef7a2a2 07/07/2013 11:10 pm David Gibson

pci: Abolish pci_find_root_bus()

pci_find_root_bus() takes a domain parameter. Currently PCI root buses
with domain other than 0 can't be created, so this is more or less a long
winded way of retrieving the main PCI root bus. Numbered domains don't
actually properly cover the (non x86) possibilities for multiple PCI root...

2c9b15ca 07/04/2013 06:42 pm Paolo Bonzini

memory: add owner argument to initialization functions

Signed-off-by: Paolo Bonzini <>

3459a625 07/04/2013 10:40 am Michael S. Tsirkin

pci: store PCI hole ranges in guestinfo structure

Will be used to pass hole ranges to guests.

Signed-off-by: Michael S. Tsirkin <>

f8c457b8 07/04/2013 10:40 am Michael S. Tsirkin

pc: pass PCI hole ranges to Guests

Guest currently has to jump through lots of hoops to guess the PCI hole
ranges. It's fragile, and makes us change BIOS each time we add a new
chipset. Let's report the window in a ROM file, to make BIOS do exactly
what QEMU intends....

fcbe0a70 07/04/2013 10:40 am Michael S. Tsirkin

pc_piix: cleanup init compat handling

Make sure 1.4 calls 1.5, 1.3 calls 1.4 etc.
This way it's enough to add enough new compat hook
in a single place in piix.

Signed-off-by: Michael S. Tsirkin <>

39ae4972 06/25/2013 03:00 pm Paul Durrant

Move hardcoded initialization of xen-platform device.

Creation of the xen-platform device is currently hardcoded into machine
type pc's initialization code, guarded by a test for the whether the xen
accelerator is enabled. This patch moves the creation of xen-platform into...

a97d6fe6 06/25/2013 03:00 pm Paul Durrant

Allow use of pc machine type (accel=xen) for Xen HVM domains.

Xen HVM domains normally spawn QEMU with a dedicated xenfv machine type. The
initialization code for this machine type can easily be pulled into the
generic pc initialization code and guarded with a test for whether the xen...

fc744bb1 06/25/2013 02:59 pm Stefano Stabellini

Revert "xen: start PCI hole at 0xe0000000 (same as pc_init1 and qemu-xen-traditional)"

This reverts commit 9f24a8030a70ea4954b5b8c48f606012f086f65f.

The start of the PCI hole is actually set to 0xf0000000 by hvmloader.
In order to retain ABI compatibility with Xen we leave the start of the...

93c8e4dc 06/24/2013 09:41 am Gerd Hoffmann

usb: fix serial number for hid devices

commit 7b074a22dab4bdda9864b933f1bc811a3db42845 changed the serial
number of hid devices. Add compat properties to keep the old serial
number for qemu 0.12 and older.

Signed-off-by: Gerd Hoffmann <>

371a775d 06/15/2013 01:53 pm Blue Swirl

Merge branch 'realize-isa.v2' of git://github.com/afaerber/qemu-cpu

  • 'realize-isa.v2' of git://github.com/afaerber/qemu-cpu:
    qdev: Drop FROM_QBUS() macro
    isa: QOM'ify ISADevice
    isa: QOM'ify ISABus
    i8259: Convert PICCommonState to use QOM realizefn...
45053fde 06/11/2013 12:33 am Eduardo Habkost

pc: Create pc-*-1.6 machine-types

Some CPU model fixes are going to be included and they will require
compatibility properties in the pc-*-1.5 machine-types.

Signed-off-by: Eduardo Habkost <>
Reviewed-by: Igor Mammedov <>...

ffce9ebb 06/11/2013 12:33 am Eduardo Habkost

target-i386: Update model values on Conroe/Penryn/Nehalem CPU models

The CPUID model values on Conroe, Penryn, and Nehalem are too
conservative and don't reflect the values found on real Conroe, Penryn,
and Nehalem CPUs.

This causes at least one known problems: Windows XP disables sysenter...

4a17cc4f 06/07/2013 03:55 pm Andreas Färber

isa: QOM'ify ISADevice

Rename its parent field and use DEVICE where necessary.

Signed-off-by: Andreas Färber <>

8819c10b 06/04/2013 10:58 pm Anthony Liguori

Merge remote-tracking branch 'sstabellini/xen_fixes_20130603' into staging

  • sstabellini/xen_fixes_20130603:
    xen: use pc_init_pci instead of pc_init_pci_no_kvmclock
    xen: remove xen_vcpu_init
    xen: start PCI hole at 0xe0000000 (same as pc_init1 and qemu-xen-traditional)...
9f24a803 06/03/2013 06:41 pm Stefano Stabellini

xen: start PCI hole at 0xe0000000 (same as pc_init1 and qemu-xen-traditional)

We are currently setting the PCI hole to start at HVM_BELOW_4G_RAM_END,
that is 0xf0000000.
Start the PCI hole at 0xe0000000 instead, that is the same value used by
pc_init1 and qemu-xen-traditional....

95222d09 06/03/2013 06:41 pm Stefano Stabellini

xen: remove xen_vcpu_init

No need for xen_vcpu_init anymore:

- the RTC emulator doesn't have any periodic timers continuously running
even in absence of guest interactions anymore;

- qemu_dummy_start_vcpu takes care of disabling TCG for us, so we don't...

9cdf79d0 06/03/2013 06:41 pm Stefano Stabellini

xen: use pc_init_pci instead of pc_init_pci_no_kvmclock

Call kvmclock_create only if kvmclock_enabled.
Use pc_init_pci on Xen rather than pc_init_pci_no_kvmclock.

Signed-off-by: Stefano Stabellini <>

a88b362c 06/02/2013 06:14 pm Laszlo Ersek

refer to FWCfgState explicitly

Currently some places use pointer-to-void even though they mean
pointer-to-FWCfgState. Clean them up.

Signed-off-by: Laszlo Ersek <>
Reviewed-by: Anthony Liguori <>
Signed-off-by: Michael S. Tsirkin <>

dade922f 05/29/2013 04:15 pm Jordan Justen

isapc: Fix non-KVM qemu boot (read/write memory for isapc BIOS)

The isapc machine with seabios currently requires the BIOS region
to be read/write memory rather than read-only memory.

KVM currently cannot support the BIOS as a ROM region, but qemu
in non-KVM mode can. Based on this, isapc machine currently only...

9e1c2ec8 05/13/2013 05:52 pm Paolo Bonzini

Revert "pc: Kill the "use flash device for BIOS unless KVM" misfeature"

This reverts commit 9953f8822cc316eec9962f0a2858c3439a80adec.
While Markus's analysis is entirely correct, there are 1.6 patches
that fix the bug for real and without requiring machine type hacks....

4458c236 05/06/2013 11:27 pm Borislav Petkov

target-i386: n270 can MOVBE

The Atom core (cpu name "n270" in QEMU speak) supports MOVBE. This is
needed when booting 3.8 and later linux kernels built with the MATOM
target because we require MOVBE in order to boot properly now.

Signed-off-by: Borislav Petkov <>...

c649983b 05/01/2013 02:06 pm Igor Mammedov

pc: Implement QEMUMachine::hot_add_cpu hook

Signed-off-by: Igor Mammedov <>
Reviewed-by: Eduardo Habkost <>
Signed-off-by: Andreas Färber <>

f0513d2c 05/01/2013 02:06 pm Igor Mammedov

target-i386: Introduce ICC bus/device/bridge

Provides a hotpluggable bus for APIC and CPU.

  • icc-bridge will serve as a parent for icc-bus and provide
    mmio mapping services to child icc-devices.
  • icc-device will replace SysBusDevice as a parent of APIC...
62fc403f 05/01/2013 02:06 pm Igor Mammedov

target-i386: Attach ICC bus to CPU on its creation

X86CPU should have parent bus so it could provide bus for child APIC.

Signed-off-by: Igor Mammedov <>
Signed-off-by: Andreas Färber <>

3ab135f3 04/30/2013 06:30 pm Hu Tao

pvpanic: create pvpanic by default for machine 1.5

Signed-off-by: Paolo Bonzini <>
Signed-off-by: Hu Tao <>
Reviewed-by: Markus Armbruster <>
Message-id: ...

b7da6c60 04/30/2013 05:34 pm Paolo Bonzini

pc_piix: remove undesired change in pc_init1

Introduced when applying commit f81222b (audio: look for the ISA and
PCI buses, 2013-04-18).

Signed-off-by: Paolo Bonzini <>
Message-id: ...

b3e6d591 04/29/2013 08:17 pm Paolo Bonzini

audio: enable PCI audio cards for all PCI-enabled targets

Signed-off-by: Paolo Bonzini <>
Message-id:
Signed-off-by: Anthony Liguori <>

f81222bc 04/29/2013 08:16 pm Paolo Bonzini

audio: look for the ISA and PCI buses

Signed-off-by: Paolo Bonzini <>
Message-id:
Signed-off-by: Anthony Liguori <>

020c8e76 04/29/2013 04:27 pm Andreas Färber

fdc: QOM'ify ISA floppy controller

Introduce type constant and cast macro to obsolete DO_UPCAST().
Reuse type constant for PC machine compatibility settings.

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <>
Signed-off-by: Andreas Färber <>...

9953f882 04/24/2013 09:23 pm Markus Armbruster

pc: Kill the "use flash device for BIOS unless KVM" misfeature

Use of a flash memory device for the BIOS was added in series "[PATCH
v10 0/8] PC system flash support", commit 4732dca..1b89faf, v1.1.

Flash vs. ROM is a guest-visible difference. Thus, flash use had to...

36afbc51 04/24/2013 09:23 pm Markus Armbruster

pc: Inline pc_init_pci_1_3() into pc_init_pci_1_2()

Just to make the commit after next easier to review.

Signed-off-by: Markus Armbruster <>
Message-id:
Signed-off-by: Anthony Liguori <>

6fd028f6 04/24/2013 09:23 pm Markus Armbruster

pc: Split pc_init_pci_1_0() off pc_init_pci_1_2()

Just to make the next commit easier to review.

Signed-off-by: Markus Armbruster <>
Message-id:
Signed-off-by: Anthony Liguori <>

0445259b 04/15/2013 04:16 pm Michael S. Tsirkin

acpi: move declarations from pc.h to acpi.h

Functions defined in acpi/ should be declared in
acpi.h

Signed-off-by: Michael S. Tsirkin <>
Signed-off-by: Paolo Bonzini <>

0d09e41a 04/08/2013 07:13 pm Paolo Bonzini

hw: move headers to include/

Many of these should be cleaned up with proper qdev-/QOM-ification.
Right now there are many catch-all headers in include/hw/ARCH depending
on cpu.h, and this makes it necessary to compile these files per-target.
However, fixing this does not belong in these patches....

c3affe56 03/12/2013 11:35 am Andreas Färber

cpu: Pass CPUState to cpu_interrupt()

Move it to qom/cpu.h to avoid issues with include order.

Change pc_acpi_smi_interrupt() opaque to X86CPU.

Signed-off-by: Andreas Färber <>

6e72a00f 03/11/2013 02:56 am Anthony Liguori

Merge remote-tracking branch 'bonzini/hw-dirs' into staging

  • bonzini/hw-dirs:
    sh: move files referencing CPU to hw/sh4/
    ppc: move more files to hw/ppc
    ppc: move files referencing CPU to hw/ppc/
    m68k: move files referencing CPU to hw/m68k/
    i386: move files referencing CPU to hw/i386/...
53018216 03/01/2013 04:01 pm Paolo Bonzini

hw: move boards and other isolated files to hw/ARCH

Signed-off-by: Paolo Bonzini <>