LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 04-27-2010, 08:43 AM   #1
AlvaroG
Member
 
Registered: Jul 2009
Location: Canelones, Uruguay
Distribution: Slackware
Posts: 147

Rep: Reputation: 43
broadcom-sta loads but does nothing


Hi all,
I recently got a new hard drive for my notebook, and was playing a little with it taking advantage of the fact that my working system is intact on my old drive :-)
So, I installed Slackware 13.0, and ran slackpkg to get -current.
Everything runs fine, except for my wireless network.

With slack13 I was using the broadcom-sta driver (wl module) and it was working perfectly. In -current I can build the wl module, and load it, but it will do nothing. The interface (eth1 in 13.0) is not created, the card is not registered, and actually nothing is logged to /var/log/messages by the wl module itself. When I load it I only get a few lines from a module it loads (ieee something, for wireless cryptography I think), but the WiFi LED is off, and it does not reacts to the keyboard (Fn-F2 is supposed to switch the wifi off and on). Basically it seems like it is actually doing *nothing*, or that maybe there is something I need to do to activate it.

The other option is b43 with b43-fwcutter. I tried it, it worked for a few minutes before dying on me saying that it can't use DMA with my device, and that I need to reconfigure the kernel to use PIO instead.
And it also behaved in a weird way. The interface was not created immediately (wlan0) and I had to play with the iwconfig command to bring it up (although I don't actually remember what exactly I did to do it). Also it looks like it takes a few minutes to load the firmware, is not immediate. The third thing i got was rfkill messages in the output of dmesg, reacting to my keyboard (logging stuff like "the radio thinghy is ENABLED or DISABLED) when I tried to bring wifi up, but without actually switching the LED on.

I don't really know what is wrong. I am thinking on building my own kernel with the option b43 suggests, but before I'd like to know why wl is failing. I could very well go back to Slack13, but staying with an old kernel version due to silly hardware issues does not seems like the right choice.

I think I must say as well that the wifi is working flawless with Windows Vista and Slackware 13.

Any ideas?

Thanks in advance
 
Old 04-27-2010, 08:51 AM   #2
AlvaroG
Member
 
Registered: Jul 2009
Location: Canelones, Uruguay
Distribution: Slackware
Posts: 147

Original Poster
Rep: Reputation: 43
I got this by searching da interwebz: http://ubuntuforums.org/showthread.p...266620&page=58
The error in post 543 is the same I'm seeing:
Code:
[  523.228072] b43-phy0 ERROR: MAC suspend failed
[  526.092316] b43-phy0: Loading firmware version 410.2160 (2007-05-26 15:32:10)
[  531.624428] b43-phy0 ERROR: Fatal DMA error: 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
[  531.624439] b43-phy0 ERROR: This device does not support DMA on your system. Please use PIO instead.
[  531.624444] b43-phy0 ERROR: CONFIG_B43_FORCE_PIO must be set in your kernel configuration.
[  531.624493] b43-phy0 ERROR: Fatal DMA error: 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
[  531.624500] b43-phy0 ERROR: This device does not support DMA on your system. Please use PIO instead.
[  531.624505] b43-phy0 ERROR: CONFIG_B43_FORCE_PIO must be set in your kernel configuration.
[  531.645853] ADDRCONF(NETDEV_UP): wlan0: link is not ready
[  734.880072] CE: hpet increasing min_delta_ns to 22500 nsec
So I will try the suggestion on post 545 once I get back home (I'm at the office now).
Code:
echo "options b43 pio=1" | sudo tee /etc/modprobe.d/b43.conf
(I don't know why they use 'tee' instead of >, if they just want to write to the file...)

Last edited by AlvaroG; 04-27-2010 at 10:13 AM.
 
Old 04-27-2010, 12:09 PM   #3
mrclisdue
Senior Member
 
Registered: Dec 2005
Distribution: Slackware
Posts: 1,134

Rep: Reputation: 277Reputation: 277Reputation: 277
I'm telling you this from memory, if you need verification it may have to wait a few hours, but, reverting back to your original attempt at building the wl module:

Did you download the latest tarball from the broadcom site? I ask because I believe something got broken in one of the kernel upgrades. I'm pretty sure I just went through this last week updating my daughter's netbook from a pre-xmas kernel to todays'....

cheers,

Last edited by mrclisdue; 04-27-2010 at 12:11 PM.
 
Old 04-27-2010, 12:42 PM   #4
AlvaroG
Member
 
Registered: Jul 2009
Location: Canelones, Uruguay
Distribution: Slackware
Posts: 147

Original Poster
Rep: Reputation: 43
Hi mrclisdue,
I have the latest driver that can be downloaded from the broadcom site. At first I just used the one from slackbuilds.org, then (thinking on the same line as you did) I tried to download from broadcom, but then saw that the files were the same (i.e. the file from slackbuilds.org is the latest)


Regards
 
Old 04-27-2010, 12:45 PM   #5
rfernandez
Member
 
Registered: Mar 2010
Location: Brazil
Distribution: Slackware64
Posts: 264

Rep: Reputation: 41
When you installed the broadcom-sta, did you compiled it from source?

After slackpkg {update,install-new,upgrade-all}, did it installed the new kernel (ver 2.6.33.x)?

After syncing into -current (and installing the new kernel), did you build the module for the broadcom-sta?

What is your bcm card?
 
Old 04-27-2010, 01:17 PM   #6
AlvaroG
Member
 
Registered: Jul 2009
Location: Canelones, Uruguay
Distribution: Slackware
Posts: 147

Original Poster
Rep: Reputation: 43
Quote:
Originally Posted by rfernandez View Post
When you installed the broadcom-sta, did you compiled it from source?
Yes, using the slackbuild from slackbuilds.org, same as I did on Slack13.
Quote:
Originally Posted by rfernandez View Post
After slackpkg {update,install-new,upgrade-all}, did it installed the new kernel (ver 2.6.33.x)?
Yup. Actually my steps were first to get a full install, then slackpkg update - clean-system - upgrade-all - install-new. I got kernel 2.6.33.2, re-created the initrd, and ran lilo.
Quote:
Originally Posted by rfernandez View Post
After syncing into -current (and installing the new kernel), did you build the module for the broadcom-sta?
I'm pretty sure that the module wouldn't be loading fine if it were built for a different kernel ;-) Yes, I did re-build it (having to patch it and all, as mentioned in other threads)
Quote:
Originally Posted by rfernandez View Post
What is your bcm card?
This one I can't reply right now. I think it is 4312, but I will only be sure once I'm back at home.


Regards

Last edited by AlvaroG; 04-27-2010 at 01:22 PM.
 
Old 04-27-2010, 01:47 PM   #7
rfernandez
Member
 
Registered: Mar 2010
Location: Brazil
Distribution: Slackware64
Posts: 264

Rep: Reputation: 41
And what happens when you try do load the module? Is it also listed on the lsmod? You also blacklisted b43 and ssb before loading the broadcom-sta module?

As for the b43 driver, I never got it working on Linux with my BCM4315.
 
Old 04-27-2010, 02:06 PM   #8
AlvaroG
Member
 
Registered: Jul 2009
Location: Canelones, Uruguay
Distribution: Slackware
Posts: 147

Original Poster
Rep: Reputation: 43
Quote:
Originally Posted by rfernandez View Post
And what happens when you try do load the module? Is it also listed on the lsmod? You also blacklisted b43 and ssb before loading the broadcom-sta module?

As for the b43 driver, I never got it working on Linux with my BCM4315.
I will get the output of dmesg and paste it here.
I did blacklist b43, and made sure it was not loaded during my tests.
What happens is: the module loads without any warning or message, and appears listed by lsmod. When I check dmesg, what I see is a line or two from a module wl loads, which is named ieee802.11_crypto or something like that. It is loaded by modprobe when loading wl, so if you have used the sta driver you surely can see which module it is. None of those two lines are error messages, I will anyway get the output of dmesg when I get back home.

When I load the module in Slack13 I am able to see meaningful output from dmesg indicating that the hardware was recognized, the name of the interface and even the LED was switched on. In -current, I can't see a single message from it


Regards.
 
Old 04-27-2010, 03:56 PM   #9
piratesmack
Member
 
Registered: Feb 2009
Distribution: Slackware, Arch
Posts: 519

Rep: Reputation: 142Reputation: 142
To make the b43 driver work with my BCM4315, I had to install compat-wireless and use these options:
Code:
echo "options b43 pio=1 qos=0" > /etc/modprobe.d/b43.conf
http://ubuntuforums.org/showpost.php...&postcount=636

Last edited by piratesmack; 04-27-2010 at 11:03 PM.
 
Old 04-27-2010, 07:13 PM   #10
AlvaroG
Member
 
Registered: Jul 2009
Location: Canelones, Uruguay
Distribution: Slackware
Posts: 147

Original Poster
Rep: Reputation: 43
Hi again.
I downloaded compat-wireless, and built a new b43 driver. Nothing changed.
when I tried the pio option, the module refused to load saying it was an unrecognized option. This happened before and after installing the new drivers with compat-wireless.

I got it working, sort of. (Edit: see below) I guess it can break at any moment with that "can't use DMA with your device" message, just like the first time. I noticed as well that the driver is not able to bring the interface up if it is turned off with the keyboard: rfkill will say in dmesg that the switch is on but it seems the driver is not picking the change.

So, for now I am putting my old drive in place and returning to my Slack13 system, as I need to do some stuff and I can't keep playing with this. But I want the sta driver working, as it seems to be the only one working properly, so I will keep researching and trying things. Any suggestion is appreciated.

By the way, I have found this so the PIO option doesn't look like the right thing to do
http://permalink.gmane.org/gmane.linux.network/151964

Regards

Edit:
I noticed that dmesg will log rfkill messages mentioning the switch being DISABLED sometimes. If I tried the keyboard combination to bring it up, it will add a new message to /var/log/messages saying that the switch was ENABLED, but the driver would not activate the interface. So, I pressed the buttons again to get the DISABLED message, removed the module, pressed the buttons again (to enable wifi) and loaded the module. This time it loaded fine and started working.
It is also loading fine every time I boot, but I can't use the keyboard to switch on/off the wifi system.

Last edited by AlvaroG; 04-28-2010 at 09:01 AM. Reason: Add description of how I got b43 working
 
Old 04-27-2010, 07:55 PM   #11
rfernandez
Member
 
Registered: Mar 2010
Location: Brazil
Distribution: Slackware64
Posts: 264

Rep: Reputation: 41
@piratesmack
I liked your solution. Will try out someday.

@AlvaroG
The funny thing is that you're able to build and install the module, but it doesn't work correctly. After I moved to kernel 2.6.33.x (prior to this version the module built like a charm), I had to apply some patches and compile the kernel with an extra module (I compiled the kernel myself so, somethings went missing) so that config dependencies would be solved. I'm now on kernel 2.6.33.2 and with broadcom-sta up-and-running without problems.

So, unless it's a kernel 2.6.33.3 problem, I have no idea why it wouldn't work with your machine.
 
Old 04-27-2010, 11:09 PM   #12
piratesmack
Member
 
Registered: Feb 2009
Distribution: Slackware, Arch
Posts: 519

Rep: Reputation: 142Reputation: 142
Quote:
Originally Posted by AlvaroG View Post
By the way, I have found this so the PIO option doesn't look like the right thing to do
http://permalink.gmane.org/gmane.linux.network/151964
Yeah, but right now it's the only way I can get b43 to work.

Last edited by piratesmack; 04-27-2010 at 11:11 PM.
 
Old 04-28-2010, 08:56 AM   #13
AlvaroG
Member
 
Registered: Jul 2009
Location: Canelones, Uruguay
Distribution: Slackware
Posts: 147

Original Poster
Rep: Reputation: 43
Quote:
Originally Posted by rfernandez View Post
@AlvaroG
The funny thing is that you're able to build and install the module, but it doesn't work correctly. After I moved to kernel 2.6.33.x (prior to this version the module built like a charm), I had to apply some patches and compile the kernel with an extra module (I compiled the kernel myself so, somethings went missing) so that config dependencies would be solved. I'm now on kernel 2.6.33.2 and with broadcom-sta up-and-running without problems.

So, unless it's a kernel 2.6.33.3 problem, I have no idea why it wouldn't work with your machine.
It is *very* strange. I am actually on 2.6.33.2, the kernel coming with -current. May that module you mention be lib80211_crypt (with some submodules as well)? Because that one is also present and loaded by modprobe when I load wl.
Compiling my own kernel may be a choice, I was thinking about it when I had the first issue with b43, so I may go that route. If I get it working by doing that, no doubt I will paste what I did here
I will also edit my previous message to explain how I got b43 working, it may help somebody else.

Quote:
Originally Posted by piratesmack View Post
Yeah, but right now it's the only way I can get b43 to work.
I thought so, I just pasted the above link as sort of a proof I found of why it didn't work for me. I actually found another page saying that the PIO option was removed from b43 in 2007 :-D

Last edited by AlvaroG; 04-28-2010 at 09:04 AM.
 
Old 04-28-2010, 10:10 AM   #14
rfernandez
Member
 
Registered: Mar 2010
Location: Brazil
Distribution: Slackware64
Posts: 264

Rep: Reputation: 41
Uhm... I thought that the -current tree made use of kernel 2.6.33.3 already. My mistake.

Yes, the lib80211_crypt is needed by the wl module to work properly, so it loads as a dependecy module. With this lib80211 module, some other modules may come along (if they are built separately from lib80211_crypt). But what I did to make it work on this kernel version is described here:

http://lkml.org/lkml/2009/12/12/137

And those changes did the trick for me (as broadcom-sta, just before the release of the new kernel, released the latest driver to work 'till kernel 2.6.32.x). Maybe this could help you if you try to build the kernel yourself (it sure helped me).

But, please, do tell us if you make it work.
 
Old 04-28-2010, 12:04 PM   #15
AlvaroG
Member
 
Registered: Jul 2009
Location: Canelones, Uruguay
Distribution: Slackware
Posts: 147

Original Poster
Rep: Reputation: 43
Wow, when I read that kind of thread it makes me think there is SO MUCH to learn about this stuff...
I will try this in a few days, and paste the result.

Thanks for the link!
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] broadcom-sta won't build with 2.6.33.1 kernel mdynac Slackware 14 05-11-2010 11:24 PM
broadcom-sta driver won't build on 2.6.32-trunk-amd64 war1025 Debian 1 01-24-2010 10:46 PM
How to install broadcom 4322 sta driver for backtrack 3? klienes Linux - Wireless Networking 1 11-12-2009 07:13 AM
STA not recognized at install adrianmariano Debian 17 07-22-2007 04:28 PM
installed dropline, root loads kde3.2, user loads drop pgrimes Linux - Software 7 06-28-2004 06:11 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 02:10 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration