summaryrefslogtreecommitdiff
path: root/src/dev/platform.cc
diff options
context:
space:
mode:
authorAndreas Sandberg <andreas.sandberg@arm.com>2016-01-15 11:30:06 +0000
committerAndreas Sandberg <andreas.sandberg@arm.com>2016-01-15 11:30:06 +0000
commit6d058a63b0f6fde683de46ea27497bb34855c7d1 (patch)
tree16edc42efa9e1083f443392f9b8eb060445b64eb /src/dev/platform.cc
parent8406a54907a00e19389389f0b1497164a7bc637d (diff)
downloadgem5-6d058a63b0f6fde683de46ea27497bb34855c7d1.tar.xz
dev, arm: Add support for automatic PCI interrupt routing
Add support for automatic PCI interrupt routing using a device's ID on the PCI bus. Our current DTBs typically tell the kernel that we do this or something similar when declaring the PCI controller. This changeset adds an option to make the simulator behave in the same way. Interrupt routing can be selected by setting the int_policy parameter in the GenericArmPciHost. The following values are supported: * ARM_PCI_INT_STATIC: Use the old static routing policy using the interrupt line from a device's configurtion space. * ARM_PCI_INT_DEV: Use device number on the PCI bus to map to an interrupt in the GIC. The interrupt is computed as: gic_int = int_base + (pci_dev % int_count) * ARM_PCI_INT_PIN: Use device interrupt pin on the PCI bus to map to an interrupt in the GIC. The PCI specification reserves pin ID 0 for devices without interrupts, the interrupt therefore computed as: gic_int = int_base + ((pin - 1) % int_count)
Diffstat (limited to 'src/dev/platform.cc')
0 files changed, 0 insertions, 0 deletions