Statistics
| Branch: | Revision:

root / hw / pci.c @ c988bfad

History | View | Annotate | Download (43.2 kB)

# Date Author Comment
dbe73d7f 11/12/2009 07:23 pm Juan Quintela

pci: fix the conversion of config field from array to pointer

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

260c0cd3 11/09/2009 04:43 pm Isaku Yamahata

pci: use range helper functions.

clean up pci_default_write_config() by the range helper functions.

Suggested by Michael S. Tsirkin <>
Cc: Michael S. Tsirkin <>
Signed-off-by: Isaku Yamahata <>
Signed-off-by: Anthony Liguori <>

edb00035 11/09/2009 04:43 pm Isaku Yamahata

pci: teach pci_default_config_write() ROM bar for normal/bridge device .

When updated ROM expantion address of header type 0, it missed
to update mappings.
Add PCI_ROM_ADDRESS check whether to call pci_update_mappings()
Also update pci mapping when PCI_ROM_ADDRESS1 is written for header type 1....

fb231628 11/09/2009 04:43 pm Isaku Yamahata

pci: initialize pci config headers depending it pci header type.

- Only sets default subsystem id for header type 00.(normal header type)
because header type 01 doesn't have subsystem id, and uses the register
for other purpose. So setting default subsystem id doesn't make sense....

a9688570 11/09/2009 04:43 pm Isaku Yamahata

pci: cosmetic on pci_upadte_mappings()

Remove one indentation of pci_update_mappings.
Just for cosmetics, no logic change.

Signed-off-by: Isaku Yamahata <>
Signed-off-by: Anthony Liguori <>

1074df4f 11/09/2009 04:43 pm Isaku Yamahata

pci: factor out pci_for_each_device().

split out device iteration logic from pci_for_each_device().
factored out function, pci_for_each_device_under_bus() will be used later.

Signed-off-by: Isaku Yamahata <>
Signed-off-by: Anthony Liguori <>

a0c7a97e 11/09/2009 04:43 pm Isaku Yamahata

pci: implement pci bridge filtering.

This patch implements pci bridge filtering.

TODO: currently almost all the map funcions assumes
filtered_size size and addr & ~(size - 1) addr.
However with bridge filtering, they aren't always true.
Teach them such cases, such that filtered_size < size and...

b4dccd8d 11/09/2009 04:43 pm Isaku Yamahata

pci/monitor: print out bridge's filtering values and so on.

make pci_info_device() print out bridge's filtering value like
io base/limit, subbus and subordinate bus.

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

14421258 11/09/2009 04:43 pm Isaku Yamahata

pci: 64bit bar support.

implemented pci 64bit bar support.
The tricky bit is pci_update_mapping().
An OS is allowed to set the BAR such that OS can't address the area
pointed by BAR. It doesn't make sense, though.
In that case, don't map the BAR.

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

e94ff650 11/09/2009 04:43 pm Isaku Yamahata

pci: remove bus_num member from struct PCIBus.

Since It can be retrieved from pci configuration space,
the member is unnecessary.

Signed-off-by: Isaku Yamahata <>
Signed-off-by: Anthony Liguori <>

e822a52a 11/09/2009 04:43 pm Isaku Yamahata

pci: make pci configuration transaction more accurate.

This patch sorts out/enhances pci code to track pci bus topology
more accurately.
- Track host bus bridge with pci domain number. Although the
current qemu implementation supports only pci domian 0 yet....

74e32ac1 11/09/2009 04:43 pm Isaku Yamahata

pci: factor out the conversion logic from io port address into pci device.

factor out the logic which converts io port address into pci device
and offset in PCI configuration space.

Signed-off-by: Isaku Yamahata <>
Signed-off-by: Anthony Liguori <>

766347cc 11/09/2009 04:43 pm Isaku Yamahata

pci: move pci host stuff from pci.c to pci_host.c

Move pci host stuff from pci.c to pci_host.c.
And add some comments.
Later pcie host bridge functions will be defined in pcie_host.c
not to bloat pci.c.

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

a9f49946 11/09/2009 04:43 pm Isaku Yamahata

pci: pcie host and mmcfg support.

This patch adds common routines for pcie host bridge and pcie mmcfg.
This will be used by q35 based chipset emulation.

Signed-off-by: Isaku Yamahata <>
Signed-off-by: Anthony Liguori <>

6e355d90 11/09/2009 04:43 pm Isaku Yamahata

pci: introduce pcibus_t to represent pci bus address/size instead of uint32_t

This patch is preliminary for 64 bit BAR support.
Introduce dedicated type, pcibus_t, to represent pci bus address/size
instead of uint32_t.
Later this type will be changed to uint64_t....

89e8b13c 11/09/2009 04:43 pm Isaku Yamahata

pci: introduce FMT_PCIBUS for printf format for pcibus_t.

This patch is preliminary for 64bit BAR.
Later pcibus_t will be changed from uint32_t to uint64_t.
Introduce FMT_PCIBUS for printf format for pcibus_t.

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

4f8589e1 11/09/2009 04:43 pm Isaku Yamahata

pci: typedef pcibus_t as uint64_t instead of uint32_t.

This patch is preliminary for 64bit bar.
For 64bit bar support, change pcibus_t which represents
pci bus addr/size from uint32_t to uint64_t.
And also change FMT_pcibus for printf.

In pci_update_mapping() checks 32bit overflow....

0392a017 11/09/2009 04:43 pm Isaku Yamahata

pci: s/PCI_ADDRESS_SPACE_/PCI_BASE_ADDRESS_SPACE_/ to match pci_regs.h

make constants for pci base address match pci_regs.h by
renaming PCI_ADDRESS_SPACE_xxx to PCI_BASE_ADDRESS_SPACE_xxx.

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

5029fe12 11/09/2009 04:43 pm Isaku Yamahata

pci: clean up of pci_default_read_config.

This patch cleans up pci_default_read_config() removing
ugly length and range check.

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

b3b11697 11/09/2009 04:43 pm Isaku Yamahata

pci: make pci_bar() aware of header type 1.

make pci_bar() aware of header type 1. When PCI_ROM_SLOT
it should return PCI_ROM_ADDRESS1 (!= PCI_ROM_ADDRESS)

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

b0ff8eb2 11/09/2009 04:43 pm Isaku Yamahata

pci: use helper functions to access pci config space.

use pci_[gs]et_{byte, word, long}() to access pci configuration
space.

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

74c01823 11/09/2009 04:43 pm Isaku Yamahata

pci/bridge: clean up of pci_bridge_initfn()

- use symbolic constant
- use helper function pci_set_xxx()
- removed lines which initializes to 0.
It is unnecessary because it is already zeroed.
- add some comments on command registers.

Some initial values are suspicious because they seems to...

67a51b48 11/09/2009 04:43 pm Isaku Yamahata

pci: clean up pci_init_wmask()

use pci_set_word() for pci command register.

Signed-off-by: Isaku Yamahata <>
Signed-off-by: Anthony Liguori <>

2e49d64a 11/09/2009 04:43 pm Isaku Yamahata

pci: fix PCI_DPRINTF() wrt variadic macro.

add missing ## in PCI_DPRINTF() to compile.

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

e369cad7 11/09/2009 04:43 pm Isaku Yamahata

pci: introduce constant PCI_NUM_PINS for the number of interrupt pins, 4.

introduce constant PCI_NUM_PINS for the number of interrupt pins, 4.
and use it.

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

2217dcff 11/09/2009 04:43 pm Isaku Yamahata

pci: use PCI_SLOT() and PCI_FUNC().

use PCI_SLOT() and PCI_FUNC() where appropriate instead of
direct use of bit operation.

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

182f9c8a 11/09/2009 04:43 pm Isaku Yamahata

pci: define a constant to represent a unmapped bar and use it.

define a constant to represent a unmapped bar instead of -1 and use it.

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

c7bde572 10/27/2009 07:28 pm Juan Quintela

vmstate: Unfold VMSTATE_INT32_VARRAY() only use and remove it

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

1cc33683 10/27/2009 07:28 pm Gerd Hoffmann

zap DeviceState->nd

No users left.
Also cleanup obsolete helper functions.

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

dc7aff11 10/27/2009 07:28 pm Gerd Hoffmann

prepare pci nic init path for qdev property configuration.

Initialization path will work with both converted and not-converted
drivers, so we can convert drivers one by one.

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

dea7b3b9 10/15/2009 05:32 pm Mark McLoughlin

net: remove id field from NICInfo

