[RFC/RFT] b43: A fix for DMA transmission sequence errors
zajec5 at gmail.com
Fri Mar 15 02:37:41 EDT 2013
2013/3/14 Rafał Miłecki <zajec5 at gmail.com>:
> 2013/3/14 Larry Finger <Larry.Finger at lwfinger.net>:
>> From: Iestyn C. Elfick <isedev at gmail.com>
>> Intermittently, b43 will report "Out of order TX status report on DMA ring".
>> When this happens, the driver must be reset before communication can resume.
>> The cause of the problem is believed to be an error in the closed-source
>> firmware; however, all versions of the firmware are affected.
>> This change uses the observation that the expected status is always 2 less
>> than the observed value, and supplies a fake status report to skip one
>> header/data pair.
>> Signed-off-by: Larry Finger <Larry.Finger at lwfinger.net>
>> Cc: Stable <stable at vger.kernel.org>
>> Although this is a hack, it seems to work for the OP. It should not cause any
>> ill effects on any device that does not have the problem.
>> It does need a lot more testing, particularly on systems prone to the out-of-order
>> status report problem.
>> If anyone can think of a cleaner, less intrusive solution, please let us know.
> I wonder if this is hardware supporting unaligned access with
> full-addressing for DMA engine. Maybe it support index-based indexes
> for backward compatibility only, and it's somehow broken?
> Can we test full-addressing first? I'll try to prepare a patch for
> this during the weekend.
OK, so after early tests, this card doesn't support full-addressing at all.
I'll give this patch a try during the weekend.
More information about the b43-dev