1. 22 Jan, 2019 4 commits
  2. 06 Apr, 2018 1 commit
  3. 29 Jan, 2018 2 commits
  4. 03 Nov, 2017 1 commit
    • Jean-Philippe Brucker's avatar
      Add GICv2m support · f6108d72
      Jean-Philippe Brucker authored
      GICv2m is a small extension to the GICv2 architecture, specified in the
      Server Base System Architecture (SBSA). It adds a set of register to
      converts MSIs into SPIs, effectively enabling MSI support for pre-GICv3
      Implement a GICv2m emulation entirely in userspace. Add a thin translation
      layer in irq.c to catch the MSI->SPI routing setup of the guest, and then
      transform irqfd injection of MSI into the associated SPI. There shouldn't
      be any significant runtime overhead compared to gicv3-its.
      The device can be enabled by passing "--irqchip gicv2m" to kvmtool.
      Signed-off-by: default avatarJean-Philippe Brucker <jean-philippe.brucker@arm.com>
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
  5. 09 Jun, 2017 5 commits
  6. 29 Jun, 2015 1 commit
  7. 22 Jun, 2015 1 commit
    • Andre Przywara's avatar
      kvmtool: don't use PCI config space IRQ line field · e9922aaf
      Andre Przywara authored
      In PCI config space there is an interrupt line field (offset 0x3f),
      which is used to initially communicate the IRQ line number from
      firmware to the OS. _Hardware_ should never use this information,
      as the OS is free to write any information in there.
      But kvmtool uses this number when it triggers IRQs in the guest,
      which fails starting with Linux 3.19-rc1, where the PCI layer starts
      writing the virtual IRQ number in there.
      Fix that by storing the IRQ number in a separate field in
      struct virtio_pci, which is independent from the PCI config space
      and cannot be influenced by the guest.
      This fixes ARM/ARM64 guests using PCI with newer kernels.
      Signed-off-by: Andre Przywara's avatarAndre Przywara <andre.przywara@arm.com>
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
  8. 16 Jun, 2015 1 commit
  9. 01 Jun, 2015 24 commits