Ubuntu wireless network connection WiFi (solve the DMA problem of b43 driver)

Source: Internet
Author: User
Tags dmesg

For details about how to copy or reprint the source itspy. Wei, visit http://blog.csdn.net/yyplc/article/details/7243220. thank you!

Recently, I encountered a very distressing problem: wireless networks cannot connect to Wi-Fi hotspots. Although you can find wifi hotspots around, but it is always unable to connect, the old prompt is wrong authorization, requires a password, but fortunately wired network connection can be used normally. That's why I was wondering if I could use it well the day before. Now I can't use it! Although I have encountered occasional disconnection before, it won't be unable to connect. I used ubuntu10.10 in the past. Now I use version 10.04. The laptop is Dell 1427, the physical network card is b4312 of Broadcom, And the Ubuntu 10.04 system kernel is Linux 2.6.32-33. Google and Baidu have tried various ways to uninstall, install wireless drivers, uninstall and install network-manager,
I feel a lot of problems and unstable.

Since I used Ubuntu as a desktop system, I have suffered all kinds of non-human suffering from Network-Manager. Till now, I still have a revolutionary struggle with network-manager. I am worried that it will cause a stumbling block to me one day, wasting my precious time! Finally, we had to reinstall the system, but the problem remained! It's so bad. Should I discard 10.04 and return to 10.10 again? Think for a moment, it should be a configuration problem, which must be wrong, because the Wi-Fi connection between Ubuntu and Android mobile phones has been tossing over the past few days (please refer to my other article ), the network configuration of the system may be broken down, and the related configuration files are not completely cleared during uninstallation and installation.

There are many posts on the Internet about the inability to connect to wireless networks, covering all aspects, from applications to NIC drivers to Linux operating systems. I have also tried the above methods, but it does not solve the problem. It seems that you can't be confused. You have to take the right medicine to find the key.

The wireless network card can find the Wi-Fi network, that is, it cannot be connected. Use dmesg | grep b43 to find the following phenomenon:

wsn@wsn-laptop:~$ dmesg |grep b43[    0.895694] b43-pci-bridge 0000:0e:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18[    0.895710] b43-pci-bridge 0000:0e:00.0: setting latency timer to 64[   10.406437] b43-phy0: Broadcom 4312 WLAN found (core revision 15)[   10.525988] Registered led device: b43-phy0::tx[   10.526005] Registered led device: b43-phy0::rx[   10.526021] Registered led device: b43-phy0::radio[   15.604244] b43 ssb0:0: firmware: requesting b43/ucode15.fw[   15.621385] b43 ssb0:0: firmware: requesting b43/lp0initvals15.fw[   15.626406] b43 ssb0:0: firmware: requesting b43/lp0bsinitvals15.fw[   15.764983] b43-phy0: Loading firmware version 410.2160 (2007-05-26 15:32:10)[   21.681154] b43-phy0 ERROR: Fatal DMA error: 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000[   21.681161] b43-phy0 ERROR: This device does not support DMA on your system. Please use PIO instead.[   21.681165] b43-phy0: Controller RESET (DMA error) ...[   21.681173] b43-phy0 ERROR: Fatal DMA error: 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000[   21.681176] b43-phy0 ERROR: This device does not support DMA on your system. Please use PIO instead.[   21.681179] b43-phy0: Controller RESET (DMA error) ...[   21.896278] b43-phy0: Loading firmware version 410.2160 (2007-05-26 15:32:10)[   27.409095] b43-phy0: Controller restarted[   82.628135] b43-phy0 ERROR: MAC suspend failed[   82.948120] b43-phy0 ERROR: MAC suspend failed[   83.268131] b43-phy0 ERROR: MAC suspend failed

It seems that the driver of the network card bm4312 is faulty. My network card is: network controller: Broadcom Corporation bcm4312 802.11b/g (Rev 01)

A DMA error occurs. "This device does not support DMA on your system. Please use Pio instead"

It is said that this laptop Nic does not support DMA transmission mode, so the driver reports an error.

In the DMA mode, the speed of the network adapter is faster than that of the PIO mode due to direct memory access, but there is no difference in the actual application, because the network speed is far behind.

