recover_duts/reload_network_device: reload driver for non-{PCI,USB}

Otherwise, we leave such systems dangling, with no Ethernet driver.

BUG=chromium:1084812
TEST=`reload_network_device eth0` on veyron_fievel

Change-Id: I3fd0fc60dead5ac8b954e7f26a9aa8741993d7d3
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crostestutils/+/2209972
Tested-by: Brian Norris <briannorris@chromium.org>
Reviewed-by: Matthew Wang <matthewmwang@chromium.org>
Commit-Queue: Brian Norris <briannorris@chromium.org>
diff --git a/recover_duts/reload_network_device b/recover_duts/reload_network_device
index fd60d79..fafd799 100755
--- a/recover_duts/reload_network_device
+++ b/recover_duts/reload_network_device
@@ -31,6 +31,7 @@
 
 device_path="$(readlink -f "/sys${DEVPATH}/../..")"
 
+module_name=""
 if [ -e "/sys${DEVPATH}/device/driver/module" ]; then
   module_name="$(basename "$(readlink -f "/sys${DEVPATH}/device/driver/module")")"
   rmmod "${module_name}" || error "rmmod '${module_name}' failed ($?)"
@@ -56,6 +57,8 @@
   echo 0 > "${device_authorize_path}"
   sleep ${POWER_DOWN_TIME_SECONDS}
   echo 1 > "${device_authorize_path}"
+elif [ -n "${module_name}" ]; then
+  modprobe "${module_name}" || error "modprobe '${module_name}' failed ($?)"
 else
-  error "Bus type '${ID_BUS}' is unknown"
+  error "Bus type '${ID_BUS}' is unknown, and no module found"
 fi