Vfio-on-arm: the device tree does not contain the DMA device

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

 



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




[Index of Archives]     [Linux KVM]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux