Statistics
| Branch: | Revision:

root / include / hw @ 6a444f85

# Date Author Comment
788be8e9 09/20/2013 02:55 pm Christian Borntraeger

s390/eventfacility: Fix receive/send masks

Currently we announce interchanged receive/send masks. This did not
trigger a bug, since the sclp console has the same masks for
send/receive and the Linux guest does not check the sclp mask for simple
events like quiesce. With other event users like the sclp line mode...

8b8b1138 09/20/2013 02:55 pm Christian Borntraeger

s390/eventfacility: remove unused event_type variable

The event_type variable is never used. Get rid of it.

Signed-off-by: Christian Borntraeger <>
Reviewed-by: Alexander Graf <>

c3d9f24a 09/20/2013 02:55 pm Christian Borntraeger

s390/eventfacility: allow childs to handle more than 1 event type

Currently all handlers (quiesce, console) only handle one event type.
Some drivers will handle multiple (compatible) event types. Rework the
code accordingly.

Signed-off-by: Christian Borntraeger <>...

40fa5264 09/20/2013 02:55 pm Heinz Graalfs

s390/ebcdic: Move conversion tables to header file

Move conversion tables to header file.
- In SCLP line mode processing EBCDIC/ASCII conversion is needed.
- An additional EBCDIC to ASCII conversion function is added.

Signed-off-by: Heinz Graalfs <>...

6a444f85 09/20/2013 02:55 pm Heinz Graalfs

s390/sclplmconsole: Add support for SCLP line-mode console

Add simple support for SCLP line-mode also known as operating
system messages. This can be added in addition to or instead of
the SCLP full screen console with -device sclplmconsole.

Signed-off-by: Heinz Graalfs <>...

a640f07c 09/11/2013 10:46 pm Anthony Liguori

Merge remote-tracking branch 'kraxel/usb.89' into staging

  1. By Gerd Hoffmann (2) and Miroslav Rezanina (2)
  2. Via Gerd Hoffmann
    • kraxel/usb.89:
      ehci: save device pointer in EHCIState
      Remove dev-bluetooth.c dependency from vl.c
      Preparation for usb-bt-dongle conditional build...
97fdb941 09/11/2013 10:45 pm Anthony Liguori

Merge remote-tracking branch 'sstabellini/xen-2013-09-09' into staging

  1. By Anthony PERARD
  2. Via Stefano Stabellini
    • sstabellini/xen-2013-09-09:
      pc_q35: Initialize Xen.
      pc: Initializing ram_memory under Xen.

Message-id: ...

615fe4de 09/10/2013 12:14 pm Miroslav Rezanina

Remove dev-bluetooth.c dependency from vl.c

Use usb_legacy_register handling to create bt-dongle device and remove code
dependency from vl.c so CONFIG_USB_BLUETOOTH can be disabled.

Signed-off-by: Miroslav Rezanina <>
Signed-off-by: Gerd Hoffmann <>

644e1a8a 09/10/2013 12:14 pm Miroslav Rezanina

Preparation for usb-bt-dongle conditional build

To allow disable usb-bt-dongle device using CONFIG_BLUETOOTH option, some of
functions in vl.c file has to be made accessible in dev-bluetooth.c. This is
pure code moving.

Signed-off-by: Miroslav Rezanina <>...

04d7bad8 09/09/2013 07:22 pm Anthony PERARD

pc: Initializing ram_memory under Xen.

Signed-off-by: Anthony PERARD <>
Signed-off-by: Stefano Stabellini <>
Acked-by: Michael S. Tsirkin <>
CC:

e9845f09 09/06/2013 06:25 pm Vincenzo Maffione

e1000: add interrupt mitigation support

This patch partially implements the e1000 interrupt mitigation mechanisms.
Using a single QEMUTimer, it emulates the ITR register (which is the newer
mitigation register, recommended by Intel) and approximately emulates...

5a93d5c2 09/03/2013 08:31 pm Anthony Liguori

