Hi Antonios and all, Recently, I want to test vfio on ARM and refer to this document "http://www.virtualopensystems.com/en/solutions/guides/vfio-on-arm/" . Following is my test steps. 1. Get kernel src git clone git://github.com/virtualopensystems/linux-kvm-arm.git cd linux-kvm-arm git checkout origin/vfio-platform-v4 2. Get kernel config http://www.virtualopensystems.com/downloads/guides/kvm_on_arm/kernel-config > .config 3. Make menuconfig the kernel enable the KVM, SMMU and VFIO configuration options for the host kernel 4. Compile the kernel CROSS_COMPILE=arm-linux-gnueabi- ARCH=arm make zImage 5. Build a device tree There isn't rtsm_ve-cortex_a15x4_a7x4.dts in the directory "arch/arm/boot/dts/". So I download it from this git "git://github.com/virtualopensystems/arm-dts.git". ./scripts/dtc/dtc -O dtb -o host-a15.dtb ../arm-dts/fast_models/rtsm_ve-cortex_a15x4_a7x4.dts But the rtsm_ve-cortex_a15x4_a7x4.dts doesn't contain the DMA or SMMU device. 6. Launch the model Following is the boot_model.sh. #!/bin/bash MODEL_PATH='/root/ARM/FastModelsPortfolio_8.2/examples/FVP_VE/Build_Cortex-A15x4-A7x4-MMU400-DMA330/Linux64-Debug-GCC-4.4' $MODEL_PATH/isim_system \ -a coretile.cluster0.*=/home/vfio/linux-system-semi.axf \ -a coretile.cluster1.*=/home/vfio/linux-system-semi.axf \ -C motherboard.smsc_91c111.enabled=1 \ -C motherboard.hostbridge.interfaceName="ARMroot" \ -C coretile.cluster0.cpu0.semihosting-enable=1 \ -C coretile.dmac0_int_base=64 \ -C coretile.dmac1_int_base=96 \ -C coretile.dmac2_int_base=128 \ -C coretile.dmac3_int_base=168 \ -C coretile.mmu400_dma330.dmac0.p_irq_nsecure="true" \ -C coretile.mmu400_dma330.dmac1.p_irq_nsecure="true" \ -C coretile.mmu400_dma330.dmac2.p_irq_nsecure="true" \ -C coretile.mmu400_dma330.dmac3.p_irq_nsecure="true" \ -C coretile.cluster0.cpu0.semihosting-cmd_line="\ --kernel /home/vfio/zImage \ --initrd /home/vfio/filesystem.cpio.gz \ --dtb host-a15.dtb -- earlyprintk console=ttyAMA0 mem=2048M " It launched successfully. There is "vfio_platform" in the directory, but I can't see any DMA decive in the directory "/sys/devices". PS: I also try to enable the kernel configuration option for DMA. "DMA Engine support --> DMA API Driver for PL330". Is there something I'm wrong? Is there any way I can get the right device tree and kernel config? Look forward to your reply. -- Shannon _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/mailman/listinfo/kvmarm