Just use the name field instead since we now use the id paramater as
the name, if supplied. Only implication with this change is that if
id is not supplied, the value of the name paramater is used as an
id.

Patchworks-ID: 35512...

33e66b86 10/07/2009 04:54 pm Markus Armbruster

Check return value of qdev_init()

But do so only where it may actually fail. Leave the rest for the
next commit.

Patchworks-ID: 35167
Signed-off-by: Markus Armbruster <>
Signed-off-by: Anthony Liguori <>

e23a1b33 10/07/2009 04:54 pm Markus Armbruster

New qdev_init_nofail()

Like qdev_init(), but terminate program via hw_error() instead of
returning an error value.

Use it instead of qdev_init() where terminating the program on failure
is okay, either because it's during machine construction, or because...

05fcfada 10/06/2009 10:36 pm Michael S. Tsirkin

qemu/pci: clarify pci config load routine

PCI load routine has to be called with size equal to 256 (otherwise it
will crash in weird ways). So assert this, making code clearer.
Also avoid dynamically sized array on stack - good for portability.

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

0f457d91 10/06/2009 10:36 pm Michael S. Tsirkin

qemu/pci: make pci not depend on msix

Making pci device cleanup msix automatically makes pci.c depend on
msix.c, which is IMO messy. Since devices do msix_init it's easy and
natural for them to also do msix_uninit.

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

e52eb611 10/06/2009 10:36 pm Anthony Liguori

Revert "Fix exit on 'pci_add' Monitor command"

This reverts commit 0148fde54c2478ea8a47c8dbfe4c0fb8bda4d996.

As requested by Luiz.

Signed-off-by: Anthony Liguori <>

49bd1458 10/05/2009 05:32 pm Markus Armbruster

Fix pci_add storage not to exit on bad first argument

Monitor command "pci_add ADDR storage ..." does its work in
qemu_pci_hot_add_nic(). It called pci_create(..., ADDR) to create the
device. That's wrong, because pci_create() terminates the program
when ADDR is invalid....

9ee05825 10/05/2009 05:32 pm Markus Armbruster

Make it obvious that pci_nic_init() can't fail

Before this patch, pci_nic_init() returns NULL when it can't find the
model in pci_nic_models[]. Except this can't happen, because
qemu_check_nic_model_list() just searched for model in
pci_nic_models[], and terminated the program on failure....

07caea31 10/05/2009 05:32 pm Markus Armbruster

Fix pci_add nic not to exit on bad model

Monitor command "pci_add ADDR nic model=MODEL" uses pci_nic_init() to
create the NIC. When MODEL is unknown or "?", this prints to stderr
and terminates the program.

Change pci_nic_init() not to treat "?" specially, and to return NULL...

3312958d 10/05/2009 05:32 pm Markus Armbruster

pci_create() is now unused, remove it

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

499cf102 10/05/2009 05:32 pm Markus Armbruster

Rename pci_create_noinit() to pci_create()

It's qdev_create() specialized for PCI, so name it accordingly.

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

5330de09 10/05/2009 05:32 pm Michael S. Tsirkin

qemu/pci: refactor code/symbolic constants

refactor code slightly, adding symbolic constants and functions, and
using macros where possible. This will also make following reset
patches easier.

No functional changes.

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

c0b1905b 10/05/2009 05:32 pm Michael S. Tsirkin

qemu/pci: reset device registers on bus reset

Reset BARs and a couple of other registers on bus reset, as per PCI
spec.

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

ee995ffb 10/05/2009 05:32 pm Gerd Hoffmann

pci: hotplug windup

Create qdev infrastructure for pci hotplug. PCI bus implementations
must register a handler for hotplug. Creating a new PCI device will
automagically hot-plug it in case the PCI bus in question supports this.

Signed-off-by: Gerd Hoffmann <>...

a36a344d 10/05/2009 05:32 pm Gerd Hoffmann

pci: use qdev for device destruction.

pci_unregister_device is static now and hooked into Devicestate->exit.
qdev_free(pci_device) works now.

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

e3936fa5 10/05/2009 05:32 pm Gerd Hoffmann

pci: move unregister from PCIDevice to PCIDeviceInfo

One more cleanup while being at it ;)

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

21eea4b3 10/05/2009 05:32 pm Gerd Hoffmann

