191fe0599SRen, Yongjie#!/bin/bash 2928ec374SMichael S. Tsirkin 3b2a2aa5dSAndrew Jones[ -z "$STANDALONE" ] && source scripts/arch-run.bash 4b2a2aa5dSAndrew Jones 5d9a05378SBandan Dasqemubinarysearch="${QEMU:-qemu-kvm qemu-system-x86_64}" 6b895b967SBandan Das 7d9a05378SBandan Dasfor qemucmd in ${qemubinarysearch} 8b895b967SBandan Dasdo 9b895b967SBandan Das unset QEMUFOUND 10b895b967SBandan Das unset qemu 11d9a05378SBandan Das if ! [ -z "${QEMUFOUND=$(${qemucmd} --help 2>/dev/null | grep "QEMU")}" ] && 12d9a05378SBandan Das ${qemucmd} -device '?' 2>&1 | grep -F -e \"testdev\" -e \"pc-testdev\" > /dev/null; 13928ec374SMichael S. Tsirkin then 14d9a05378SBandan Das qemu="${qemucmd}" 15b895b967SBandan Das break 16b895b967SBandan Das fi 17b895b967SBandan Dasdone 18d9a05378SBandan Das 19b895b967SBandan Dasif [ -z "${QEMUFOUND}" ] 20b895b967SBandan Dasthen 21b895b967SBandan Das echo "A QEMU binary was not found, You can set a custom location by using the QEMU=<path> environment variable " 22a3831260SAndrew Jones exit 2 23b895b967SBandan Daselif [ -z "${qemu}" ] 24b895b967SBandan Dasthen 25b895b967SBandan Das echo "No Qemu test device support found" 26a3831260SAndrew Jones exit 2 27928ec374SMichael S. Tsirkinfi 28928ec374SMichael S. Tsirkin 29ec3c77fbSRen, Yongjieif 30740001b3SRen, Yongjie ${qemu} -device '?' 2>&1 | grep -F "pci-testdev" > /dev/null; 315292dbf7SMichael S. Tsirkinthen 325292dbf7SMichael S. Tsirkin pci_testdev="-device pci-testdev" 335292dbf7SMichael S. Tsirkinelse 345292dbf7SMichael S. Tsirkin pci_testdev="" 355292dbf7SMichael S. Tsirkinfi 365292dbf7SMichael S. Tsirkin 37928ec374SMichael S. Tsirkinif 38740001b3SRen, Yongjie ${qemu} -device '?' 2>&1 | grep -F "pc-testdev" > /dev/null; 39928ec374SMichael S. Tsirkinthen 405292dbf7SMichael S. Tsirkin pc_testdev="-device pc-testdev -device isa-debug-exit,iobase=0xf4,iosize=0x4" 41928ec374SMichael S. Tsirkinelse 425292dbf7SMichael S. Tsirkin pc_testdev="-device testdev,chardev=testlog -chardev file,id=testlog,path=msr.out" 43928ec374SMichael S. Tsirkinfi 4409142098SKevin Wolf 4517fdf23eSAndrey Smetanincommand="${qemu} -enable-kvm $pc_testdev -vnc none -serial stdio $pci_testdev $hyperv_testdev -kernel" 46*fd149358SAndrew Jonescommand="$(timeout_cmd) $command" 4709142098SKevin Wolfecho ${command} "$@" 4892a1afcbSAndrew Jones 49b2a2aa5dSAndrew Jonesrun_qemu ${command} "$@" 50