Merge remote-tracking branch 'mjt/trivial-patches' into staging

  1. By Stefan Weil (6) and others
  2. Via Michael Tokarev
    • mjt/trivial-patches:
      aio / timers: use g_usleep() not sleep()
      adlib: sort offsets in portio registration
      qmp: fix integer usage in examples...
9889e04a 09/03/2013 08:31 pm Anthony Liguori

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

pc,pci,virtio fixes and cleanups

This includes pc and pci cleanups and enhancements,
and a virtio bugfix for level interrupts.

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

  1. gpg: Signature made Sun 01 Sep 2013 03:15:36 AM CDT using RSA key ID D28D5469...
5cff81f0 09/03/2013 08:30 pm Anthony Liguori

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

QOM device refactorings

  • Fix QOM and ISA documentation errors
  • Extend object_initialize() et al. to check the instance size
  1. gpg: Signature made Fri 30 Aug 2013 02:19:48 PM CDT using RSA key ID 3E7E013F...
f1c2dc7c 09/02/2013 11:06 am Alexey Kardashevskiy

spapr-pci: rework MSI/MSIX

On the sPAPR platform a guest allocates MSI/MSIX vectors via RTAS
hypercalls which return global IRQ numbers to a guest so it only
operates with those and never touches MSIMessage.

Therefore MSIMessage handling is completely hidden in QEMU....

42561bf2 09/02/2013 11:06 am Anton Blanchard

pseries: Add H_SET_MODE hcall to change guest exception endianness

H_SET_MODE is used for controlling various partition settings. One
of these settings is the endianness a guest takes its exceptions in.

Signed-off-by: Anton Blanchard <>
[agraf: fix whitespace]...

4c293dc6 09/01/2013 05:59 pm Stefan Weil

misc: Fix some typos in names and comments

Most typos were found using a modified version of codespell:

accross -> across
issueing -> issuing
TICNT_THRESHHOLD -> TICNT_THRESHOLD
bandwith -> bandwidth
VCARD_7816_PROPIETARY -> VCARD_7816_PROPRIETARY
occured -> occurred...

a0dba644 09/01/2013 10:43 am Michael S. Tsirkin

pc: reduce duplication, fix PIIX descriptions

We have a lot of code duplication between machine types,
this increases with each new machine type
and each new field.

This has already introduced a minor bug: description
for pc-1.3 says "Standard PC" while description for...

520902a6 08/30/2013 10:15 pm Hervé Poussineau

isa: Fix documentation of isa_register_portio_list()

Commit b40acf9 (ioport: Switch dispatching to memory core layer,
2013-06-24) removed all instances of old_portio.

Signed-off-by: Hervé Poussineau <>
Acked-by: Paolo Bonzini <>...

fb17dfe0 08/30/2013 10:15 pm Andreas Färber

qdev: Pass size to qbus_create_inplace()

To be passed to object_initialize().

Since commit 39355c3826f5d9a2eb1ce3dc9b4cdd68893769d6 the argument is
void*, so drop some superfluous (BusState *) casts or direct parent
field usages.

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

dd301ca6 08/30/2013 09:14 pm Andreas Färber

pci: Pass size to pci_bus_new_inplace()

To be passed to qbus_create_inplace().

Reviewed-by: Wenchao Xia <>
Signed-off-by: Andreas Färber <>

b1187b51 08/30/2013 09:14 pm Andreas Färber

scsi: Pass size to scsi_bus_new()

To be passed to qbus_create_inplace().

Use DEVICE casts instead of direct parent field access.

Reviewed-by: Wenchao Xia <>
Acked-by: Paolo Bonzini <>
Signed-off-by: Andreas Färber <>

c889b3a5 08/30/2013 09:14 pm Andreas Färber

usb: Pass size to usb_bus_new()

To be passed to qbus_create_inplace().

Use DEVICE cast to avoid a direct parent field access.

Reviewed-by: Wenchao Xia <>
Signed-off-by: Andreas Färber <>

3e998a77 08/30/2013 01:19 am Anthony Liguori

Merge remote-tracking branch 'mst/tags/for_anthony' into stable-1.5

