NDIS wlan driver trouble, 6.0Beta5, DELL D610, Broadcom 4320
miniPCI
Alan Gerber
agerber at ncsu.edu
Sun Oct 2 10:31:08 PDT 2005
Andreas Klemm wrote:
>Hi,
>
>don't get my WLAN card running. Already tried 2 different dell drivers.
>No success so far. Tried "old way" and "new way (ndisgen)". No success.
>
>I can load the ndis driver but no device appears.
>
>I fear that I need an additional firmware file. But I cannot localize
>it in the original driver directory.
>
>If somebody want to look at it himself I can give root access via ssh.
>
>What I did so far:
>[snip]
>
>No additional device.
>
>Whats going wrong ? Any idea ?
>
>
> Andreas ///
>
>
>
I don't have the same model as you, but I was able to get my hardware
working, and it works very well. I'm using a Latitude D600 w/ the
BCM4306 802.11b/g minipci card. The hardware isn't the same, but it
should be reasonably similar so that if you follow these instructions it
will probably work. Here's what I did to make mine work:
0) update to something post 5.4-release. I don't know the specifics,
but I seem to recall seeing something saying that the ndis driver isn't
supported anymore on any earlier platform.
1) obtain your drivers from Dell. In my case, I used the driver archive
file for R102319. You'll be using both bcmwl5.sys and bcmwl5.inf from
the archive.
Now, do the following as root:
2) Build the kernel module, bcmwl5_sys.ko, using the 'ndisgen' utility
-- it is straightforward, and if you follow the directions you should
end up with bcmwl5_sys.ko in your current working directory.
3) Issue 'cp bcmwl5_sys.ko /boot/kernel'. I like to keep my kernel
modules with my kernel, thus this step. There's probably other reasons
to do this as well, but I'll let someone more knowledgeable explain them.
4) Go ahead and issue 'kldload ndis'. This should load both ndis.ko and
if_ndis.ko into the kernel. You can check this by issuing 'kldstat' --
it should be listed there.
5) Load the driver for your card by issuing 'kldload bcmwl5_sys' -- or
whatever your driver name came out to be.
6) At this point you should see the ndis0 interface in ifconfig output.
7) Set the SSID you want to be connecting to by issuing a 'ifconfig
ndis0 ssid [your_ssid_here]'
8) Bring the interface up: 'ifconfig ndis0 up'
9) Get a DHCP lease for the interface (or set an ip address manually if
that is how your network is set up). Issuing a 'dhclient ndis0' will
obtain a DHCP lease for you.
There you have it, a working wireless connection in 10 easy steps. Upon
each reboot, you'll need to go through steps 4-9 unless you tell the
system to do it automatically for you (personally, I don't want the
wireless card initialized each time I boot, but others may want it, so I
am including it here)....
10) Add the following 3 lines to /boot/loader.conf:
ndis_load="YES"
if_ndis_load="YES"
bcmwl5_sys_load="YES"
11) Add the following 2 lines to /etc/rc.conf:
network_interfaces="ndis0"
ifconfig_ndis0="DHCP"
Note: your network configuration may vary. You'll need to customize
these lines according to your other network hardware and your IP
addressing scheme(s).
12) Reboot to test the configuration changes.
I haven't tested steps 10-12, but I think they will work. Hopefully
this'll get you where you need to go.
Good luck!
--
Alan Gerber
More information about the freebsd-mobile
mailing list