xemu/include/hw/ppc
David Gibson 738d5db824 xics: XICS should not be a SysBusDevice
Currently xics - the component of the IBM POWER interrupt controller
representing the overall interrupt fabric / architecture is
represented as a descendent of SysBusDevice.  However, this is not
really correct - the xics presents nothing in MMIO space so it should
be an "unattached" device in the current QOM model.

Since this device will always be created by the machine type, not created
specifically from the command line, and because it has no migrated state
it should be safe to move it around the device composition tree.

Therefore this patch changes it to a descendent of TYPE_DEVICE, and
makes it an unattached device.  So that its reset handler still gets
called correctly, we add a qdev_set_parent_bus() to attach it to
sysbus.  It's not really clear that's correct (instead of using
register_reset()) but it appears to a common technique.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
[clg corrected problems with reset]
Signed-off-by: Cédric Le Goater <clg@kaod.org>
[dwg folded together and updated commit message]
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2017-03-01 11:23:39 +11:00
..
fdt.h Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
mac_dbdma.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
openpic.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
pnv_core.h ppc/pnv: add XSCOM handlers to PnvCore 2016-10-28 09:38:25 +11:00
pnv_lpc.h ppc/pnv: add a LPC controller 2016-10-28 09:38:25 +11:00
pnv_xscom.h ppc/pnv: add a 'xscom_core_base' field to PnvChipClass 2016-11-15 10:08:43 +11:00
pnv.h ppc/pnv: add a 'xscom_core_base' field to PnvChipClass 2016-11-15 10:08:43 +11:00
ppc4xx.h Remove unused function declarations 2016-09-15 15:32:22 +03:00
ppc_e500.h intc/openpic: Build openpic only once 2013-07-09 21:33:02 +02:00
ppc.h Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
spapr_cpu_core.h spapr: move spapr_core_[foo]plug() callbacks close to machine code in spapr.c 2017-02-22 11:28:27 +11:00
spapr_drc.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
spapr_ovec.h spapr: migration support for CAS-negotiated option vectors 2016-11-23 12:00:48 +11:00
spapr_rtas.h tests: add RTAS command in the protocol 2016-09-23 10:29:40 +10:00
spapr_vio.h char: rename CharDriverState Chardev 2017-01-27 18:07:59 +01:00
spapr.h spapr: reuse machine->possible_cpus instead of cores[] 2017-02-22 11:28:28 +11:00
xics.h xics: XICS should not be a SysBusDevice 2017-03-01 11:23:39 +11:00