Statistics
| Branch: | Revision:

root / hw / pci_bridge.c @ 57c83dac

History | View | Annotate | Download (12.6 kB)

# Date Author Comment
40021f08 01/27/2012 06:50 pm Anthony Liguori

pci: convert to QEMU Object Model

Signed-off-by: Anthony Liguori <>

52ce6f05 10/23/2011 05:05 pm Blue Swirl

pci_bridge: fix typo

Reviewed-by: Avi Kivity <>
Signed-off-by: Blue Swirl <>

336411ca 09/20/2011 05:46 pm Michael S. Tsirkin

pci_bridge: simplify memory regions some more

replace alloc/free with struct members.
todo: smash with initial implementation after
testing.

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

778d1799 09/19/2011 09:22 pm Wen Congyang

pci_bridge: use parent bus's address space

The switch to the new memory API caused the following problem:

The pci device may call pci_register_bar() to use PCI bus's address
space. But we don't init PCI bus's address space if it is not bus
0. A crash was reported:...

7df32ca0 09/19/2011 09:22 pm Michael S. Tsirkin

pci: implement bridge filtering

Support bridge filtering on top of the memory
API as suggested by Avi Kivity:

Create a memory region for the bridge's address space. This region is
not directly added to system_memory or its descendants. Devices under
the bridge see this region as its pci_address_space(). The region is...

a5fce077 11/22/2010 10:00 am Isaku Yamahata

pci bridge: implement secondary bus reset

Trigger secondary bus reset when secondary bus reset bit
value changes from 0 to 1.

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

5afb9869 10/27/2010 08:01 pm Blue Swirl

Introduce range.h

Extract range functions from pci.h. These will be used by later patches
by non-PCI devices. Adjust current users.

Signed-off-by: Blue Swirl <>
(cherry picked from commit bf1b00712375bea65f2254dea8281fa646eebbd5)

0208def1 10/20/2010 01:05 pm Isaku Yamahata

pci/bridge: fix pci_bridge_reset()

The lower bits of base/limit registers is RO and shouldn't be zero
cleared on reset. This patch fixes it.
In fact, the default value of base/limit registers aren't specified
in the spec. And some bridges disable forwarding on reset instead of...

f4c817e0 09/07/2010 08:10 pm Isaku Yamahata

pci bridge: add helper function for ssvid capability.

helper function to add ssvid capability.

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

68f79994 09/07/2010 08:01 pm Isaku Yamahata

pci_bridge: introduce pci bridge library.

introduce pci bridge library.
convert apb bridge and dec p2p bridge to use new pci bridge library.
save/restore is supported as a side effect.
This is also preparation for pci express root/upstream/downstream port....

51a92333 07/22/2010 12:21 pm Isaku Yamahata

pci_bridge: clean up: remove pci_{register, unregister}_secondary_bus()

Remove pci_{register, unregister}_secondary_bus() by open code.
They are old stype API and aren't used any more by others. So eliminate it.

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

7e98e3af 07/22/2010 12:21 pm Isaku Yamahata

pci_bridge: rename PCIBridge::bus -> PCIBridge::sec_bus.

To avoid confusion of primary bus with secondary bus,
rename PCIBridge::bus to PCIBridge::sec_bus.

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

783753fd 07/22/2010 12:21 pm Isaku Yamahata

pci/bridge: split out pci bridge code into pci_bridge.c from pci.c

Move pci bridge related code into pci_bridge.c from pci.c
for further enhancement. pci.c is big enough now, so split it out.
No code change but exporting some accesser functions.

In fact, few pci bridge functions stays in pci.c....