scripts/setup: Move fallback driver check to collect_driver()

Change-Id: I98de31e32190350c38b52edef8514dc4ab8bda92
Signed-off-by: Michal Berger <michalx.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/4659
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
This commit is contained in:
Michal Berger 2020-10-14 12:02:35 +02:00 committed by Jim Harris
parent ce4d070961
commit 203fd7ffc7

View File

@ -245,7 +245,6 @@ function collect_devices() {
function collect_driver() { function collect_driver() {
local bdf=$1 local bdf=$1
local override_driver=$2
local drivers driver local drivers driver
[[ -e /sys/bus/pci/devices/$bdf/modalias ]] || return 1 [[ -e /sys/bus/pci/devices/$bdf/modalias ]] || return 1
@ -254,7 +253,11 @@ function collect_driver() {
driver=$(readlink -f "/sys/module/${drivers[0]}/drivers/pci:"*) driver=$(readlink -f "/sys/module/${drivers[0]}/drivers/pci:"*)
driver=${driver##*/} driver=${driver##*/}
else else
driver=$override_driver [[ -n ${nvme_d["$bdf"]} ]] && driver=nvme
[[ -n ${ioat_d["$bdf"]} ]] && driver=ioatdma
[[ -n ${idxd_d["$bdf"]} ]] && driver=idxd
[[ -n ${virtio_d["$bdf"]} ]] && driver=virtio-pci
[[ -n ${vmd_d["$bdf"]} ]] && driver=vmd
fi 2> /dev/null fi 2> /dev/null
echo "$driver" echo "$driver"
} }
@ -460,13 +463,7 @@ function reset_linux_pci() {
for bdf in "${!all_devices_d[@]}"; do for bdf in "${!all_devices_d[@]}"; do
((all_devices_d["$bdf"] == 0)) || continue ((all_devices_d["$bdf"] == 0)) || continue
[[ -n ${nvme_d["$bdf"]} ]] && fallback_driver=nvme driver=$(collect_driver "$bdf")
[[ -n ${ioat_d["$bdf"]} ]] && fallback_driver=ioatdma
[[ -n ${idxd_d["$bdf"]} ]] && fallback_driver=idxd
[[ -n ${virtio_d["$bdf"]} ]] && fallback_driver=virtio-pci
[[ -n ${vmd_d["$bdf"]} ]] && fallback_driver=vmd
driver=$(collect_driver "$bdf" "$fallback_driver")
if ! check_for_driver "$driver"; then if ! check_for_driver "$driver"; then
linux_bind_driver "$bdf" "$driver" linux_bind_driver "$bdf" "$driver"
else else