Brian Potkin wrote:
> I have a USB device using the zd1211rw module. It behaves differently in
> that a wlan0 interface is detected and can be configured. However,
> $DEVPATH is the same as with the p54usb and modprobe still attempts to
> remove usbcore.

I have a zd1211rw so was able to reproduce this. Probably any USB wifi
needing firmware has this problem.

The devpath I got was /sys/devices/platform/orion-ehci.0/usb1/1-1/1-1.4
This has a product file containing "USB2.0 WLAN", manufacturer
containing ZyDAS and so on, but its driver/module link points to
/sys/bus/usb/drivers/usbcore . The information about the actual driver for
this device is in 1-1.4:1.0/driver and 1-1.4:1.0/modalias .

All I can think to do is a special case. Assuming this only affects USB
and not some other bus, this should work ok:

diff --git a/check-missing-firmware.sh b/check-missing-firmware.sh
index 95106d4..7835b39 100755
--- a/check-missing-firmware.sh
+++ b/check-missing-firmware.sh
@@ -98,9 +98,22 @@ check_missing () {
                        if grep -q "^$fwfile$" $DENIED 2>/dev/null; then
                                continue
                        fi
-
-                       modules="$module${modules:+ $modules}"
+                       
                        files="$fwfile${files:+ $files}"
+
+                       if [ "$module" = usbcore ]; then
+                               # Special case for USB bus, which puts the
+                               # real module information in a subdir of
+                               # the devpath.
+                               for dir in $(find "$devpath" -maxdepth 1 
-mindepth 1 -type d); do
+                                       module=$(get_module "$dir")
+                                       if [ -n "$module" ]; then
+                                               modules="$module${modules:+ 
$modules}"
+                                       fi
+                               done
+                       else
+                               modules="$module${modules:+ $modules}"
+                       fi
                done
        done

-- 
see shy jo

Attachment: signature.asc
Description: Digital signature

Reply via email to