qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [RFC PATCH v2 0/3] [RFC PATCH 0/3] VFIO support for AMBA de


From: Baptiste Reynal
Subject: [Qemu-devel] [RFC PATCH v2 0/3] [RFC PATCH 0/3] VFIO support for AMBA devices
Date: Mon, 22 Dec 2014 17:23:44 +0100

The following series add VFIO support for AMBA devices.

It introduces multiple compatible string support to deal with arm,primecell
compatible string.

The VFIOPlatformDevice now checks for this string and performs amba specific
operations if it is present (change path of the device, add clock in the fd).

This patch applies on top of http://git.linaro.org/people/eric.auger/qemu.git
on branch vfio_integ_v9_rc6_official_dynsysbus_v6 for irqfd support.

TODO:
- The IRQ forwarding doesn't work.
- VFIO_GET_DEVTREE_INFO integration.

The series has been tested using PL330 device, irq forwarding doesn't work.
(The test hangs on the first IRQ).
The test performed relies on a special guest kernel, which can be found here
http://github.com/virtualopensystems/linux-kvm-arm.git on branch
vfio-platform-v6-guide, with CONFIG_KVM, CONFIG_ARM_SMMU, CONFIG_PL330_DMA
and CONFIG_VOSYS_DMATEST enabled.

Run qemu using this command:
./qemu-system-arm -M virt -m 512M -enable-kvm \
        -device 
vfio-pl330,host="2c0a0000.dma",id=dma,x-irqfd=false,x-forward=false \
        -append "earlyprintk console=ttyAMA0" \
        -kernel zImage -nographic

Then run DMA test:
mount -t debugfs none /sys/kernel/debug
echo 1 > /sys/kernel/debug/vosys_dmatest/start

Results can be checked using dmesg.

Changes since v1:
- Remove add_generic_fdt_node
- Refactor add_calxeda_midway_xgmac_fdt_node for code reuse
- Add add_arm_pl330_fdt_node

Baptiste Reynal (3):
  hw/vfio/sysbus-fdt: refactoring
  hw/vfio: amba device support
  hw/vfio: add pl330 device support

 hw/arm/sysbus-fdt.c           | 180 ++++++++++++++++++++++++++++++++++++------
 hw/vfio/Makefile.objs         |   1 +
 hw/vfio/pl330.c               |  41 ++++++++++
 hw/vfio/platform.c            |  15 +++-
 include/hw/vfio/vfio-common.h |   1 +
 include/hw/vfio/vfio-pl330.h  |  26 ++++++
 6 files changed, 235 insertions(+), 29 deletions(-)
 create mode 100644 hw/vfio/pl330.c
 create mode 100644 include/hw/vfio/vfio-pl330.h

-- 
2.2.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]