ppc: Convert PPC UIC to a QOM device
commit34d0831f38fd8ca253fc77d66f54976e440f0131
authorPeter Maydell <peter.maydell@linaro.org>
Sat, 12 Dec 2020 00:15:31 +0000 (12 00:15 +0000)
committerDavid Gibson <david@gibson.dropbear.id.au>
Wed, 6 Jan 2021 00:09:59 +0000 (6 11:09 +1100)
tree50e61cfcb45f24b283d505bc2f5bef62e0b6c358
parent59a958bb7451758d9120697b92237c0ae706abf3
ppc: Convert PPC UIC to a QOM device

Currently the PPC UIC ("Universal Interrupt Controller") is implemented
as a non-QOM device in ppc4xx_devs.c. Convert it to a proper QOM device
in hw/intc.

The ppcuic_init() function is retained for the moment with its current
interface; in subsequent commits this will be tidied up to avoid the
allocation of an irq array.

This conversion adds VMState support.

It leaves the LOG_UIC() macro as-is to maximise the extent to which
this is simply code-movement rather than a rewrite (in new code it
would be better to use tracepoints).

The default property values for dcr-base and use-vectors are set to
match those use by most of our boards with a UIC.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <20201212001537.24520-3-peter.maydell@linaro.org>
Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Tested-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
MAINTAINERS
hw/intc/Kconfig
hw/intc/meson.build
hw/intc/ppc-uic.c [new file with mode: 0644]
hw/ppc/Kconfig
hw/ppc/ppc4xx_devs.c
include/hw/intc/ppc-uic.h [new file with mode: 0644]