support inplace allocation for pci bus, split irq init.

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

03587182 10/05/2009 05:32 pm Gerd Hoffmann

convert pci bridge to qdev

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

0148fde5 10/05/2009 05:32 pm Luiz Capitulino

Fix exit on 'pci_add' Monitor command

If the user issues one of the following commands to the Monitor:

pci_add pci_addr=auto nic model=None
pci_add pci_addr=auto nic model=?

QEMU will exit, because the function used to perform sanity
checks (qemu_check_nic_model_list()) exits on error....

84e2e3eb 10/05/2009 05:32 pm Juan Quintela

vmstate: remove const for put operations

In a later patch, we introduce pre_save() and post_save() functions.
The whole point of that operation is to change things in the state.
Without this patch, we have to remove the const qualifier in each
use with a cast...

c227f099 10/02/2009 12:12 am Anthony Liguori

Revert "Get rid of _t suffix"

In the very least, a change like this requires discussion on the list.

The naming convention is goofy and it causes a massive merge problem. Something
like this must be presented on the list first so people can provide input...

99a0949b 10/01/2009 09:45 pm malc

Get rid of _t suffix

Some not so obvious bits, slirp and Xen were left alone for the time
being.

Signed-off-by: malc <>

71077c1c 09/15/2009 10:23 pm Gerd Hoffmann

qdev/pci: add pci_create_noinit()

Like pci_create_simple() but doesn't call qdev_init(), so one can
set properties before initializing the device.

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Blue Swirl <>

5d4e84c8 09/04/2009 05:37 pm Juan Quintela

We want the argument pass to set_irq to be opaque

piix_pci want to pass more things that the pic

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

15dc1128 09/04/2009 05:37 pm Juan Quintela

low_set_irq is not used anywhere

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

a60380a5 08/28/2009 04:47 am Juan Quintela

Add pci_ne2000_{save/load} functions, then remove pci_dev NE2000State field

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

81a322d4 08/28/2009 04:43 am Gerd Hoffmann

qdev: add return value to init() callbacks.

Sorry folks, but it has to be. One more of these invasive qdev patches.

We have a serious design bug in the qdev interface: device init
callbacks can't signal failure because the init() callback has no
return value. This patch fixes it....

2d1e9f96 08/28/2009 04:30 am Juan Quintela

Port PCI Bus to VMState design

This uses VARRAY and INT32_EQUAL values

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

f16c4abf 08/28/2009 04:30 am Juan Quintela

Add version_id to PCIDevice.

It is needed for VMState

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

73534f2f 08/28/2009 04:30 am Juan Quintela

Port PCIDevice state to VMState

This uses a variant of buffer, with extra checks. Also uses the new
support for cheking that a read value is less or equal than a field.

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

54586bd1 08/10/2009 09:05 pm Gerd Hoffmann

qdev/prop: convert pci.c to helper macros.

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>
Message-Id:

a6307b08 07/27/2009 04:39 pm Gerd Hoffmann

qdev/pci: use qdev_prop_pci_devfn

Put the new property into use.

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

72f44c8c 07/21/2009 11:53 am Blue Swirl

Sparc64: convert APB to qdev

Thanks to Igor Kovalenko for a bugfix.

Signed-off-by: Blue Swirl <>

eb54b6dc 07/17/2009 01:28 am Gerd Hoffmann

qdev: add id= support for pci nics.

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

8ad12514 07/17/2009 01:28 am Gerd Hoffmann

qdev: print device id in "info pci".

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

ee6847d1 07/17/2009 01:28 am Gerd Hoffmann

qdev: rework device properties.

This patch is a major overhaul of the device properties. The properties
are saved directly in the device state struct now, the linked list of
property values is gone.

Advantages: * We don't have to maintain the list with the property values....

d8d2e079 07/16/2009 04:28 pm Isaku Yamahata

pci.c: remove unnecessary #ifdef DEBUG_PCI.

remove unnecessary #ifdef DEBUG_PCI.

Signed-off-by: Isaku Yamahata <>
Signed-off-by: Anthony Liguori <>

616cbc78 07/12/2009 12:46 am Paul Brook

Fix PCI IRQ breakage

Zero initialize the PCI bus irq count.

Signed-off-by: Paul Brook <>

ac47a60b 07/11/2009 11:20 am Blue Swirl