Some network card devices of Broadcom do not support the DMA mode (or even the kernel version:

  • LP-PHY devices: DMA errors on some machines with kernel 2.6. Problem was fixed in 3.0. Using Pio (module PARAM) can be used as workaround for 2.6.
  • Bcm4318 chipset: AP mode does not work because of packet loss in high transmission rates. Hard to debug & fix.

  • Bcm4321: some cards do not work in DMA mode (PIO is needed ).

It seems that my local Nic does not support the DMA mode, so I can only use the PIO mode.

So follow this clue to find a solution:

# Change the configuration file of b43.conf

WSN @ WSN-LAPTOP :~ $ Sudo touch/etc/modprobe. d/b43.confwsn @ WSN-LAPTOP :~ $ Echo "Options b43 Pio = 1 QoS = 0" | sudo tee-A/etc/modprobe. d/b43.confwsn @ WSN-LAPTOP :~ $ Sudo modprobe b43 # restart network-managerwsn @ WSN-LAPTOP :~ $ CD/etc/init. dwsn @ WSN-LAPTOP :~ $ Sudo service network-manger restart

If not, restart the system.

wsn@wsn-laptop:~$ dmesg |grep b43[    0.873775] b43-pci-bridge 0000:0e:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18[    0.873790] b43-pci-bridge 0000:0e:00.0: setting latency timer to 64[   11.455666] b43-phy0: Broadcom 4312 WLAN found (core revision 15)[   11.579806] Registered led device: b43-phy0::tx[   11.579825] Registered led device: b43-phy0::rx[   11.579841] Registered led device: b43-phy0::radio[   19.584232] b43 ssb0:0: firmware: requesting b43/ucode15.fw[   20.181918] b43 ssb0:0: firmware: requesting b43/lp0initvals15.fw[   20.191591] b43 ssb0:0: firmware: requesting b43/lp0bsinitvals15.fw[   20.329278] b43-phy0: Loading firmware version 410.2160 (2007-05-26 15:32:

It can be seen that b43 is working normally and can connect to wifi at last, but unfortunately it will not work again after a while. It is no wonder that it can be used yesterday and it will be unavailable today, it indicates that the NIC Driver is still faulty!

Therefore, selecting the NIC Driver and correctly configuring the driver are the key to solving the problem!

Broadcom has three driver packages available:

  • Brcmsmac/brcmfmac
  • B43
  • Broadcom-wl

Broadcom-wl corresponds to the NIC model:

PCI-ID Name
[14e4: 4311] Bcm4311
[14e4: 4312] Bcm4311
[14e4: 4313] Bcm4311
[14e4: 4315] Bcm4312
[14e4: 4727] Bcm4313
[14e4: 4328] Bcm4321
[14e4: 4329] Bcm4321
[14e4: 432a] Bcm4321
[14e4: 432b] Bcm4322
[14e4: 432c] Bcm4322
[14e4: 432d] Bcm4322
[14e4: 4353] Bcm43224
[14e4: 4357] Bcm43225
[14e4: 4358] Bcm43227
[14e4: 4359] Bcm43228

For the network card of Broadcom, view the network card of the corresponding notebook

Root @ WSN-LAPTOP :~ # Lspci-vnn | grep 14e4
0e: 00.0 network controller [0280]: Broadcom Corporation bcm4312 802.11b/g [14e4: 4315] (Rev 01)

If you know that your Nic is [14e4: 4315], you should use WL (Broadcom sta wireless driver ). You can solve the problem through the following method:

First, remove the b43 module from the kernel:

Sudo rmmod b43

Sudo rmmod SSB

# Load WL module if the system does not

You can activate the Broadcom sta wireless driver or enter the command line in the hardware driver.

sudo apt-get updatesudo apt-get --reinstall install bcmwl-kernel-source

Then load the WL module:

Sudo insmod WL

Restart network-mamager or restart the system,

The problem is finally solved.

Conclusion: the root cause of this problem is the conflict between the driver and the kernel version (the driver also has some bugs ). Therefore, you can either change the driver or upgrade the kernel.

It took a day to solve this problem ''~.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.