Statistics
| Branch: | Revision:

root / hw @ 59369b08

# Date Author Comment
59369b08 01/20/2011 03:33 pm Isaku Yamahata

msi: simplify write config a bit.

use pci_device_deassert_intx().

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

4c92325b 01/20/2011 03:33 pm Isaku Yamahata

pci: deassert intx on reset.

deassert intx on device reset.
So far pci_device_reset() is used for system reset.
In that case, interrupt controller is reset at the same time so that
all irq is are deasserted.
But now pci bus reset/flr is supported, and in that case irq needs to be...

2991181a 01/19/2011 09:18 pm Michael S. Tsirkin

pci: fix device paths

Patch a6a7005d14b3c32d4864a718fb1cb19c789f58a5 generated
broken device paths. We snprintf with a length shorter
than the output, so the last character is discarded and replaced
by the null byte. Fix it up by snprintf to a buffer
which is larger by 1 byte and then memcpy the data (without...

668643b0 01/17/2011 05:30 pm Marcelo Tosatti

acpi_piix4: expose no_hotplug attribute via i/o port

Expose no_hotplug attribute via I/O port, so ACPI BIOS can indicate
removability status to guest OS.

An updated seabios is required to make use of this feature (seabios.git
commit ID 3c241edf3d7ef29c21)....

a01a9cb8 01/12/2011 05:55 pm Amit Shah

virtio-serial-bus: bump up control vq size to 32

The current default of 16 buffers for the control vq is too small. We
can get more entries in there, for example when asking the guest to add
max. allowed ports.

Note: a more robust solution would involve some kind of event queueing...

b36e3914 01/11/2011 05:47 pm Michael S. Tsirkin

ioeventfd: error handling cleanup

- Don't return status from start/stop functions where it's ignored
- report errors to make debugging easier
- assert on unexpected failures
- don't disable notifiers on error so that we'll
retry when guest driver restarts...

25db9ebe 01/10/2011 02:44 pm Stefan Hajnoczi

virtio-pci: Use ioeventfd for virtqueue notify

Virtqueue notify is currently handled synchronously in userspace virtio. This
prevents the vcpu from executing guest code while hardware emulation code
handles the notify.

On systems that support KVM, the ioeventfd mechanism can be used to make...

85cf2a8d 01/10/2011 02:44 pm Michael S. Tsirkin

virtio: move vmstate change tracking to core

Move tracking vmstate change from virtio-net to virtio.c
as it is going to be used by virito-blk and virtio-pci
for the ioeventfd support.

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

3dbca8e6 01/10/2011 01:47 pm Stefan Hajnoczi

virtio-pci: Rename bugs field to flags

The VirtIOPCIProxy bugs field is currently used to enable workarounds
for older guests. Rename it to flags so that other per-device behavior
can be tracked.

A later patch uses the flags field to remember whether ioeventfd should...

2f6bfe3b 01/10/2011 01:43 pm Gerd Hoffmann

qxl: tag as not hotpluggable

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

6107ff12 01/10/2011 01:43 pm Michael S. Tsirkin

Merge remote branch 'origin/master' into pci

be92bbf7 01/10/2011 01:29 pm Gerd Hoffmann

vga: tag as not hotplugable.

This patch tags all vga cards as not hotpluggable. The qemu
standard vga will never ever be hotpluggable. For cirrus + vmware
it might be possible to get that work some day. Todays we can't
handle that for a number of reasons though....

0965f12d 01/10/2011 01:29 pm Gerd Hoffmann

piix: tag as not hotpluggable.

This patch tags all pci devices which belong to the piix3/4 chipsets as
not hotpluggable (Host bridge, ISA bridge, IDE controller, ACPI bridge).

Acked-by: Aurelien Jarno <>
Signed-off-by: Gerd Hoffmann <>...

180c22e1 01/10/2011 01:29 pm Gerd Hoffmann

pci: allow devices being tagged as not hotpluggable.

This patch adds a field to PCIDeviceInfo to tag devices as being
not hotpluggable. Any attempt to plug-in or -out such a device
will throw an error.

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

c0f809c4 01/10/2011 12:59 am Aurelien Jarno

target-sh4: implement writes to mmaped ITLB

Some Linux kernels seems to implement ITLB/UTLB flushing through by
writing all TLB entries through the memory mapped interface instead
of writing one to MMUCR.TI.

Implement memory mapped ITLB write interface so that such kernels can...

78935c4a 01/06/2011 11:29 pm Aurelien Jarno

cirrus: delete GCC 4.6 warnings

Commit 92d675d1c1f23f3617e24b63c825074a1d1da44b triggered uninitialized
variables warning with GCC 4.6. Fix them by adding zero initializers.

Acked-by: Blue Swirl <>
Signed-off-by: Aurelien Jarno <>

3fbb33d0 01/06/2011 08:25 pm Blue Swirl

cirrus_vga: Declare as little endian

This patch replaces explicit bswaps with endianness hints to the
mmio layer.

CC: Alexander Graf <>
Signed-off-by: Blue Swirl <>

4b78a802 01/06/2011 08:24 pm Blue Swirl

pc: move port 92 stuff back to pc.c from pckbd.c

956a3e6bb7386de48b642d4fee11f7f86a2fcf9a introduced a bug concerning
reset bit for port 92.

Since the keyboard output port and port 92 are not compatible anyway,
let's separate them.

Reported-by: Peter Lieven <>...

c574ba5a 01/05/2011 12:14 pm Alex Williamson

rtl8139: Use subsection to restrict migration after hotplug

rtl8139 includes a cpu_register_io_memory acquired value in it's
migration data. This is not only unecessary, but we should treat
these values as unique to the VM instances since the value depends...

0ac8ef71 01/05/2011 12:14 pm Alex Williamson

qdev: Track runtime machine modifications

Create a trivial interface to track whether the machine has been
modified since boot. Adding or removing devices will trigger this
to return true. An example usage scenario for such an interface is
the rtl8139 driver which includes a cpu_register_io_memory() value...

9ae19b65 01/04/2011 10:58 pm Aurelien Jarno

Fix curses on big endian hosts

On big endian hosts, the curses interface is unusable: the emulated
graphic card only displays garbage, while the monitor interface displays
nothing (or rather only spaces).

The curses interface is waiting for data in native endianness, so...

92d675d1 01/04/2011 10:58 pm Aurelien Jarno

cirrus_vga: fix division by 0 for color expansion rop

Commit d85d0d3883f5a567fa2969a0396e42e0a662b3fa introduces a regression
with Windows ME that leads to a division by 0 and a crash.

It uses the color expansion rop with the source pitch set to 0. This is...

818c2e1b 12/27/2010 11:59 pm Aurelien Jarno

Merge branch 'spice.v23.pull' of git://anongit.freedesktop.org/spice/qemu

  • 'spice.v23.pull' of git://anongit.freedesktop.org/spice/qemu:
    vnc/spice: add set_passwd monitor command.
    vnc: support password expire
    vnc: auth reject cleanup
    spice: add qmp 'query-spice' and hmp 'info spice' commands....
a6a7005d 12/27/2010 11:21 am Michael S. Tsirkin

pci: fix migration path for devices behind bridges

The device path used for migration is currently broken for
for all devices behind a nested bridge.

Replace this by a hierarchical list of slot/function numbers, walking
the path from root down to device. Add :00 after the domain number...

6c33286a 12/26/2010 01:29 am Alexander Graf

s390: compile fixes

The s390 target doesn't compile out of the box anymore. This patch fixes all
the obvious glitches that got introduced in the last few weeks.

Signed-off-by: Alexander Graf <>
Signed-off-by: Aurelien Jarno <>

2ae63bda 12/24/2010 10:35 am Isaku Yamahata

pcie/aer: glue aer error injection into qemu monitor

introduce pcie_aer_inject_error command.

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

f3006dd1 12/24/2010 10:35 am Isaku Yamahata

pci: introduce a helper function to convert qdev id to PCIDevice

This patch introduce a helper function to get PCIDevice from qdev id.
This function will be used later.

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

a2ee6b4f 12/24/2010 10:35 am Isaku Yamahata

qdev: export qdev_find_recursive() for later use

This patch exports qdev_find_recursive() for later use.

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

b3a29fd5 12/22/2010 01:06 pm Isaku Yamahata

build, pci: remove QMP dependency on core PCI code

by introducing pci-stub.c, eliminate QMP dependency on core PCI code
rquired by query-pci command.

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

0ead87c8 12/22/2010 09:01 am Isaku Yamahata

pcie: add flr support

Support flr: trigger device reset on flr config write.

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

362dd48c 12/22/2010 09:00 am Isaku Yamahata

pc/piix: fix mismerge of b1aeb92666d2fde413c34578b3b42bbfe5f2a506

The change set of b1aeb92666d2fde413c34578b3b42bbfe5f2a506 in pci branch
was mismerged. The compatibility should be kept for 0.13, not for 0.14.

Signed-off-by: Isaku Yamahata <>...

fcd61af6 12/21/2010 07:28 pm Stefan Weil

qdev: sysbus_get_default must not return a NULL pointer (fix regression)

Every system should have some sort of main system bus,
so sysbus_get_default should always return a valid bus.

Without this patch, at least mipssim and malta no longer
start but raise a null pointer access exception (caused by...

f530cce3 12/21/2010 02:06 pm Michael S. Tsirkin

qdev: remove an unused function

qbus_reset_all is unused, remove it

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

e0087e61 12/20/2010 11:08 pm Bob Breuer

sparc32: ledma extra registers need tracing too

Also trace the extra registers, and update the comments with new
info from Artyom Tarasenko.

Signed-off-by: Bob Breuer <>
Signed-off-by: Blue Swirl <>

c910cf96 12/20/2010 11:03 pm Andreas Färber

wdt_ib700: Fix accidental use of SoftFloat int64 type

softfloat.h's int64 type has least-width semantics.
Since we're assigning an int64_t, use plain int64_t.

v4:
  • Summary change.
v3:
  • Split off.

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

f5095c63 12/20/2010 11:02 pm Andreas Färber

apic: Fix accidental use of SoftFloat uint32 type

softfloat.h's uint32 type has least-width semantics.
Surrounding code uses uint32_t, so use uint32_t here, too.

v4:
  • Summary change.
v3:
  • Split off.

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

80376c3f 12/20/2010 03:16 pm Isaku Yamahata

qbus: register reset handler for qbus whose parent is NULL

Stefan Weil reported the regression caused by
ec990eb622ad46df5ddcb1e94c418c271894d416 as follows

The second regression also occurs with MIPS malta.
Networking no longer works with the default pcnet nic....

af0669f0 12/19/2010 02:06 pm Michael S. Tsirkin

pci: don't use bus number in migration, stub out

Using bus numbers in migration is clearly wrong as
they are guest assigned. Not really sure what the
right thing to do is, for now stick 0 in there so things
keep working for non-nested setups, add a TODO....

68694897 12/19/2010 02:06 pm Stefan Weil

qdev: sysbus_get_default must not return a NULL pointer (fix regression)

Every system should have some sort of main system bus,
so sysbus_get_default should always return a valid bus.

Without this patch, at least mipssim and malta no longer
start but raise a null pointer access exception (caused by...

cdfe17df 12/19/2010 12:43 pm Blue Swirl

ahci: delete write-only variables (v2)

Avoid these warnings with GCC 4.6.0:
/src/qemu/hw/ide/ahci.c: In function 'ahci_reset_port':
/src/qemu/hw/ide/ahci.c:810:14: error: variable 'tfd' set but not used [-Werror=unused-but-set-variable]
/src/qemu/hw/ide/ahci.c: In function 'handle_cmd':...

6a0ee36a 12/19/2010 12:04 pm Blue Swirl

vga: Declare as little endian

This patch replaces explicit bswaps with endianness hints to the
mmio layer.

CC: Alexander Graf <>
Acked-by: Alexander Graf <>
Signed-off-by: Blue Swirl <>

86d1c388 12/18/2010 08:31 pm Bob Breuer

sparc32: ledma extra registers

ledma has 0x20 bytes of registers according to OBP, and at least Solaris9
reads the 5th register which is beyond what we've mapped. So let's setup
a flag (inspired by a previous patch from Blue Swirl) to identify ledma
from espdma, and map another 16 bytes of registers which return 0....

653af235 12/17/2010 08:57 pm Kevin Wolf

ide: Build fix for via.c

Signed-off-by: Kevin Wolf <>

f56b18c0 12/17/2010 08:57 pm Kevin Wolf

ide: Fix build for cmd646.c

Signed-off-by: Kevin Wolf <>
Acked-by: Andreas Färber <>

38a08f05 12/17/2010 05:11 pm Sebastian Herbszt

ahci: set SATA Mode Select

Set SATA Mode Select to AHCI in the Address Map Register.

Signed-off-by: Sebastian Herbszt <>
Signed-off-by: Kevin Wolf <>

1bdaa28d 12/17/2010 05:11 pm Alexander Graf

ide: honor ncq for atapi

ATAPI also can do ncq, so let's expose the capability.

This patch makes CD-ROM support work on Windows 7 for me.

Signed-off-by: Alexander Graf <>
Signed-off-by: Kevin Wolf <>

ad717139 12/17/2010 05:11 pm Kevin Wolf

Remove NULL checks for bdrv_new return value

It's an indirect call to qemu_malloc, which never returns an error.

Signed-off-by: Kevin Wolf <>

61d9d6b0 12/17/2010 05:11 pm Stefan Hajnoczi

ide: Register vm change state handler once only

We register the vm change state handler in a PCI BAR map() function.
This function can be called multiple times throughout the lifetime of a
PCI IDE device. This results in duplicate vm change state handlers...

ea3bd56f 12/17/2010 05:11 pm Christoph Hellwig

scsi-disk: support WRITE SAME (16) with unmap bit

Support discards via the WRITE SAME command with the unmap bit set, and
tell the initiator about the support for it via the block limit and the
new thin provisioning EVPD pages. Also fix the comment which incorrectly...

ccf0fd8b 12/17/2010 05:11 pm Roland Elek

ide: add ncq identify data for ahci sata drives

I modified ide_identify() to include the zero-based queue length
value in word 75, and set bit 8 in word 76 to signal NCQ support
in the identify data for AHCI SATA drives.

Signed-off-by: Roland Elek <>...

6ed6c24a 12/17/2010 05:11 pm Alexander Graf

pci: add storage class for sata

This patch adds the storage sata class id.

Signed-off-by: Alexander Graf <>
Signed-off-by: Kevin Wolf <>

1a5a86fb 12/17/2010 05:11 pm Alexander Graf

pci: add ich9 pci id

We need a PCI ID for our new AHCI adapter. I just picked an ICH-9
because that's the one in the Q35 chipset.

This patch adds a PCI ID define for an ICH-9 AHCI adapter.

Signed-off-by: Alexander Graf <>
Signed-off-by: Kevin Wolf <>

f6ad2e32 12/17/2010 05:11 pm Alexander Graf

ahci: add ahci emulation

This patch adds an emulation layer for an ICH-9 AHCI controller. For now
this controller does not do IDE legacy emulation. It is a pure AHCI controller.

Signed-off-by: Alexander Graf <>
Signed-off-by: Kevin Wolf <>

40a6238a 12/17/2010 05:11 pm Alexander Graf

ide: Split out BMDMA code from ATA core

The ATA core is currently heavily intertwined with BMDMA code. Let's loosen
that a bit, so we can happily replace the DMA backend with different
implementations.

Signed-off-by: Alexander Graf <>
Signed-off-by: Kevin Wolf <>

2ff61ff1 12/17/2010 05:11 pm Alexander Graf

ide: move transfer_start after variable modification

We hook into transfer_start and immediately call the end function
for ahci. This means that everything needs to be in place for the
end function when we start the transfer, so let's move the function
down to where all state is in place....

7cff87ff 12/17/2010 05:11 pm Alexander Graf

ide: split ide command interpretation off

The ATA command interpretation code can be used for PATA and SATA
interfaces alike. So let's split it out into a separate function.

Signed-off-by: Alexander Graf <>
Signed-off-by: Kevin Wolf <>

6ef2ba5e 12/17/2010 05:11 pm Alexander Graf

ide: fix whitespace gap in ide_exec_cmd

Now that we have the function split out, we have to reindent it.
In order to increase the readability of the actual functional change,
this is split out.

Signed-off-by: Alexander Graf <>
Signed-off-by: Kevin Wolf <>

2e44928e 12/17/2010 04:22 pm Anthony Liguori

Merge remote branch 'jvrao/for-anthony' into staging

b254b0d1 12/17/2010 04:21 pm Anthony Liguori

Merge remote branch 'mst/for_anthony' into staging

36888c63 12/12/2010 03:10 pm Richard W.M. Jones

Watchdog: disable watchdog timer when hard-rebooting a guest.

This commit causes the watchdog timer to be reset when a guest is
hard-rebooted.

The failure case previously was as follows:

(a) guest boots, watchdog is enabled
(b) guest does a reset eg:...
962630f2 12/11/2010 11:32 pm Gleb Natapov

Pass boot device list to firmware.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Blue Swirl <>

2e55e842 12/11/2010 11:32 pm Gleb Natapov

Add bootindex for option roms.

Extend -option-rom command to have additional parameter ,bootindex=.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Blue Swirl <>

1ca4d09a 12/11/2010 11:32 pm Gleb Natapov

Add bootindex parameter to net/block/fd device

If bootindex is specified on command line a string that describes device
in firmware readable way is added into sorted list. Later this list will
be passed into firmware to control boot order.

Signed-off-by: Gleb Natapov <>...

de1f34cb 12/11/2010 11:32 pm Gleb Natapov

Change fw_cfg_add_file() to get full file path as a parameter.

Change fw_cfg_add_file() to get full file path as a parameter instead
of building one internally. Two reasons for that. First caller may need
to know how file is named. Second this moves policy of file naming out...

db07c0f8 12/11/2010 11:32 pm Gleb Natapov

Add get_fw_dev_path callback to scsi bus.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Blue Swirl <>

ab28ccc0 12/11/2010 11:32 pm Gleb Natapov

Record which USBDevice USBPort belongs too.

Ports on root hub will have NULL here. This is needed to reconstruct
path from device to its root hub to build device path.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Blue Swirl <>

cdedd006 12/11/2010 11:32 pm Gleb Natapov

Add get_fw_dev_path callback for usb bus.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Blue Swirl <>

5e0259e7 12/11/2010 11:32 pm Gleb Natapov

Add get_fw_dev_path callback for pci bus.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Blue Swirl <>

c646f74f 12/11/2010 11:32 pm Gleb Natapov

Add get_fw_dev_path callback for system bus.

Prints out mmio or pio used to access child device.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Blue Swirl <>

dc1a46b6 12/11/2010 11:27 pm Gleb Natapov

Add get_fw_dev_path callback to IDE bus.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Blue Swirl <>

6a26e119 12/11/2010 11:27 pm Gleb Natapov

Add get_fw_dev_path callback to ISA bus in qdev.

Use device ioports to create unique device path.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Blue Swirl <>

3835510f 12/11/2010 11:27 pm Gleb Natapov

Store IDE bus id in IDEBus structure for easy access.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Blue Swirl <>

dee41d58 12/11/2010 11:27 pm Gleb Natapov

Keep track of ISA ports ISA device is using in qdev.

Store all io ports used by device in ISADevice structure.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Blue Swirl <>

21150814 12/11/2010 11:27 pm Gleb Natapov

Introduce new BusInfo callback get_fw_dev_path.

New get_fw_dev_path callback will be used for build device path usable
by firmware in contrast to qdev qemu internal device path.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Blue Swirl <>

779206de 12/11/2010 11:27 pm Gleb Natapov

Introduce fw_name field to DeviceInfo structure.

Add "fw_name" to DeviceInfo to use in device path building. In
contrast to "name" "fw_name" should refer to functionality device
provides instead of particular device model like "name" does.

Signed-off-by: Gleb Natapov <>...

fa82e9c3 12/11/2010 08:36 pm Bernhard Kohl

wdt_i6300esb: register a reset function

The device shall set its default hardware state after each reset.
This includes that the timer is stopped which is especially important
if the guest does a reboot independantly of a watchdog bite. I moved
the initialization of the state variables completely from the init...

74782223 12/11/2010 08:34 pm Tristan Gingold

isa-bus.c: use hw_error instead of fprintf

Minor clean-up in isa-bus.c. Using hw_error is more consistent.
There is a difference however: hw_error dumps the cpu state.

Signed-off-by: Tristan Gingold <>
Signed-off-by: Blue Swirl <>

f23cea4d 12/11/2010 05:24 pm Alexander Graf

uninorth: Get rid of bswap

There's no need to bswap once we correctly set the mmio to be little endian.

Signed-off-by: Alexander Graf <>
Signed-off-by: Blue Swirl <>

32600a30 12/11/2010 05:24 pm Alexander Graf

e1000: Make little endian

The e1000 has compatibility code to handle big endianness which makes it
mandatory to be recompiled on different targets.

With the generic mmio endianness solution, there's no need for that anymore.
We just declare all mmio to be little endian and call it a day....

8cb7da56 12/11/2010 05:24 pm Alexander Graf

prep: Declare as little endian

This patch replaces explicit bswaps with endianness hints to the
mmio layer.

Signed-off-by: Alexander Graf <>
Signed-off-by: Blue Swirl <>

387c3e96 12/11/2010 05:24 pm Alexander Graf

versatile_pci: Declare as little endian

This patch replaces explicit bswaps with endianness hints to the
mmio layer.

Signed-off-by: Alexander Graf <>
Signed-off-by: Blue Swirl <>

0d2a73b3 12/11/2010 05:24 pm Alexander Graf

ppc4xx_pci: Declare as little endian

This patch replaces explicit bswaps with endianness hints to the
mmio layer.

Signed-off-by: Alexander Graf <>
Signed-off-by: Blue Swirl <>

82600641 12/11/2010 05:24 pm Alexander Graf

openpic: Replace explicit byte swap with endian hints

This patch replaces explicit bswaps with endianness hints to the
mmio layer.

Signed-off-by: Alexander Graf <>
Signed-off-by: Blue Swirl <>

5cf7a3ca 12/11/2010 05:24 pm Alexander Graf

rtl8139: Declare as little endian

This patch replaces explicit bswaps with endianness hints to the
mmio layer.

Because we don't depend on the target endianness anymore, we can also
move the driver over to Makefile.objs.

Signed-off-by: Alexander Graf <>...

b093c1a3 12/11/2010 05:24 pm Alexander Graf

heathrow_pic: Declare as little endian

This patch replaces explicit bswaps with endianness hints to the
mmio layer.

Signed-off-by: Alexander Graf <>
Signed-off-by: Blue Swirl <>

968d683c 12/11/2010 05:24 pm Alexander Graf

isa_mmio: Always use little endian

This patch converts the ISA MMIO bridge code to always use little endian mmio.
All bswap code that existed was only there to convert from native cpu
endianness to little endian ISA devices.

Signed-off-by: Alexander Graf <>...

34557491 12/11/2010 05:24 pm Alexander Graf

usb_ohci: Always use little endian

This patch replaces explicit bswaps with endianness hints to the
mmio layer.

Because we don't depend on the target endianness anymore, we can also
move the driver over to Makefile.objs.

Signed-off-by: Alexander Graf <>...

2507c12a 12/11/2010 05:24 pm Alexander Graf

Add endianness as io mem parameter

As stated before, devices can be little, big or native endian. The
target endianness is not of their concern, so we need to push things
down a level.

This patch adds a parameter to cpu_register_io_memory that allows a
device to choose its endianness. For now, all devices simply choose...

6bef0436 12/11/2010 05:24 pm Alexander Graf

Make simple io mem handler endian aware

As an alternative to the 3 individual handlers, there is also a simplified
io mem hook function. To be consistent, let's add an endianness parameter
there too.

Signed-off-by: Alexander Graf <>
Signed-off-by: Blue Swirl <>

0f4f039b 12/11/2010 05:24 pm Alexander Graf

dbdma: Make little endian

The device is only used on big endian systems, but always byte swaps. That's
a very good indicator that it's actually a little endian device ;-).

Signed-off-by: Alexander Graf <>
Signed-off-by: Blue Swirl <>

6ebf5905 12/11/2010 05:24 pm Alexander Graf

pci-host: Delegate bswap to mmio layer

The only reason we have bswap versions of the pci host code is that
most pci host devices are little endian. The ppc e500 is the only
odd one here, being big endian.

So let's directly pass the endianness down to the mmio layer and not...

a19cbfb3 12/09/2010 03:23 pm Gerd Hoffmann

spice: add qxl device

qxl is a paravirtual graphics card. The qxl device is the bridge
between the guest and the spice server (aka libspice-server). The
spice server will send the rendering commands to the spice client, which
will actually render them....

513691b7 12/09/2010 12:48 pm Michael S. Tsirkin

pci/aer: factor out common code

Same logic is used to assert interrupts
and send msix messages, so add a static functin for this.

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

5f47c187 12/09/2010 12:48 pm Michael S. Tsirkin

pci/aer: remove dead code

Remove some unused variables and return values.

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

2b3cb353 12/09/2010 12:48 pm Michael S. Tsirkin

pci/aer: fix interrupt on config write

config write handling for aer seems broken:
For example, it won't clear a level interrupt
when command register is set to 0.

Make it match the spec: level should equal
the logical or of enabled bits, msi only
be sent when the logical or changes....

c3f33667 12/09/2010 12:48 pm Michael S. Tsirkin

pci/aer: fix error injection

Fix the injection logic upon aer message to follow 6.2.4.1.2 more
closely: specifically only send an msi interrupt when the logical or of
the enabled bits changed, not when a bit which was previously clear
becomes set.

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

4a9dd665 12/09/2010 12:48 pm Michael S. Tsirkin

pci: untangle pci/msi dependency

msi depends on pci but pci should not depend on msi.
The only dependency we have is a recent addition
of pci_msi_ functions, IMO they add little enough to
open-code in the small number of users.

Follow-up patches add more cleanups....

95477323 12/09/2010 12:47 pm Michael S. Tsirkin

virtio-net: don't dma while vm is stopped

DMA into memory while VM is stopped makes it
hard to debug migration (consequitive saves
result in different files).
Fixing this completely is a large effort,
this patch does this for virtio-net.

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

783e7706 12/09/2010 12:47 pm Michael S. Tsirkin

virtio-net: stop/start bh when appropriate

Avoid sending out packets, and modifying
memory, when VM is stopped.
Add assert statements to verify this does not happen.

Avoid scheduling bh when vhost-net is started.

Stop bh when driver disabled bus mastering...

b1aeb926 12/09/2010 12:47 pm Isaku Yamahata

pci: make command SERR bit writable

pcie aer needs SERR bit to be writable, and the PCI spec requires
this as well. For compatibility, introduce compat global property
command_serr_enable and make this bit readonly for a pre 0.14 pc
machine.

Signed-off-by: Isaku Yamahata <>...