Fix APB by reverting 16eaedf2668e9b347a59d73346fcc4c764c58348 partially

Signed-off-by: Blue Swirl <>

10c4c98a 07/09/2009 03:07 pm Gerd Hoffmann

qdev: replace bus_type enum with bus_info struct.

BusInfo is filled with name and size (pretty much like I did for
DeviceInfo as well). There is also a function pointer to print
bus-specific device information to the monitor. sysbus is hooked
up there, I've also added a print function for PCI....

16eaedf2 07/09/2009 03:07 pm Gerd Hoffmann

qdev/pci: misc fixes.

  • fix secondary bus setup. * use base->name instead of "FIXME" for device name.
    Yes, the device name is redundant. Only for drivers converted
    to qdev already though. Once all drivers are converted we can
    and should kill it....
0aab0d3a 07/09/2009 03:07 pm Gerd Hoffmann

qdev: update pci device registration.

Makes pci_qdev_register take a PCIDeviceInfo struct instead of a bunch
of parameters. Also adds config_read and config_write callbacks to
PCIDeviceInfo, so drivers needing these can be converted to the qdev
device API too....

a08d4367 06/29/2009 10:18 pm Jan Kiszka

Revert "Introduce reset notifier order"

This reverts commit 8217606e6edb49591b4a6fd5a0d1229cebe470a9 (and
updates later added users of qemu_register_reset), we solved the
problem it originally addressed less invasively.

Signed-off-by: Jan Kiszka <>...

e9283f8b 06/29/2009 10:18 pm Jan Kiszka

monitor: Drop pci_addr prefix from hotplug commands

The "pci_addr=" prefix currently required by pci_add/remove and
drive_add has no practical use. Drop it, but still silently accept it
for backward compatibility.

Signed-off-by: Jan Kiszka <>...

b7ee1603 06/24/2009 05:09 pm Michael S. Tsirkin

qemu/pci: make default_write_config use mask table

Change much of hw/pci to use symbolic constants and a table-driven
design: add a mask table with writable bits set and readonly bits unset.
Detect change by comparing original and new registers.

This makes it easy to support capabilities where read-only/writeable...

6f4cbd39 06/24/2009 05:09 pm Michael S. Tsirkin

qemu/pci: add routines to manage PCI capabilities

Add routines to manage PCI capability list. First user will be MSI-X.

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

bd4b65ee 06/24/2009 05:09 pm Michael S. Tsirkin

qemu/pci: check constant registers on load

Add "cmask" table of constant register masks: if a bit is not writeable
and is set in cmask table, this bit is checked on load. An attempt to
load an image that would change such a register causes load to fail....

07b7d053 06/22/2009 06:15 pm Markus Armbruster

Fix do_pci_register_device() to reject devfn already in use

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

5607c388 06/22/2009 06:15 pm Markus Armbruster

Support addr=... in option argument of -net nic

Make net_client_init() accept addr=, put the value into struct
NICinfo. Use it in pci_nic_init(), and remove arguments bus and
devfn.

Don't support addr= in third argument of monitor command pci_add,
because that clashes with its first argument. Admittedly unelegant....

1f5f6638 06/22/2009 06:15 pm Markus Armbruster

Make first argument of monitor command pci_add work

Simply pass the PCI address through qemu_pci_hot_add_nic() to
pci_nic_init() and through qemu_pci_hot_add_storage() to pci_create().

Before, pci_device_hot_add() passed along the PCI bus to use, and
ignored any user-specified slot....

6eaa6847 06/22/2009 06:10 pm Gleb Natapov

Add pci_bus_reset() function.

To reset internal irq handling data structures.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Yaniv Kamay <>
Signed-off-by: Anthony Liguori <>

28c2c264 06/16/2009 11:18 pm Avi Kivity

Rename pci_register_io_region() to pci_register_bar()

This function is used to manage a PCI BAR, so make the more generic
pci_register_io_region() available to other uses.

Signed-off-by: Avi Kivity <>
Signed-off-by: Anthony Liguori <>

074f2fff 06/11/2009 03:47 pm Gerd Hoffmann

qdev: move name+size into DeviceInfo (v2)

Rationale: move device information from code to data structures.

v2: Adapt the drivers missed in the first version.

Signed-off-by: Gerd Hoffmann <>

