change to case switches
This commit is contained in:
parent
8faf631c96
commit
73739548a3
2 changed files with 36 additions and 34 deletions
|
@ -20,38 +20,39 @@ Optionally it may also include:
|
||||||
exec "$SCRIPTDIR/utils/ls-iommu" | grep -i "group $1" | cut -d " " -f 1-4,8- | perl -pe "s/\[[0-9a-f]{4}\]: //"
|
exec "$SCRIPTDIR/utils/ls-iommu" | grep -i "group $1" | cut -d " " -f 1-4,8- | perl -pe "s/\[[0-9a-f]{4}\]: //"
|
||||||
echo "#------------------------------------------#"
|
echo "#------------------------------------------#"
|
||||||
|
|
||||||
printf "
|
printf "
|
||||||
To use any of these devices for passthrough ALL of them has to be passed through to the VMs\
|
To use any of these devices for passthrough ALL of them has to be passed through to the VMs\
|
||||||
|
|
||||||
To return to the previous page just press ENTER without typing in anything.
|
To return to the previous page just press ENTER without typing in anything.
|
||||||
"
|
"
|
||||||
read -p "Do you want to use these devices for passthrough? [y/N]: " YESNO
|
read -p "Do you want to use these devices for passthrough? [y/N]: " YESNO
|
||||||
|
|
||||||
if [[ ${YESNO} =~ [Yy]* ]];
|
case "${YESNO}" in
|
||||||
then
|
[Yy]*)
|
||||||
# Get the hardware ids from the selected group
|
# Get the hardware ids from the selected group
|
||||||
local GPU_DEVID=$($SCRIPTDIR/utils/ls-iommu | grep -i "group $1" | perl -pe "s/.+\[([0-9a-f]{4}:[0-9a-f]{4})\].+/\1/" | perl -pe "s/\n/,/" | perl -pe "s/,$/\n/")
|
local GPU_DEVID=$($SCRIPTDIR/utils/ls-iommu | grep -i "group $1" | perl -pe "s/.+\[([0-9a-f]{4}:[0-9a-f]{4})\].+/\1/" | perl -pe "s/\n/,/" | perl -pe "s/,$/\n/")
|
||||||
|
|
||||||
# Get the PCI ids
|
# Get the PCI ids
|
||||||
local PCI_ID=$($SCRIPTDIR/utils/ls-iommu | grep -i "group $1" | cut -d " " -f 4 | perl -pe "s/\n/ /" | perl -pe "s/\s$//")
|
local PCI_ID=$($SCRIPTDIR/utils/ls-iommu | grep -i "group $1" | cut -d " " -f 4 | perl -pe "s/\n/ /" | perl -pe "s/\s$//")
|
||||||
|
|
||||||
# Write the GPU_PCI_IDs to the config that quickemu might make use of in the future
|
# Write the GPU_PCI_IDs to the config that quickemu might make use of in the future
|
||||||
printf "GPU_PCI_ID=($PCI_ID)
|
printf "GPU_PCI_ID=($PCI_ID)
|
||||||
USB_CTL_ID=()
|
USB_CTL_ID=()
|
||||||
" > "$SCRIPTDIR/$QUICKEMU/qemu-vfio_vars.conf"
|
" > "$SCRIPTDIR/$QUICKEMU/qemu-vfio_vars.conf"
|
||||||
|
|
||||||
# Get the PCI_ID
|
# Get the PCI_ID
|
||||||
local ROM_PCI_ID=$($SCRIPTDIR/utils/ls-iommu | grep -i "vga" | grep -i "group $1" | cut -d " " -f 4)
|
local ROM_PCI_ID=$($SCRIPTDIR/utils/ls-iommu | grep -i "vga" | grep -i "group $1" | cut -d " " -f 4)
|
||||||
|
|
||||||
# Get the GPU ROM
|
# Get the GPU ROM
|
||||||
"$SCRIPTDIR/lib/get_GPU_ROM.sh" "$ROM_PCI_ID"
|
"$SCRIPTDIR/lib/get_GPU_ROM.sh" "$ROM_PCI_ID"
|
||||||
|
|
||||||
# Start setting up modules
|
|
||||||
exec "$SCRIPTDIR/lib/set_MODULES.sh" $GPU_DEVID
|
|
||||||
else
|
|
||||||
exec "$SCRIPTDIR/lib/get_GPU.sh"
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
# Start setting up modules
|
||||||
|
exec "$SCRIPTDIR/lib/set_MODULES.sh" $GPU_DEVID
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
exec "$SCRIPTDIR/lib/get_GPU.sh"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
function main () {
|
function main () {
|
||||||
|
|
|
@ -20,20 +20,21 @@ To use any of the devices shown for passthrough, all of them have to be passed t
|
||||||
|
|
||||||
To return to the previous page just press ENTER.
|
To return to the previous page just press ENTER.
|
||||||
"
|
"
|
||||||
read -p "Do you want to use the displayed devices for passthrough? [y/N]: " YESNO
|
read -p "Do you want to use the displayed devices for passthrough? [y/N]: " YESNO
|
||||||
|
|
||||||
if [[ ${YESNO} =~ [Yy]* ]];
|
case "${YESNO}" in
|
||||||
then
|
[Yy]*)
|
||||||
# Get the PCI ids
|
# Get the PCI ids
|
||||||
local PCI_ID=$($SCRIPTDIR/utils/ls-iommu | grep -i "group $1" | cut -d " " -f 4 | perl -pe "s/\n/ /" | perl -pe "s/\s$//")
|
local PCI_ID=$($SCRIPTDIR/utils/ls-iommu | grep -i "group $1" | cut -d " " -f 4 | perl -pe "s/\n/ /" | perl -pe "s/\s$//")
|
||||||
|
|
||||||
# Replace the blank USB_CTL_ID with the PCI_ID for the usb controller the user wants to pass through
|
|
||||||
perl -pi -e "s/USB_CTL_ID=\(\)/USB_CTL_ID=\($PCI_ID\)/" "$SCRIPTDIR/$QUICKEMU/qemu-vfio_vars.conf"
|
|
||||||
exec "$SCRIPTDIR/lib/set_CMDLINE.sh"
|
|
||||||
else
|
|
||||||
exec "$SCRIPTDIR/lib/get_USB_CTL.sh"
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
# Replace the blank USB_CTL_ID with the PCI_ID for the usb controller the user wants to pass through
|
||||||
|
perl -pi -e "s/USB_CTL_ID=\(\)/USB_CTL_ID=\($PCI_ID\)/" "$SCRIPTDIR/$QUICKEMU/qemu-vfio_vars.conf"
|
||||||
|
exec "$SCRIPTDIR/lib/set_CMDLINE.sh"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
exec "$SCRIPTDIR/lib/get_USB_CTL.sh"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
function main () {
|
function main () {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue