Re: Need help with modules loading

From: Larry Finger
Date: Fri Aug 17 2007 - 10:51:58 EST


Kay Sievers wrote:
On 8/17/07, Larry Finger <Larry.Finger@xxxxxxxxxxxx> wrote:
A new driver for the Broadcom BCM43xx devices has been written that uses mac80211, rather than
softmac. The newest versions of the Broadcom firmware does not support all the BCM devices.
Accordingly, a separate driver is being prepared that will use an older version of the firmware and
support these legacy devices. Unfortunately, there is not a clean separation based on PCI id's;
however, the revision level of the 802.11 wireless core can be used to determine which driver should
be used. The scheme works on most systems, but not mine and I need some help to discover why.

The 'MODALIAS=ssb:v4243id0812rev0A' line is correct for my device. In fact issuing a modprobe
"ssb:v4243id0812rev0A" command results in the loading of the module. For some reason, this does not
happen automatically.

Initially, I suspected that my version of udev (103-13) was too old; however, upgrading to version
114 did not help. My module-init-tools are V 3.2.2 and my distro is the x86_64 version of openSUSE 10.2.

openSUSE 10.2 used a whitelist of buses which trigger module loading.
It's in the udev sysconfig. rules and /sbin/hwup.

The easiest is probably to add a rule for that bus:
ACTION=="add", SUBSYSTEM=="ssb", ENV{MODALIAS}=="?*",
RUN+="/sbin/modprobe $env{MODALIAS}"

openSUSE 10.3 will call modprobe directly, the whitelist and the whole
hwup logic is removed in the meantime.

Thanks for the help. A new rule in sysconfig.rules took care of the problem.

I added the bcm43xx developers mailing list to this reply. For their benefit, this is the patch that fixed my system:

Index: /etc/udev/rules.d/80-sysconfig.rules
===================================================================
--- /etc/udev/rules.d.orig/80-sysconfig.rules
+++ /etc/udev/rules.d/80-sysconfig.rules
@@ -15,5 +15,6 @@ SUBSYSTEM=="pnp", ACTION=="add", RUN+="/
SUBSYSTEM=="ide", ACTION=="add", RUN+="/sbin/hwup ide-devpath-%p -o hotplug"
SUBSYSTEM=="input", KERNEL=="input[0-9]*", ACTION=="add", RUN+="/sbin/hwup input-devpath-%p -o hotplug"
SUBSYSTEM=="platform", ACTION=="add", RUN+="/sbin/hwup platform-devpath-%p -o hotplug"
+SUBSYSTEM=="ssb", ACTION=="add", ENV{MODALIAS}=="?*", RUN+="/sbin/modprobe $env{MODALIAS}"

LABEL="sysconfig_end"


Larry
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/