82384670 06/09/2009 08:25 pm Blue Swirl

Remove unused and misnamed field and variable

Signed-off-by: Blue Swirl <>

02e2da45 05/23/2009 02:13 am Paul Brook

Add common BusState

Implement and use a common device bus state. The main side-effect is
that creating a bus and attaching it to a parent device are no longer
separate operations. For legacy code we allow a NULL parent, but that
should go away eventually....

53c25cea 05/18/2009 08:26 pm Paul Brook

Separate virtio PCI code

Split the PCI host bindings from the VRing transport implementation.

Signed-off-by: Paul Brook <>

6b1b92d3 05/15/2009 12:35 am Paul Brook

PCI qdev support

Signed-off-by: Paul Brook <>

9d07d757 05/15/2009 12:35 am Paul Brook

PCI network qdev conversion

Signed-off-by: Paul Brook <>

cf21e106 05/15/2009 12:35 am Paul Brook

Virtio-net qdev conversion

Signed-off-by: Paul Brook <>

425c608c 05/03/2009 10:10 pm Isaku Yamahata

minor fix of pci_register_bus()

keep first_bus linked list correct.

Signed-off-by: Isaku Yamahata <>

6407f373 05/03/2009 10:03 pm Isaku Yamahata

use PCI_HEADER_TYPE.

use symbolic value instead of 0x0e and related value.

Signed-off-by: Isaku Yamahata <>

c2c5104b 04/10/2009 11:48 pm aliguori

Make PCI config status register read-only

From the documentation I can find, this register is supposed to be read-only.

Signed-off-by: Anthony Liguori <>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@7070 c046a42c-6fe2-441c-8c8c-71466251a162

376253ec 03/06/2009 01:01 am aliguori

monitor: Rework API (Jan Kiszka)

Refactor the monitor API and prepare it for decoupled terminals:
term_print functions are renamed to monitor_* and all monitor services
gain a new parameter (mon) that will once refer to the monitor instance
the output is supposed to appear on. However, the argument remains...

880345c4 02/11/2009 05:21 pm aliguori

Parse full PCI device addresses (Markus Armbruster)

This code parses full PCI device addresses. It then rejects domains
other than zero, because these are not supported in QEMU.

Signed-off-by: Marcelo Tosatti <>
Signed-off-by: Anthony Liguori <>...

a4c20c6a 02/11/2009 05:21 pm aliguori

qemu: warn if PCI region is not power of two (Marcelo Tosatti)

Otherwise the PCI size for such regions can be calculated erroneously.

Signed-off-by: Marcelo Tosatti <>
Signed-off-by: Anthony Liguori <>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6604 c046a42c-6fe2-441c-8c8c-71466251a162

5851e08c 02/11/2009 05:21 pm aliguori

qemu: add pci_unregister_device (Marcelo Tosatti)

Unregister the pci device, unassign its IO and memory regions, and free
associated data.

Add a callback so drivers can free device state.

Signed-off-by: Marcelo Tosatti <>
Signed-off-by: Anthony Liguori <>...

72da4208 02/11/2009 05:19 pm aliguori

qemu: return PCIDevice on net device init and record devfn (Marcelo Tosatti)

Change the PCI network drivers init functions to return the PCIDev, to
inform which slot has been hot-plugged.

Also record PCIDevice structure on NICInfo to locate for release on...

3ae80618 02/11/2009 05:19 pm aliguori

qemu: add pci helper functions (Marcelo Tosatti)

Add pci_find_bus/pci_find_device to be used by PCI hotplug.

Signed-off-by: Marcelo Tosatti <>
Signed-off-by: Anthony Liguori <>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6592 c046a42c-6fe2-441c-8c8c-71466251a162

487414f1 02/06/2009 12:06 am aliguori

hw: remove error handling from qemu_malloc() callers (Avi Kivity)

Signed-off-by: Avi Kivity <>
Signed-off-by: Anthony Liguori <>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6529 c046a42c-6fe2-441c-8c8c-71466251a162

173a543b 02/01/2009 09:26 pm blueswir1

Add and use #defines for PCI device classes

This patch adds and uses #defines for PCI device classes and subclases,
using a new pci_config_set_class() function, similar to the recently
added pci_config_set_vendor_id() and pci_config_set_device_id().

Change since v1: fixed compilation of hw/sun4u.c...