You are not logged in.

#1 2013-06-21 18:51:31

pfnorris
Member
Registered: 2011-03-09
Posts: 26

Broadcom BCM4313 on Lenovo G580 Refuses to work

I am really scratching my head on this one. I have worked through the wiki article, and also looked at a number of earlier posts here on the forums to try and get to the bottom of this problem, but with no luck. I have a new Lenovo G580 which uses the BCM4313 wireless chip. This works faultlessly in the Windows 8 installation that the Laptop was supplied with. Without making any other changes to the hardware or BIOS I can swap out the HDD for my Arch drive and there is not a flicker from the broadcom card. For information the output of lspci is:

 02:00.0 Network controller: Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller (rev 01)
 03:00.0 Ethernet controller: Qualcomm Atheros AR8162 Fast Ethernet (rev 10)

As I understand it this chip should use the brcmsmac module and lsmod | grep brcm gives:

 brcmsmac              508510  0 
 cordic                  1112  1 brcmsmac
 brcmutil                3088  1 brcmsmac
 mac80211              487726  1 brcmsmac
 cfg80211              452332  2 brcmsmac,mac80211
 bcma                   32930  1 brcmsmac

rfkill list produces:

 0: phy0: Wireless LAN
        Soft blocked: no
        Hard blocked: no
1: ideapad_wlan: Wireless LAN
        Soft blocked: no
        Hard blocked: no
2: ideapad_bluetooth: Bluetooth
        Soft blocked: no
        Hard blocked: no
3: hci0: Bluetooth
        Soft blocked: no
        Hard blocked: no

ip a showed:

 .....wlp2s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN qlen 1000
    link/ether c0:14:3d:c7:c6:d9 brd ff:ff:ff:ff:ff:ff.....

So I ran sudo ip link set wlp2s0 up. But that made no difference the state still showed as DOWN. There is no content at all in /etc/modprobe.d/. Finally sudo iw wlp2s0 scan produces zero output.

The output of ip a seems to indicate that the device is set to DOWN but why? There is no hardware switch to set, nor is it disabled in the BIOS. In any case it works in Windows with no further action.  For what it is worth on this disk I also have installations of Debian Testing, Fedora 18 and openSuse 12.3 and it is equally dead on all of those. At the moment I have a big question mark against the kernel module although it is allegedly the correct one. Has anyone got any other bright ideas bearing in mind what I have already checked?

Thanks in advance

Phil Norris

Offline

#2 2013-06-21 21:36:59

WonderWoofy
Member
From: Los Gatos, CA
Registered: 2012-05-19
Posts: 8,414

Re: Broadcom BCM4313 on Lenovo G580 Refuses to work

Broadcom wireless is finnicky business.  Have you tried the other two available modules?  There is the b43 module, as well as the broadcom-wl module as well.   Have you read through the broadcom wiki page?

Offline

#3 2013-06-21 22:02:50

cris9288
Member
Registered: 2013-01-07
Posts: 348

Re: Broadcom BCM4313 on Lenovo G580 Refuses to work

yeah dude, fuck brcmsmac. I have the same chip as you on an hp dv4 and I had the same rfkill problems. In the past my card was unblocked but would freeze my system if i tried to connect to the internet. I was able to solve this problem by restoring my BIOS settings to default. Following that, I was able to get the driver working but it wouldn't maintain a connection for more than a few seconds. With recent kernels, however, using that driver results in a hard-blocked card. My fix from day one of using Arch? Use broadcom-wl - really easy to setup. You just have to blacklist anything that has anything to do with brcmsmac and add a file in /etc/modules-load.d/ that loads the appropriate modules for broadcom-wl. Check out the Broadcom wireless wiki.

EDIT: Actually, I have necessary modules for broadcom-wl listed in my MODULES array in rc.conf, but I think /etc/modules-load.d/ is probably the more appropriate place to put it.

Last edited by cris9288 (2013-06-21 22:05:38)

Offline

#4 2013-06-21 22:14:12

WonderWoofy
Member
From: Los Gatos, CA
Registered: 2012-05-19
Posts: 8,414

Re: Broadcom BCM4313 on Lenovo G580 Refuses to work

@cris9288, you should not be using rc.conf at all anymore.  If you are still using initscripts/SysV, and you haven't run into some issues already, you are bound to soon.  You are right though that the proper place to put it in /etc/module-load.d these days.  Also, as far as the bloacklisting with braodcom-wl, there is actually an /etc/modprobe.d/broadcom-wl.conf file that is included with the braodcom-wl package that takes care of this.  I am not sure if this is a new addition or what, as I just started using a broadcom card (amazingly my BRC43228 with wl works better than my Intel Centrino 2230 with iwlwiwfi).

Offline

#5 2013-06-21 23:45:27

cris9288
Member
Registered: 2013-01-07
Posts: 348

Re: Broadcom BCM4313 on Lenovo G580 Refuses to work

It was the only thing left there. when I originally went about setting up broadcom-wl, the wiki still referenced rc.conf. I moved the modules over to their right spot though.

Offline

#6 2013-06-21 23:48:49

WonderWoofy
Member
From: Los Gatos, CA
Registered: 2012-05-19
Posts: 8,414

Re: Broadcom BCM4313 on Lenovo G580 Refuses to work

Okay, just making sure.  Yeah, unfortunately since Arch is such a fast moving target, often the maintenance of the wiki cannot keep up.  This is obviously evident in what you hvae noticed about the littering of rc.conf references still remaining.  That makes me wonder, have you installed the systemd-sysvcompat package, or are you using init=/usr/lib/systemd/systemd in the kernel command line?  If you don't have the systemd-sysvcompat package, you should install it, as there really is no reason anymore to hang back with the possibility of switching back and forth between init systems.  In fact, with the /usr merge, initscripts and sysv are not even compatible with the system anymore.

Offline

#7 2013-06-22 11:16:33

pfnorris
Member
Registered: 2011-03-09
Posts: 26

Re: Broadcom BCM4313 on Lenovo G580 Refuses to work

OK Guys

Thanks for your replies. I am making some progress (I think). I have unloaded all the modules relating to brcmsmac, and at the bottom of the wiki page I found an entry from a user called Zarel who has the same model of Laptop as me. I followed his instructions which were to install the Broadcom_wl driver and put the following in /etc/modprobe.d/10_wl.conf:

blacklist brcmsmac
 blacklist bcma
 softdep wl pre: lib80211_crypt_tkip lib80211_crypt_ccmp lib80211_crypt_wep

This has made the wirless chip spring into life and see all the wireless networks in my area including mine, connect to mine and obtain an IP address. The signal shows about 75% strength so should be no issue there. But.....it is not sending or receiving any data. All pings fail even to my own server on my Lan by ip address. I am sure I am failing to see something blindingly obvious here but I'm buggered if I can think what it could be. Anyone got any thoughts?

Offline

#8 2013-06-22 14:42:57

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 19,740

Re: Broadcom BCM4313 on Lenovo G580 Refuses to work

You might check your routing tables and see if they are sane.  ( ip route )


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way

Offline

#9 2013-06-22 15:42:06

cris9288
Member
Registered: 2013-01-07
Posts: 348

Re: Broadcom BCM4313 on Lenovo G580 Refuses to work

Okay, just making sure.  Yeah, unfortunately since Arch is such a fast moving target, often the maintenance of the wiki cannot keep up.  This is obviously evident in what you hvae noticed about the littering of rc.conf references still remaining.  That makes me wonder, have you installed the systemd-sysvcompat package, or are you using init=/usr/lib/systemd/systemd in the kernel command line?  If you don't have the systemd-sysvcompat package, you should install it, as there really is no reason anymore to hang back with the possibility of switching back and forth between init systems.  In fact, with the /usr merge, initscripts and sysv are not even compatible with the system anymore.

i'm pretty sure I'm all up to date as far as systemd goes. I installed arch shortly after the end of initscripts support was announced.

OK Guys
Thanks for your replies. I am making some progress (I think). I have unloaded all the modules relating to brcmsmac, and at the bottom of the wiki page I found an entry from a user called Zarel who has the same model of Laptop as me. I followed his instructions which were to install the Broadcom_wl driver and put the following in /etc/modprobe.d/10_wl.conf:
blacklist brcmsmac
blacklist bcma
softdep wl pre: lib80211_crypt_tkip lib80211_crypt_ccmp lib80211_crypt_wep
This has made the wirless chip spring into life and see all the wireless networks in my area including mine, connect to mine and obtain an IP address. The signal shows about 75% strength so should be no issue there. But.....it is not sending or receiving any data. All pings fail even to my own server on my Lan by ip address. I am sure I am failing to see something blindingly obvious here but I'm buggered if I can think what it could be. Anyone got any thoughts?

So you are able to connect to your network, but aren't able to ping any local machines? Can you ping your router? I'm sure it's not necessary, but make sure to verify with lsmod that wl and its modules are, in fact, loaded. Also, make sure your netctl profile is properly configured, though this does sound like more of a routing table issue as ewaller has suggested.

Offline

#10 2013-06-22 19:50:22

pfnorris
Member
Registered: 2011-03-09
Posts: 26

Re: Broadcom BCM4313 on Lenovo G580 Refuses to work

Guys

Thanks for the replies. I have decided to take the pragmatic approach on this and ordered up an Intel Centrino card 'cause that'll just work. I'll just avoid Broadcom in future.

Thanks anyway

Offline

#11 2013-06-22 23:12:07

WonderWoofy
Member
From: Los Gatos, CA
Registered: 2012-05-19
Posts: 8,414

Re: Broadcom BCM4313 on Lenovo G580 Refuses to work

Uh-oh, you ordered a new card for a Lenovo machine?  That is probably not a good thing. 

Lenovo whitelists their wireless cards so that there are only a select few that will work.  For example, on my machine, I can use the crappy realtek that it originally came with, there is an Intel Centrino 2230 that I can use, as well as two broadcoms.  One of the broadcoms is a 1x1 which I am unsure about, but I do have the BCM43228 (I think it is actually something like BCM943228* since it is a combo BT4.0).  The problem is that these cards have a special FRU (Field Replaceable Unit) number on them, which is what is apparently used to whitelist the card.  No matching FRU, no booting the machine.

Offline

#12 2013-06-23 10:33:18

pfnorris
Member
Registered: 2011-03-09
Posts: 26

Re: Broadcom BCM4313 on Lenovo G580 Refuses to work

@WonderWoofy - Thanks for the heads up. No I was not aware of the whitelist, but I have been able to source a card at minimal cost that is on it, so the original one I ordered will have to go back. Thanks for letting me know.

Phil

Offline

#13 2013-06-25 19:00:18

pfnorris
Member
Registered: 2011-03-09
Posts: 26

Re: Broadcom BCM4313 on Lenovo G580 Refuses to work

Just to wind this one up. I never did get the broadcom chip working with either the brcmsmac module or the wl module. Have now replaced it with an Atheros AR9285 wireless chip that is on the Lenovo whitelist and presto instant wireless networking.

Only cost GBP3.50 off Ebay.....bargain!!

Thanks to all who helped.

Phil

Offline

Board footer

Powered by FluxBB