iface="$(config iface)"
test -z "$iface" && exit 1
#
-# Fire up a process in the background to load the firmware if necessary
-sysf="/sys/class/firmware/firmware-$iface"
+# Fire up a process in the background to load the firmware if necessary.
+# If this system doesn't require the NPE-B firmware, no problem, the
+# background process will simply go away in two seconds. If it requires
+# some other firmware, then modification will be required. We probably
+# should replace this with mdev or some other hotplug-based technique...
+sysf="/sys/class/firmware/$iface"
(
# Wait for the firware to be requested, if required
[ -f $sysf/loading ] || sleep 1
# Trigger the firmware load proactively
ifconfig "$iface" up
#
+# Unmount /sys and /proc before we leave
+umount /sys
+umount /proc
+#
ifup "$iface"
# exit code is true only if the interface config has succeeded