From ac483b21106a0d3a7537a1329d3f15d1564af0ab Mon Sep 17 00:00:00 2001 From: Daniel Krebs Date: Mon, 26 Mar 2018 14:31:51 +0200 Subject: [PATCH] scripts: fix non-root script * load IOMMU type 1 kernel module * determine IOMMU group dynamically * add user dkr to fpga group --- fpga/scripts/non_root.sh | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) mode change 100644 => 100755 fpga/scripts/non_root.sh diff --git a/fpga/scripts/non_root.sh b/fpga/scripts/non_root.sh old mode 100644 new mode 100755 index 22e4f941d..a380ccf3a --- a/fpga/scripts/non_root.sh +++ b/fpga/scripts/non_root.sh @@ -1,16 +1,22 @@ #!/bin/bash -IOMMU_GROUP=24 +# PCI-e parameters of FPGA card PCI_BDF="0000:03:00.0" +PCI_VID="10ee" +PCI_PID="7022" modprobe vfio modprobe vfio_pci +modprobe vfio_iommu_type1 -echo "10ee 7022" > /sys/bus/pci/drivers/vfio-pci/new_id -echo ${PCI_BDF} > /sys/bus/pci/drivers/vfio-pci/bind +IOMMU_GROUP=`basename $(readlink /sys/bus/pci/devices/${PCI_BDF}/iommu_group)` + +# bind to vfio driver +echo "${PCI_VID} ${PCI_PID}" > /sys/bus/pci/drivers/vfio-pci/new_id groupadd -f fpga usermod -G fpga -a svg +usermod -G fpga -a dkr chgrp fpga /dev/vfio/${IOMMU_GROUP} chmod g+rw /dev/vfio/${IOMMU_GROUP}