pc,pci,virtio fixes and cleanups

This includes pc and pci cleanups, future-proofing of ROM files,
and a virtio bugfix correcting splice on virtio console.

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

c1654732 08/28/2013 10:16 am Markus Armbruster

hw: Clean up bogus default boot order

We set default boot order "cad" in every single machine definition
except "pseries" and "moxiesim", even though very few boards actually
care for boot order, and "cad" makes sense for even fewer.

Machines that care:...

1466cef3 08/27/2013 10:13 am Michael S. Tsirkin

pc: fix regression for 64 bit PCI memory

commit 398489018183d613306ab022653552247d93919f
pc: limit 64 bit hole to 2G by default
introduced a way for management to control
the window allocated to the 64 bit PCI hole.

This is useful, but existing management tools do not know how to set...

9eda7d37 08/27/2013 08:30 am Alexey Kardashevskiy

pci: Introduce helper to retrieve a PCI device's DMA address space

A PCI device's DMA address space (possibly an IOMMU) is returned by a
method on the PCIBus. At the moment that only has one caller, so the
method is simply open coded. We'll need another caller for VFIO, so...

bc72ad67 08/22/2013 08:14 pm Alex Bligh

aio / timers: Switch entire codebase to the new timer API

This is an autogenerated patch using scripts/switch-timer-api.

Switch the entire code base to using the new timer API.

Note this patch may introduce some line length issues.

Signed-off-by: Alex Bligh <>...

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...

b643e4b9 08/20/2013 04:54 pm Peter Maydell

hw/arm/pic_cpu: Remove the now-unneeded arm_pic_init_cpu()

Now all the boards have been converted arm_pic_init_cpu()
is unused and can just be deleted.

Signed-off-by: Peter Maydell <>
Message-id:

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: ...

6793dfd1 08/12/2013 12:19 pm Stefan Hajnoczi

virtio: clear signalled_used_valid when switching from dataplane

When the dataplane thread stops, its vring.c implementation synchronizes
vring state back to virtio.c so we can continue emulating the virtio
device.

This patch ensures that virtio.c's signalled_used_valid flag is reset so...

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:...

e8cd45c7 07/30/2013 03:33 am Vasilis Liaskovitis

qdev: Add SIZE type to qdev properties

This patch adds a 'SIZE' type property to qdev.

Signed-off-by: Ian Molton <>
Signed-off-by: Vasilis Liaskovitis <>
Signed-off-by: Hu Tao <>...

f5338ee3 07/30/2013 03:33 am Michael S. Tsirkin

pc: move IO_APIC_DEFAULT_ADDRESS to include/hw/i386/ioapic.h

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

b67964d7 07/29/2013 10:07 pm Andreas Färber

sysbus: QOM parent field cleanup for SysBusDevice

Rename the parent field and hide it from gtk-doc.

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

f3d74d32 07/29/2013 10:07 pm Andreas Färber

sysbus: Drop FROM_SYSBUS()

As a replacement, use your own macro based on OBJECT_CHECK().

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

339104fe 07/29/2013 10:07 pm Andreas Färber

sysbus: Remove unused sysbus_new() prototype

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

29d1ffc3 07/29/2013 10:07 pm Andreas Färber

m48t59: QOM cast cleanup for M48t59SysBusState

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

a0b97927 07/29/2013 10:06 pm Andreas Färber

lm32_juart: QOM cast cleanup

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

81069b20 07/29/2013 10:06 pm Andreas Färber

escc: QOM cast cleanup

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

0ee10242 07/29/2013 10:06 pm Andreas Färber

lm32_juart: Relocate and tidy header

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

bcb75750 07/29/2013 09:45 pm Andreas Färber

pcie_port: Turn PCIEPort and PCIESlot into abstract QOM types

Move PCIEPort's "port" property to the new type, same for "aer_log_max".
Move PCIESlot's "chassis" and "slot" properties to the new type.

Reviewed-by: Don Koch <>
Acked-by: Michael S. Tsirkin <>...

f055e96b 07/29/2013 09:44 pm Andreas Färber

