# SPDX-License-Identifier: GPL-2.0-or-later source $(dirname -- "${BASH_SOURCE[0]}")/lib.sh function cleanup_devices() { local device_bdf local device_dir for device_bdf in "$@"; do device_dir=${DEVICES_DIR}/${device_bdf} if [ -f ${device_dir}/vfio-pci ]; then unbind ${device_bdf} vfio-pci fi if [ -f ${device_dir}/driver_override ]; then clear_driver_override ${device_bdf} fi if [ -f ${device_dir}/driver ]; then bind ${device_bdf} $(cat ${device_dir}/driver) fi if [ -f ${device_dir}/sriov_numvfs ]; then set_sriov_numvfs ${device_bdf} $(cat ${device_dir}/sriov_numvfs) fi rm -rf ${device_dir} done } function main() { if [ $# = 0 ]; then cleanup_devices $(ls ${DEVICES_DIR}) rmdir ${DEVICES_DIR} else cleanup_devices "$@" fi } main "$@"