This change marks interface as down on reset, otherwise the driver can't
reinitialize itself properly.
Without the change a transient problem turns out to be critical and leads
to inavailability to reset the driver without brcmsmac module unload/load
cycle:
ieee80211 phy0: wl0: PSM microcode watchdog fired at 5993 (seconds). Resetting.
brcms_c_dpc : PSM Watchdog, chipid 0xa8d9, chiprev 0x1
ieee80211 phy0: wl0: fatal error, reinitializing
ieee80211 phy0: Hardware restart was requested
ieee80211 phy0: brcms_ops_start: brcms_up() returned -19
Signed-off-by: Vladimir Zapolskiy <[email protected]>
Cc: Arend van Spriel <[email protected]>
---
drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c b/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
index 192ad5c..a5edebe 100644
--- a/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
+++ b/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
@@ -1233,6 +1233,9 @@ uint brcms_reset(struct brcms_info *wl)
/* dpc will not be rescheduled */
wl->resched = false;
+ /* inform publicly that interface is down */
+ wl->pub->up = false;
+
return 0;
}
--
1.7.10
On 06.08.2012 22:45, Arend van Spriel wrote:
> On 08/06/2012 09:39 PM, Vladimir Zapolskiy wrote:
>> Hi Arend,
>>
>> what do you think about the proposed change? For me the problem is
>> quite severe, for the last several months I had to patch the kernel
>> to have functional BCM43225 on my laptop, hopefully the fix should go to
>> the
>> stable branches as well.
>>
>
> I have forwarded it to my colleagues. I may want to revise the fix a
> little and have it applied to stable as well. I was not aware that this
> scenario occurs frequently. Thanks for addressing your issue so
> proactively ;-)
Thank you in advance. If you need any additional info from my side,
feel free to contact me.
--
With best wishes,
Vladimir
On 08/13/2012 08:50 PM, John W. Linville wrote:
> On Mon, Aug 06, 2012 at 09:45:33PM +0200, Arend van Spriel wrote:
>> On 08/06/2012 09:39 PM, Vladimir Zapolskiy wrote:
>>> Hi Arend,
>>>
>>> what do you think about the proposed change? For me the problem is
>>> quite severe, for the last several months I had to patch the kernel
>>> to have functional BCM43225 on my laptop, hopefully the fix should go to
>>> the
>>> stable branches as well.
>>>
>>
>> I have forwarded it to my colleagues. I may want to revise the fix a
>> little and have it applied to stable as well. I was not aware that this
>> scenario occurs frequently. Thanks for addressing your issue so
>> proactively ;-)
>
> Any word on the state of this fix?
>
> John
>
Hi John,
This change was briefly discussed internally. The patch will
reinitialize the entire driver and device. While this probably works it
may be overkill. OTOH it is better that than no solution. I suggest to
apply this and have us come up with a more definite fix later at which
we can move both patches to stable.
Gr. AvS
Hi Arend,
what do you think about the proposed change? For me the problem is
quite severe, for the last several months I had to patch the kernel
to have functional BCM43225 on my laptop, hopefully the fix should go to the
stable branches as well.
On 05.08.2012 00:29, Vladimir Zapolskiy wrote:
> This change marks interface as down on reset, otherwise the driver can't
> reinitialize itself properly.
>
> Without the change a transient problem turns out to be critical and leads
> to inavailability to reset the driver without brcmsmac module unload/load
> cycle:
s/inavailability/unavailability/
> ieee80211 phy0: wl0: PSM microcode watchdog fired at 5993 (seconds). Resetting.
> brcms_c_dpc : PSM Watchdog, chipid 0xa8d9, chiprev 0x1
> ieee80211 phy0: wl0: fatal error, reinitializing
> ieee80211 phy0: Hardware restart was requested
> ieee80211 phy0: brcms_ops_start: brcms_up() returned -19
>
> Signed-off-by: Vladimir Zapolskiy<[email protected]>
> Cc: Arend van Spriel<[email protected]>
> ---
> drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c b/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
> index 192ad5c..a5edebe 100644
> --- a/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
> +++ b/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
> @@ -1233,6 +1233,9 @@ uint brcms_reset(struct brcms_info *wl)
> /* dpc will not be rescheduled */
> wl->resched = false;
>
> + /* inform publicly that interface is down */
> + wl->pub->up = false;
> +
> return 0;
> }
>
--
With best wishes,
Vladimir
On Mon, Aug 06, 2012 at 09:45:33PM +0200, Arend van Spriel wrote:
> On 08/06/2012 09:39 PM, Vladimir Zapolskiy wrote:
> > Hi Arend,
> >
> > what do you think about the proposed change? For me the problem is
> > quite severe, for the last several months I had to patch the kernel
> > to have functional BCM43225 on my laptop, hopefully the fix should go to
> > the
> > stable branches as well.
> >
>
> I have forwarded it to my colleagues. I may want to revise the fix a
> little and have it applied to stable as well. I was not aware that this
> scenario occurs frequently. Thanks for addressing your issue so
> proactively ;-)
Any word on the state of this fix?
John
--
John W. Linville Someday the world will need a hero, and you
[email protected] might be all we have. Be ready.
On 08/06/2012 09:39 PM, Vladimir Zapolskiy wrote:
> Hi Arend,
>
> what do you think about the proposed change? For me the problem is
> quite severe, for the last several months I had to patch the kernel
> to have functional BCM43225 on my laptop, hopefully the fix should go to
> the
> stable branches as well.
>
I have forwarded it to my colleagues. I may want to revise the fix a
little and have it applied to stable as well. I was not aware that this
scenario occurs frequently. Thanks for addressing your issue so
proactively ;-)
Gr. AvS