aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xHooks/revert.sh3
-rwxr-xr-xHooks/start.sh2
-rwxr-xr-xHooks/vfio-usb.sh8
3 files changed, 13 insertions, 0 deletions
diff --git a/Hooks/revert.sh b/Hooks/revert.sh
index 3157a30..7d15dfa 100755
--- a/Hooks/revert.sh
+++ b/Hooks/revert.sh
@@ -24,3 +24,6 @@ modprobe drm
modprobe nvidia_uvm
systemctl start sddm.service
+
+echo 0000:00:14.0 > /sys/bus/pci/drivers/vfio-pci/unbind
+echo 0000:00:14.0 > /sys/bus/pci/drivers/xhci_hcd/bind
diff --git a/Hooks/start.sh b/Hooks/start.sh
index 241fdcc..be360ac 100755
--- a/Hooks/start.sh
+++ b/Hooks/start.sh
@@ -22,3 +22,5 @@ virsh nodedev-detach $VIRSH_GPU_AUDIO
modprobe vfio
modprobe vfio_pci
modprobe vfio_iommu_type1
+
+./usr/share/UnbindUSB/vfio-usb.sh 0000:00:14.0
diff --git a/Hooks/vfio-usb.sh b/Hooks/vfio-usb.sh
new file mode 100755
index 0000000..f694c14
--- /dev/null
+++ b/Hooks/vfio-usb.sh
@@ -0,0 +1,8 @@
+for dev in "$@"; do
+ vendor=$(cat /sys/bus/pci/devices/$dev/vendor)
+ device=$(cat /sys/bus/pci/devices/$dev/device)
+ if [ -e /sys/bus/pci/devices/$dev/driver ]; then
+ echo $dev > /sys/bus/pci/devices/$dev/driver/unbind
+ fi
+ echo $vendor $device > /sys/bus/pci/drivers/vfio-pci/new_id
+done