pci-bridge: Turn PCIBridge into abstract QOM type

Introduce TYPE_PCI_BRIDGE as base type and use PCI_BRIDGE() casts.

Reviewed-by: Don Koch <>
Acked-by: Michael S. Tsirkin <>
[AF: Updated pbm-bridge parent to TYPE_PCI_BRIDGE]...

eddbf0ab 07/29/2013 07:33 pm Anthony Liguori

Merge remote-tracking branch 'stefanha/block' into staging

  1. By Stefan Hajnoczi (4) and others
  2. Via Stefan Hajnoczi
    • stefanha/block:
      dataplane: refuse to start if device is already in use
      dataplane: enable virtio-blk x-data-plane=on live migration
      migration: fix spice migration...
4ff1fac4 07/29/2013 07:33 pm Anthony Liguori

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

QOM CPUState refactorings

  • Fix x86 cpu-add
  • Change KVM PMU behavior for 1.6
  1. gpg: Signature made Mon 29 Jul 2013 10:28:18 AM CDT using RSA key ID 3E7E013F
  2. gpg: Can't check signature: public key not found...
1112cf94 07/29/2013 06:37 pm David Gibson

pseries: savevm support for PCI host bridge

This adds the necessary support for saving the state of the PAPR virtual
PCI host bridge (or host bridges).

Signed-off-by: David Gibson <>
Reviewed-by: Anthony Liguori <>...

e68cb8b4 07/29/2013 06:37 pm Alexey Kardashevskiy

pseries: savevm support with KVM

At present, the savevm / migration support for the pseries machine will not
work when KVM is enabled. That's because KVM manages the guest's hash page
table in the host kernel, so qemu has no visibility of it. This patch...

c04d6cfa 07/29/2013 06:37 pm Anthony Liguori

xics: rename types to be sane and follow coding style

Basically, in HW the layout of the interrupt network is:
- One ICP per processor thread (the "presenter"). This contains the
registers to fetch a pending interrupt (ack), EOI, and control the...
949fc823 07/29/2013 06:37 pm Marcel Apfelbaum

hw: import bitmap operations in qdev-core header

Made small tweaks in code to prevent compilation issues
when importing qemu/bitmap.h in qdev-core

Signed-off-by: Marcel Apfelbaum <>
Message-id: ...

3d1237fb 07/29/2013 06:37 pm Marcel Apfelbaum

qemu-help: Sort devices by logical functionality

Categorize devices that appear as output to "-device ?" command
by logical functionality. Sort the devices by logical categories
before showing them to user.

The sort is done by functionality rather than alphabetical....

b368a7d8 07/29/2013 06:37 pm David Gibson

pseries: savevm support for VIO devices

This patch adds helpers to allow PAPR VIO devices to save state common
to all VIO devices during savevm.

Signed-off-by: David Gibson <>
Reviewed-by: Anthony Liguori <>...

a83000f5 07/29/2013 06:37 pm Anthony Liguori

spapr-tce: make sPAPRTCETable a proper device

Model TCE tables as a device that's hooked up as a child object to
the owner. Besides the code cleanup, we get a few nice benefits:

1) free actually works now (it was dead code before)

2) the TCE information is visible in the device tree...

4be21d56 07/29/2013 06:37 pm David Gibson

pseries: savevm support for pseries machine

This adds the necessary pieces to implement savevm / migration for the
pseries machine. The most complex part here is migrating the hash
table - for the paravirtualized pseries machine the guest's hash page
table is not stored within guest memory, but externally and the guest...

84db52d0 07/29/2013 06:19 pm Stefan Hajnoczi

dataplane: enable virtio-blk x-data-plane=on live migration

Although the dataplane thread does not cooperate with dirty memory
logging yet it's fairly easy to temporarily disable dataplane during
live migration. This way virtio-blk can live migrate when...

9337e3b6 07/29/2013 04:29 pm Eduardo Habkost

target-i386: Disable PMU CPUID leaf by default

