pseries: Configure PCI bridge using properties
commit298a971024534e9ab6c7b57845bbbd8188867d7a
authorDavid Gibson <david@gibson.dropbear.id.au>
Mon, 12 Mar 2012 17:50:24 +0000 (12 17:50 +0000)
committerAlexander Graf <agraf@suse.de>
Thu, 15 Mar 2012 12:12:12 +0000 (15 13:12 +0100)
tree6756b4a5792414d53d45369f6be70ce845d2c7e5
parent29979a8d2596d33b474c11efb376ed47ba1d44d3
pseries: Configure PCI bridge using properties

Currently, the function spapr_create_phb() uses its parameters to
initialize the correct memory windows for the new PCI Host Bridge
(PHB).  This is not the way things are supposed to be done with qdevs,
and means you can't create extra PHBs easily using -device.

Since pSeries machines can and do have many PHBs with various
configurations, this is a real limitation, not just a theoretical.
This patch, therefore, alters the PHB initialization code to use qdev
properties to set these parameters of the new bridge, moving most of
the code from spapr_create_phb() to spapr_phb_init().

While we're at it, we change the naming of each PCI bus and its
associated memory regions to be less arbitrary and make it easier to
relate the guest and qemu views of memory to each other.

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
hw/spapr_pci.c
hw/spapr_pci.h