This commit is contained in:
HikariKnight 2022-03-12 14:14:56 +01:00
parent 96809da530
commit 0bf8e32062
No known key found for this signature in database
GPG key ID: E8B239063B022F5A

View file

@ -6,7 +6,7 @@ function get_GPU_ROM () {
source "$SCRIPTDIR/lib/paths.sh" source "$SCRIPTDIR/lib/paths.sh"
VBIOS_PATH=$(find /sys/devices -name rom | grep "$1") VBIOS_PATH=$(find /sys/devices -name rom | grep "$1")
printf "We will now attempt to dump the vbios of your selected GPU. echo "We will now attempt to dump the vbios of your selected GPU.
Passing a VBIOS rom to the card used for passthrough is required for some cards, but not all. Passing a VBIOS rom to the card used for passthrough is required for some cards, but not all.
Some cards also requires you to patch your VBIOS romfile, check online if this is neccessary for your card. Some cards also requires you to patch your VBIOS romfile, check online if this is neccessary for your card.
The VBIOS will be read from $VBIOS_PATH The VBIOS will be read from $VBIOS_PATH
@ -17,15 +17,17 @@ sudo cat $VBIOS_PATH > $SCRIPTDIR/$QUICKEMU/vfio_card.rom
echo 0 | sudo tee $VBIOS_PATH echo 0 | sudo tee $VBIOS_PATH
" "
read -p "Do you want to dump the VBIOS, choosing N will skip this step [y/N]: " YESNO read -r -p "Do you want to dump the VBIOS, choosing N will skip this step [y/N]: " YESNO
case "${YESNO}" in case "${YESNO}" in
[Yy]*) [Yy]*)
echo 1 | sudo tee "$VBIOS_PATH" echo 1 | sudo tee "$VBIOS_PATH"
sudo cat "$VBIOS_PATH" > "$SCRIPTDIR/$QUICKEMU/vfio_card.rom" sudo cat "$VBIOS_PATH" > "$SCRIPTDIR/$QUICKEMU/vfio_card.rom"
sudo md5sum "$VBIOS_PATH" | cut -d " " -f 1 > "$SCRIPTDIR/$QUICKEMU/vfio_card.rom.md5" sudo md5sum "$VBIOS_PATH" | cut -d " " -f 1 > "$SCRIPTDIR/$QUICKEMU/vfio_card.rom.md5"
local ROM_MD5=$(sudo md5sum "$VBIOS_PATH" | cut -d " " -f 1) local ROM_MD5
ROM_MD5=$(sudo md5sum "$VBIOS_PATH" | cut -d " " -f 1)
echo 0 | sudo tee "$VBIOS_PATH" echo 0 | sudo tee "$VBIOS_PATH"
local ROMFILE_MD5=$(md5sum "$SCRIPTDIR/$QUICKEMU/vfio_card.rom" | cut -d " " -f 1) local ROMFILE_MD5
ROMFILE_MD5=$(md5sum "$SCRIPTDIR/$QUICKEMU/vfio_card.rom" | cut -d " " -f 1)
if [ -f "$SCRIPTDIR"/$QUICKEMU/vfio_card.rom ]; if [ -f "$SCRIPTDIR"/$QUICKEMU/vfio_card.rom ];
then then
@ -35,14 +37,14 @@ echo 0 | sudo tee $VBIOS_PATH
echo "Dumping of VBIOS successful!" echo "Dumping of VBIOS successful!"
echo 'GPU_ROMFILE="vfio_card.rom"' >> "$SCRIPTDIR/$QUICKEMU/qemu-vfio_vars.conf" echo 'GPU_ROMFILE="vfio_card.rom"' >> "$SCRIPTDIR/$QUICKEMU/qemu-vfio_vars.conf"
read -p "Press ENTER to continue." ENTER read -r -p "Press ENTER to continue."
else else
echo "Checksums does not match!" echo "Checksums does not match!"
echo "Dumping of VBIOS failed, skipping romfile" echo "Dumping of VBIOS failed, skipping romfile"
mv "$SCRIPTDIR/$QUICKEMU/vfio_card.rom" "$SCRIPTDIR/$QUICKEMU/vfio_card.rom.fail" mv "$SCRIPTDIR/$QUICKEMU/vfio_card.rom" "$SCRIPTDIR/$QUICKEMU/vfio_card.rom.fail"
echo 'GPU_ROMFILE=""' >> "$SCRIPTDIR/$QUICKEMU/qemu-vfio_vars.conf" echo 'GPU_ROMFILE=""' >> "$SCRIPTDIR/$QUICKEMU/qemu-vfio_vars.conf"
read -p "Press ENTER to continue." ENTER read -r -p "Press ENTER to continue."
fi fi
else else
echo 'GPU_ROMFILE=""' >> "$SCRIPTDIR/$QUICKEMU/qemu-vfio_vars.conf" echo 'GPU_ROMFILE=""' >> "$SCRIPTDIR/$QUICKEMU/qemu-vfio_vars.conf"
@ -61,7 +63,7 @@ echo 0 | sudo tee $VBIOS_PATH
function main () { function main () {
SCRIPTDIR=$(dirname "$(which $0)" | perl -pe "s/\/\.\.\/lib//" | perl -pe "s/\/lib$//") SCRIPTDIR=$(dirname "$(which $0)" | perl -pe "s/\/\.\.\/lib//" | perl -pe "s/\/lib$//")
get_GPU_ROM $1 get_GPU_ROM "$1"
} }
main $1 main "$1"