[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

RE: URGENT - v5.0.0 amd64 (stable): Broadcom 4321AG Wi-Fi adapter not detected



I haven't quite gotten it fixed, but I have managed to successfully set up a
ndiswrapper kernel!  Now all would appear to need is a driver... so I looked
through the archives and found one that looked right, but the instructions
for setting it up were for another version of Linux, so I'm going to run
them by you guys before I do anything:

Download, compile and install the newest ndiswrapper. Use wine or a Windows
PC to run the softpaq. You will need to let it completely run, and then you
will need to copy the C:\SWSetup\SP36684A directory to your linux pc. Use 

lsmod | egrep 'b43|ssb|ndiswrapper|bcm43xx'

to see which modules you currently have loaded for this card. Release any ip
addresses you have obtained from dhcp servers with 

dhclient -r wlan0

 Bring your wlan down with 

sudo ifconfig wlan0 down

 Unload any of the loaded modules you found with lsmod above, using (as
appropriate), 

sudo modprobe -r b43legacy,

sudo modprobe -r b43

sudo modprobe -r ssb

sudo modprobe -r ndiswrapper

I highly recommend backing-up and removing the /etc/ndiswrapper directory
and the /etc/modprobe.d/ndiswrapper files if they exist. I also highly
recommend editing /etc/modprobe.d/blacklist and making sure that you have
all of these modules blacklisted (b43, b43legacy, ssb, bcm43xx). While you
are there, make sure ndiswrapper is NOT blacklisted. Also, make sure that
these modules are not in /etc/modules (b43, b43legacy, ssb, bcm43xx). If you
have added any of these modules to initramfs (for wireless network
boots?!?), then you are an advanced user, and don't need my help (by you
should take them out of there too). If you have ndiswrapper installed, you
can install the driver by running

sudo ndiswrapper -i bcmwl5.inf (in the directory where you copied the
windows driver)

This will create the /etc/ndiswrapper directory, and install the Windows
drivers, various files, and symlinks. You then need to run 

sudo ndiswrapper -ma

This will create the /etc/modprobe.d/ndiswrapper file, which will contain
all of the needed aliases to load the drivers. DO NOT run ndiswrapper with
the -mi or -m options. The -m option is outdated by udev, and the -i option
will overwrite your aliases with a lot of unnecessary install commands. You
may wish to add ndiswrapper to /etc/modules to make sure it loads on boot.
You can load it now with

sudo modprobe ndiswrapper

or with 

sudo loadndisdriver

 Results may not be immediate. If you want to "see" what is happening, you
can 

tail -f /var/log/daemon.log

 to make sure Network Manager is configuring the card. If your system is
messed up, you might have to bring up the card with 

sudo ifconfig wlan0 up

If it is really, really messed up, you might have to edit udev rules, and
networking configuration by hand, but that's far beyond the scope of this.
This particular Windows driver with this particular version of ndiswrapper,
with this kernel has given me the best results that I have achieved with
this card. Networking is reliable, fast, and automatic. Please note that
with ABI -19 of this kernel for this distribution, ssb and b43 are loading
for the BCM4311/12 (rev 02) for the first time without requiring recompiling
them with patches. Kudos to the Ubuntu team for this, but the performance is
really bad. I frequently have 1-9 Mb connections with Hardy Heron and
ssb/b43 at a txpower of 27 dBm, while I have reliable 54 Mb connections at a
txpower of 32 dBm with ndiswrapper. If you are using Gutsy Gibbon, I had my
best results on the 2.6.22 kernel with custom compiled ssb/b43 kernel
modules using the compat-2.6.25 pack, but it was a lot of work to get it
working, and I'm not sure I could replicate the process now if I had to.

Please let me know what modifications, if any, I'll need to make to this
process, and thanks for everything you've already done to help!

~John Wesley Cooper



Reply to: