diff -urN linux.old/drivers/net/wl/Makefile linux.dev/drivers/net/wl/Makefile
--- linux.old/drivers/net/wl/Makefile 1970-01-01 01:00:00.000000000 +0100
+++ linux.dev/drivers/net/wl/Makefile 2006-04-28 01:33:52.000000000 +0200
-@@ -0,0 +1,23 @@
+@@ -0,0 +1,26 @@
+#
+# Makefile for the Broadcom wl driver
+#
+
+O_TARGET := wl.o
+
-+obj-y := wl_apsta.o
++obj-y := wl_mod.o
+obj-y += bcmutils.o hnddma.o linux_osl.o
+
+obj-m := $(O_TARGET)
+
++wl_mod.o: wl_apsta.o
++ sed -e 's,eth%d,wl%d\x00,g' < $< > $@
++
+include $(TOPDIR)/Rules.make
diff -urN linux.old/drivers/net/wl/bcmip.h linux.dev/drivers/net/wl/bcmip.h
--- linux.old/drivers/net/wl/bcmip.h 1970-01-01 01:00:00.000000000 +0100
#!/bin/sh
-setup_eth()
+setup_wl()
{
[ -f /proc/net/wl0 ] && {
lsmod | grep wlcompat >&- || insmod wlcompat
iwconfig "$INTERFACE" 2>&- | grep -v 'no wireless' >&- && {
/sbin/wifi
}
+}
+setup_eth()
+{
[ -d /proc/switch ] || {
insmod switch-core
insmod switch-robo || insmod switch-adm
{
case "${INTERFACE%%[0-9]*}" in
eth) setup_eth;;
+ wl) setup_wl;;
esac
}
static int __init wlcompat_init()
{
int found = 0, i;
- char *devname = "eth0";
+ char devname[4] = "wl0";
bss_force = 0;
while (!found && (dev = dev_get_by_name(devname))) {
if ((dev->wireless_handlers == NULL) && ((wl_ioctl(dev, WLC_GET_MAGIC, &i, sizeof(i)) == 0) && i == WLC_IOCTL_MAGIC))
found = 1;
- devname[3]++;
+ devname[2]++;
}
if (!found) {