Bug description: QEMU currently gets all bits from GET_SUPPORTED_CPUID
for CPUID leaf 0xA and passes them directly to the guest. This makes
the guest ABI depend on host kernel and host CPU capabilities, and
breaks live migration if we migrate between hosts with different...

8fbab3b6 07/29/2013 02:13 pm Paul Durrant

Xen PV Device

Introduces a new Xen PV PCI device which will act as a binding point for
PV drivers for Xen.
The device has parameterized vendor-id, device-id and revision to allow to
be configured as a binding point for any vendor's PV drivers.

Signed-off-by: Paul Durrant <>...

05b3274b 07/29/2013 01:27 am James Hogan

hw/mips: align initrd to 64KB to avoid kernel error

The Linux kernel can be configured to use 64KB pages, but it also
requires initrd to be page aligned. Therefore, to be safe, align the
initrd to 64KB using a new INITRD_PAGE_MASK rather than
TARGET_PAGE_MASK....

61fcb628 07/25/2013 04:12 pm Paolo Bonzini

isa_mmio: delete

It is not used anymore.

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

caad4eb3 07/23/2013 01:37 am Andreas Färber

scsi: Improve error propagation for scsi_bus_legacy_handle_cmdline()

Let scsi_bus_legacy_add_drive() and scsi_bus_legacy_handle_cmdline()
return an Error**. Prepare qdev initfns for QOM realize error model.

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

ce724398 07/23/2013 01:37 am Hu Tao

sysbus: Document SysBusDeviceClass::init and realize semantics

Signed-off-by: Hu Tao <>
[AF: Syntax and wording changes]
Signed-off-by: Andreas Färber <>

ce88812f 07/23/2013 01:37 am Hu Tao

q35: Use type-safe cast instead of direct access of parent dev

And remove variables if possible.

Signed-off-by: Hu Tao <>
[AF: Converted remaining access and renamed to parent_obj]
Signed-off-by: Andreas Färber <>

549c272b 07/22/2013 06:14 pm Anthony Liguori

Merge remote-tracking branch 'pmaydell/tags/pull-arm-devs-20130722' into staging

arm-devs queue

  1. gpg: Signature made Mon 22 Jul 2013 06:38:52 AM CDT using RSA key ID 14360CDE
  2. gpg: Can't check signature: public key not found
  1. By Peter Maydell (8) and Soren Brinkmann (2)...
84aee0de 07/22/2013 02:00 pm Soren Brinkmann

hw/loader: Support ramdisk with u-boot header

Introduce 'load_ramdisk()' which can load "normal" ramdisks and ramdisks
with a u-boot header.
To enable this and leverage synergies 'load_uimage()' is refactored to
accomodate this additional use case.

Signed-off-by: Soren Brinkmann <>...

3b1cceb8 07/19/2013 02:58 pm Peter Maydell

arm/boot: Allow boards to modify the FDT blob

Add a callback hook in arm_boot_info to allow board models to
modify the device tree blob if they need to. (The major expected
use case is to add virtio-mmio nodes for virtio-mmio transports
that exist in QEMU but not in the hardware.)...

e63c0ba1 07/19/2013 02:58 pm Peter Maydell

virtio: Add support for guest setting of queue size

The MMIO virtio transport spec allows the guest to tell the host how
large the queue size is. Add virtio_queue_set_num() function which
implements this in the QEMU common virtio support code.

Signed-off-by: Peter Maydell <>...

6ce69d1c 07/19/2013 02:58 pm Peter Maydell

virtio: Support transports which can specify the vring alignment

