summaryrefslogtreecommitdiffstats
path: root/include/hw/arm
diff options
context:
space:
mode:
authorChristoffer Dall2015-06-02 15:56:23 +0200
committerPeter Maydell2015-06-02 15:56:25 +0200
commit770c58f8d10b61e80a211d87df83670711631530 (patch)
tree80d851d98dce98604182a228601d37295fba82cc /include/hw/arm
parenttarget-arm: Add GIC phandle to VirtBoardInfo (diff)
downloadqemu-770c58f8d10b61e80a211d87df83670711631530.tar.gz
qemu-770c58f8d10b61e80a211d87df83670711631530.tar.xz
qemu-770c58f8d10b61e80a211d87df83670711631530.zip
arm_gicv2m: Add GICv2m widget to support MSIs
The ARM GICv2m widget is a little device that handles MSI interrupt writes to a trigger register and ties them to a range of interrupt lines wires to the GIC. It has a few status/id registers and the interrupt wires, and that's about it. A board instantiates the device by setting the base SPI number and number SPIs for the frame. The base-spi parameter is indexed in the SPI number space only, so base-spi == 0, means IRQ number 32. When a device (the PCI host controller) writes to the trigger register, the payload is the GIC IRQ number, so we have to subtract 32 from that and then index into our frame of SPIs. When instantiating a GICv2m device, tell PCI that we have instantiated something that can deal with MSIs. We rely on the board actually wiring up the GICv2m to the PCI host controller. Reviewed-by: Eric Auger <eric.auger@linaro.org> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org> Message-id: 1432897270-7780-3-git-send-email-christoffer.dall@linaro.org Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'include/hw/arm')
0 files changed, 0 insertions, 0 deletions