The following transfers are from: http://blog.sina.com.cn/s/blog_73b6331101016haq.html
Ubuntu 12.04 bcm43xx Wireless card installation record(2012-07-01 01:52:41)
reproduced
Tags:linuxubuntubcm43xxdriver |
Category: PC |
My notebook model for the HP Envy 4 1006TX wireless network card for bcm4313 in fact, the Ubuntu 12.04 Core is the driver of this model of wireless network card but this version of the driver signal is a bit unreasonable and then think of a way to change a version of the first attempt is Ubuntu apt sou Rce's Bcmwl-kernel-source, this version of the signal is still good but limited to 12.04, the driver version is 5.100.82.38. Installation method: sudo apt-get install Bcmwl-kernel-sourcesudo vi/etc/modprobe.d/blacklist.conf Add the following statement at the end: blacklist b43blacklist Ssbblacklist Brcmsmac After saving the file, restart. Very simple, drive performance is also good, suitable for beginners to use, but like to toss the people continue to look down. In the spirit of their love tossing ideas, the drive to chase the new idea is still very strong, so on the Broadcom's official website: http://www.broadcom.com/support/802.11/linux_sta.php
64-bit Driver |
5.100.82.112 |
10/25/2011 |
The latest drivers are significantly newer than the APT source, and the test performance is better than the former. First for your OS is 32bit or 64bit download the corresponding driver, download good after the start of decompression ready to compile: mkdir bcm43xx_x86_64-v5_100_82_112tar xzvf hybrid-portsrc_x86_64-v5_ 100_82_112.tar.gz-c BCM43XX_X86_64-V5_100_82_112CDbcm43xx_x86_64-v5_100_82_112make The following error occurred: Using Wireless Extension api LD /home/ego/drivers/bcm43xx_x86_64-v5_100_82_112/ built-in.o cc [m] /home/ego/Drivers/bcm43xx_x86_64-v5_100_82_112/src/shared/linux_osl.o cc [m] /home/ego/drivers/bcm43xx_x86_64-v5_100_82_112/src/wl/sys/wl_linux.o/home/ego/drivers/bcm43xx_x86_64-v5_ 100_82_112/src/wl/sys/wl_linux.c:388:2: Error:unknown field ' ndo_set_multicast_list ' specified in initializer/home/ Ego/drivers/bcm43xx_x86_64-v5_100_82_112/src/wl/sys/wl_linux.c:388:2: Warning:initialization from incompatible pointer type [enabled by Default]/home/ego/drivers/bcm43xx_x86_64-v5_100_82_112/src/wl/sys/wl_linux.c:388:2: Warning: (near initialization for ' wl_netdev_ops.ndo_validate_addr ') [enabled by default]make[2]: * * * [/home/ego/ DRIVERS/BCM43XX_X86_64-V5_100_82_112/SRC/WL/SYS/WL_LINUX.O] Error 1make[1]: * * * [_module_/home/ego/drivers/bcm43xx _X86_64-V5_100_82_112] Error 2make[1]: Leaving directory '/usr/src/linux-headers-3.2.0-26-generic ' mAKE: * * * [ALL] Error 2 Okay, the point is, 388 lines of src/wl/sys/wl_linux.c Visrc/wl/sys/wl_linux.c +388 The code is as follows:. ndo_set_multicast_list = wl_set_multicast_list, see the kernel source struct net_device_ops There is no such interface, It seems that this driver is the kernel version of 2.6, expect the official is no hope, do it yourself. Look at it.Bcmwl-kernel-source Patch, which uses the. Ndo_set_rx_mode replacement, we also replace it with this:vi src/wl/sys/wl_linux.c +388 Change the source file to the following (PS: Stealing a lazy here will not be judged by the kernel version): #if 0. ndo_set_multicast_list = wl_set_multicast_list, #else. Ndo_set_rx_mode = Wl_set_multicast_list, #endif修改好后保存, continue compiling: Make this compile successfully, generated Wl.ko. sudo make Installsudo rmmodBrcmsmacsudo rmmod brcmutilsudo depmodsudo modprobe wlsudo ifconfig eth1 Upok, the wireless card is operating normally, the signal is significantly better thanBcmwl-kernel-source a little better. Disable kernel driver: sudo vi/etc/modprobe.d/blacklist.conf add the following statement at the end: blacklist b43blacklist ssbblacklist Brcmsmac after saving the file, restart. The problem came out, WL loaded, but unexpectedly can not drive the wireless network card, why restart before it is available, reproduce the environment before restarting: sudo rmmod wlsudo modprobe brcmsmac sudo rmmod brcmsmac sudo rmmod brcmutilsudo modprobe wl Magical, incredibly work again, seems to depend onBrcmsmac, not perfect, continue to toss! Method 1: Modify the startup script: sudo vi/etc/init.d/rc at the end of the text after the exit 0 keyword is modified as follows: Rmmod WLmodprobe Brcmsmac rmmod Brcmsmac Rmmod Brcmutilmodprobe WLTrap-exit # Disable Emergency handler EXIT 0 save, restart, OK, drive normal, but during the startup process, the notebook wireless indicator will appear 1 seconds of cycle flicker, not the optimal solution, continue to toss! Method 2: SinceBcmwl-kernel-source can not rely on the BRCMSMAC Direct drive device, then why do not compile themselves. Continue to analyze his deb, did not find anything different, just his driver installation path is not the same, it is also bad, continue to lazy: sudo apt-get install Bcmwl-kernel-sourcethen replace the Wl.ko we compiled with the bcmwl-kernel-source: sudo mv/lib/modules/' uname-r '/updates/dkms/wl.ko/lib/modules/' uname-r '/updates/dkms/wl.ko.oldsudo CP./wl.ko/lib/ modules/' Uname-r '/updates/dkms/wl.ko continue to disable kernel driver: sudo vi/etc/modprobe.d/blacklist.conf add the following statement at the end: blacklist B43blacklist ssbblacklist Brcmsmac After saving the file, restart. At this point, everything is normal, changed the driver after the signal is just a good B, more stable than the driver of windows, toss success: P
Ubuntu install Dell Wireless Card 2