Re: PROBLEM: brcm80211 unable to survive suspend/resume cycle

Previous thread: Re: [PATCH] powerpc: Add jump label support by Stephen Rothwell on Monday, November 8, 2010 - 7:35 pm. (4 messages)

Next thread: [PATCH] Restrict unprivileged access to kernel syslog by Dan Rosenberg on Monday, November 8, 2010 - 8:28 pm. (9 messages)
From: Jon Masters
Date: Monday, November 8, 2010 - 8:13 pm

Folks,

I reported this before, but let me open up a new thread for this now
that this driver has landed in 2.6.37-rc1 and been out for a while. I am
able to use this driver (more or less) for daily use on my netbook, but
it is unable survive a suspend/resume cycle without being unloaded and
then reloaded again on resume. That actually seems to work quite well.

I believe the problem is firmware related:

[  553.355497] wl0: wlc_coreinit: ucode did not self-suspend!
[  554.040495] wl0: wlc_suspend_mac_and_wait: waited 83000 uS and
MI_MACSSPNDD is still not on.
[  554.040517] wl0: psmdebug 0x000f8773, phydebug 0x00000000, psm_brc
0x0000
[  554.154625] wl0: wlc_suspend_mac_and_wait: waited 83000 uS and
MI_MACSSPNDD is still not on.
[  554.154647] wl0: psmdebug 0x000f8773, phydebug 0x00000000, psm_brc
0x0000
[  554.270438] wl0: wlc_suspend_mac_and_wait: waited 83000 uS and
MI_MACSSPNDD is still not on.
[  554.270459] wl0: psmdebug 0x000f8773, phydebug 0x00000000, psm_brc
0x0000
[  554.384569] wl0: wlc_suspend_mac_and_wait: waited 83000 uS and
MI_MACSSPNDD is still not on.

After the "ucode did not self-suspend", I then get the subsequent two
line warnings repeated forever until I reload the driver. Sure, it's
probably a firmware issue, but isn't there something the driver can do
to kick it into a full reset if it doesn't come back? It's able to do it
on module load initially...

Jon.


--

From: Jon Masters
Date: Monday, November 8, 2010 - 8:16 pm

Here's the log on the driver successfully re(loading):

[  592.212928] brcm80211: module is from the staging directory, the
quality is unknown, you have been warned.
[  592.252769] brcm80211 0000:02:00.0: PCI INT A -> GSI 17 (level, low)
-> IRQ 17
[  592.252851] brcm80211 0000:02:00.0: setting latency timer to 64
[  592.301703] Found chip type AI (0x13814313)
[  592.307394] Changing max_res_mask to 0xffff
[  592.307404] Changing min_res_mask to 0x200d
[  592.313694] Applying 4313 WARs
[  592.315470] wlc_bmac_attach:: deviceid 0x4727 nbands 1 board 0x2047
macaddr: 74:f0:6d:7e:ae:bc
[  592.325680] ieee80211 phy0: Selected rate control algorithm
'minstrel_ht'
[  592.347629] wl_set_hint: Sending country code US to MAC80211
[  592.348371] wl0: Broadcom BCM43xx 802.11 MAC80211 Driver 5.75.11
(1.82.8.0) (Compiled in . at 19:32:54 on Nov  8 2010)
[  592.350243] cfg80211: Calling CRDA for country: US
[  592.440596] ADDRCONF(NETDEV_UP): wlan0: link is not ready
[  592.452998] cfg80211: Regulatory domain changed to country: US
[  592.453126]     (start_freq - end_freq @ bandwidth),
(max_antenna_gain, max_eirp)
[  592.453143]     (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi,
2700 mBm)
[  592.453157]     (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi,
1700 mBm)
[  592.453171]     (5250000 KHz - 5330000 KHz @ 40000 KHz), (300 mBi,
2000 mBm)
[  592.453186]     (5490000 KHz - 5600000 KHz @ 40000 KHz), (300 mBi,
2000 mBm)
[  592.453209]     (5650000 KHz - 5710000 KHz @ 40000 KHz), (300 mBi,
2000 mBm)
[  592.453231]     (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi,
3000 mBm)
[  594.936591] wlan0: deauthenticating from X by local choice (reason=3)
[  595.131413] wlan0: authenticate with X (try 1)
[  595.332109] wlan0: authenticate with X (try 2)
[  595.334992] wlan0: authenticated
[  595.340928] wlan0: associate with X (try 1)
[  595.348910] wlan0: RX AssocResp from X (capab=0x411 status=0 aid=4)
[  595.348928] wlan0: associated
[  595.357809] Associated:      True
[  ...
From: Greg KH
Date: Monday, November 8, 2010 - 8:24 pm

<snip>

Did you copy the authors/developers on this bug report?

Please do that...
--

From: Jon Masters
Date: Tuesday, November 9, 2010 - 12:58 am

I forwarded the mail to Brett right after I sent it because I had missed
them the original CC. Apologies for that. I didn't think it necessary to
send a followup but appreciate your mail - anyway, I think they got it.

Jon.


--

From: Jon Masters
Date: Tuesday, November 9, 2010 - 4:11 pm

Ok. Happy to test any experimental patches and get you a fast
turn-around on results. After working a lot of the weekend on the i915
regression I'm almost at the point where 2.6.37-rc1 works with all of
the devices I want to use in this netbook, except for WiFi suspend.

Jon.


--

From: Jon Masters
Date: Monday, November 15, 2010 - 9:04 pm

Did you get chance to poke much yet?

Jon.


--

From: Jon Masters
Date: Wednesday, December 8, 2010 - 12:03 am

This is still an issue in 2.6.37-rc5. Do you have any update on it?

Jon.


--

From: Jon Masters
Date: Wednesday, December 8, 2010 - 12:10 am

In 2.6.37-rc2 I was unable to remove the module and reload it
successfully. In the latest RC I am at least able to reload it and have
it work again after doing so. Could you (for the moment) just add some
kind of big-hammer type reset in the unsuspend code path? :)

Jon.


--

From: Jon Masters
Date: Wednesday, December 22, 2010 - 7:31 am

Any word on this?

Jon.


--

Previous thread: Re: [PATCH] powerpc: Add jump label support by Stephen Rothwell on Monday, November 8, 2010 - 7:35 pm. (4 messages)

Next thread: [PATCH] Restrict unprivileged access to kernel syslog by Dan Rosenberg on Monday, November 8, 2010 - 8:28 pm. (9 messages)