Support virtio transports which can specify the vring alignment
(ie where the guest communicates this to the host) by providing
a new virtio_queue_set_align() function. (The default alignment...

9154b02c 07/19/2013 07:29 am Stefan Hajnoczi

dataplane: sync virtio.c and vring.c virtqueue state

Load the virtio.c state into vring.c when we start dataplane mode and
vice versa when stopping dataplane mode. This patch makes it possible
to start and stop dataplane any time while the guest is running....

e9acb8ce 07/18/2013 04:12 pm Anthony Liguori

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

pci,net,pc enhancements

This includes some fixes and enhancements that accumulated in my tree:
pci fixes by dkoch, virtio-net enhancements by akong and mst,
and a fix for xen pc by mst.

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

488f069b 07/15/2013 09:26 pm Michael S. Tsirkin

virtio-net: add feature bit for any header s/g

Old qemu versions required that 1st s/g entry is the header.

Since QEMU 1.5, patchset titled "virtio-net: iovec handling cleanup"
removed this limitation but a feature bit is needed so guests know it's
safe to lay out header differently....

03ee3b1e 07/11/2013 07:51 pm Alexander Graf

PPC: dbdma: Move processing to io

Soon we will introduce intermediate processing pauses which will
allow the bottom half to restart a DMA request that couldn't be
fulfilled yet.

For that to work, move the processing variable into the io struct
which is what DMA providers work with....

80fc95d8 07/11/2013 07:51 pm Alexander Graf

PPC: dbdma: Support unaligned DMA access

The DBDMA engine really just reads bytes from a producing device (IDE
in our case) and shoves these bytes into memory. It doesn't care whether
any alignment takes place or not.

Our code today however assumes that block accesses always happen on...

f2f963fd 07/11/2013 07:51 pm Alexander Graf

PPC: dbdma: Move defines into header file

We usually keep struct and constant definitions in header files. Move
them there to stay consistent and to make access to fields easier.

Signed-off-by: Alexander Graf <>

d1e562de 07/11/2013 07:51 pm Alexander Graf

PPC: dbdma: Introduce kick function

The DBDMA engine really is running all the time, waiting for input. However
we don't want to waste cycles constantly polling.

So introduce a kick function that data providers can call to notify the
DBDMA controller of new input....

d2f0ce21 07/11/2013 07:51 pm Alexander Graf

PPC: dbdma: Move static bh variable to device struct

The DBDMA controller has a bottom half to asynchronously process DMA
request queues.

This bh was stored as a gross static variable. Move it into the device
struct instead.

While at it, move all users of it to the new generic kick function....

4268b096 07/10/2013 12:49 pm Don Koch

pci: fix BRDIGE typo

Fix typo in macro name: PCI_CLASS_BRDIGE_PCI_INF_SUB.

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

e78e9ae4 07/10/2013 12:49 pm Don Koch

pci-bridge: update mappings for migration/restore

Fix for LP#1187529: Devices on PCI bridge stop working when
live-migrated. Update bridge mappings for all PCI bridge
devices in get_pci_config_device().

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

2b927571 07/09/2013 10:33 pm Andreas Färber

intc/openpic: Build openpic only once

Since current_cpu is CPUState it no longer depends on CPUPPCState.

Move ppce500_set_mpic_proxy() to a new hw/ppc/ppc_e500.h because
hw/ppc/ppc.h is too heavily using CPUPPCState and PowerPCCPU.

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

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 -...

c473d18d 07/07/2013 11:10 pm David Gibson

pci: Use helper to find device's root bus in pci_find_domain()

Currently pci_find_domain() performs two functions - it locates the PCI
root bus above the given bus, then looks up that root bus's domain number.
This patch adds a helper function to perform the first task, finding the...

568f0690 07/07/2013 11:10 pm David Gibson

pci: Replace pci_find_domain() with more general pci_root_bus_path()

pci_find_domain() is used in a number of places where we want an id for a
whole PCI domain (i.e. the subtree under a PCI root bus). The trouble is
that many platforms may support multiple independent host bridges with no...

85c6e4fa 07/07/2013 11:10 pm David Gibson

pci: Add root bus argument to pci_get_bus_devfn()

pci_get_bus_devfn() interprets a full PCI address string to give a PCIBus *
and device/function number within that bus. Currently it assumes it is
working on an address under the primary PCI root bus. This patch extends...

29b358f9 07/07/2013 11:10 pm David Gibson

pci: Add root bus parameter to pci_nic_init()

At present, pci_nic_init() and pci_nic_init_nofail() assume that they will
only create a NIC under the primary PCI root. As we add support for
multiple PCI roots, that may no longer be the case. This patch adds a root...

7588e2b0 07/07/2013 11:10 pm David Gibson

pci: Fold host_buses list into PCIHostState functionality

The host_buses list is an odd structure - a list of pointers to PCI root
buses existing in parallel to the normal qdev tree structure. This patch
removes it, instead putting the link pointers into the PCIHostState...

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...

84af6d9f 07/04/2013 06:42 pm Paolo Bonzini

spapr_iommu: pass device to spapr_tce_new_table and use it to set owner

Signed-off-by: Paolo Bonzini <>

3cd2cf43 07/04/2013 06:42 pm Paolo Bonzini

pam: pass device to init_pam and use it to set owner

Signed-off-by: Paolo Bonzini <>

dfde4e6e 07/04/2013 06:42 pm Paolo Bonzini

memory: add ref/unref calls

Add ref/unref calls at the following places:

- places where memory regions are stashed by a listener and
used outside the BQL (including in Xen or KVM).

- memory_region_find callsites

- creation of aliases and containers (only the aliased/contained...

d67f679d 07/04/2013 06:42 pm Jan Kiszka

vmport: Disentangle read handler type from portio

In case the latter may vanish one day, make sure the vmport read handler
type will remain unaffected. This is also conceptually cleaner.

Signed-off-by: Jan Kiszka <>
Signed-off-by: Paolo Bonzini <>

f487b677 07/04/2013 06:42 pm Paolo Bonzini

dma: keep a device alive while it has SGLists

Reviewed-by: Anthony Liguori <>
Signed-off-by: Paolo Bonzini <>

6ac363b5 07/04/2013 10:45 am David Gibson

pci: Move pci_read_devaddr to pci-hotplug-old.c

pci_read_devaddr() is only used by the legacy functions for the old PCI
hotplug interface in pci-hotplug-old.c. So we move the function there,
and make it static.

Signed-off-by: David Gibson <>...

bc3e6a0d 07/04/2013 10:42 am Michael S. Tsirkin

pvpanic: initialization cleanup

Avoid use of static variables: PC systems
initialize pvpanic device through pvpanic_init,
so we can simply create the fw_cfg file at that point.
This also makes it possible to skip device
creation completely if fw_cfg is not there, e.g. for xen -...

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....

a1014f25 07/01/2013 02:11 am Alexander Graf

PPC: Add clock-frequency export for Mac machines

Support in fwcfg has been around for exposure of the clock-frequency
CPU property. OpenBIOS reads it, we just never exposed it.

Since Mac OS X is very picky about its clock frequency values, let's
just take a known good value and always expose that....

210b580b 07/01/2013 02:11 am Anthony Liguori

spapr-rtas: add CPU argument to RTAS calls

RTAS is a hypervisor provided binary blob that a guest loads and
calls into to execute certain functions. It's similar to the
vsyscall page in Linux or the short lived VMCI paravirt interface
from VMware.

The QEMU implementation of the RTAS blob is simply a passthrough...

dd49c038 07/01/2013 02:11 am Andreas Färber

intc/openpic_kvm: Fix QOM and build issues

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

8935a442 07/01/2013 02:11 am Scott Wood

openpic: factor out some common defines into openpic.h

...for use by the KVM in-kernel irqchip stub.

Signed-off-by: Scott Wood <>
Signed-off-by: Alexander Graf <>

d85937e6 07/01/2013 02:11 am Scott Wood

kvm/openpic: in-kernel mpic support

Enables support for the in-kernel MPIC that thas been merged into the
KVM next branch. This includes irqfd/KVM_IRQ_LINE support from Alex
Graf (along with some other improvements).

Note from Alex regarding kvm_irqchip_create():...

e1766344 07/01/2013 02:11 am Andreas Färber

intc/openpic: QOM'ify

Introduce type constant and cast macro.

Signed-off-by: Andreas Färber <>
Reviewed-by: Peter Crosthwaite <>
Signed-off-by: Alexander Graf <>