* 64-bit DMA problems with BCM4312 using b43
@ 2009-11-13 17:21 Larry Finger
2009-11-13 20:11 ` Matthew Garrett
0 siblings, 1 reply; 7+ messages in thread
From: Larry Finger @ 2009-11-13 17:21 UTC (permalink / raw)
To: Linux ACPI; +Cc: LKML, bcm43xx devel, Michael Buesch, Gábor Stefanik
A number of users are experiencing DMA descriptor or data errors using 64-bit
DMA with the Broadcom BCM4312 wireless device. After careful review and a
rewrite of the DMA code in the driver, we have not been able to fix the problem,
but we have determined the following:
(1) The problem is much more likely to occur on netbook systems. Several of the
developers have this card in regular notebook systems. None of us have the
problem. Several brand/model combinations are affected including Dell Inspiron
910 and Acer Aspire One A150. Linus has also reported the same symptoms with a
Core 2 ULV CPU. One of our devs questions if the deep-sleep support in the CPU
is a problem. It is also believed that affected systems have a Phoenix BIOS.
(2) If CONFIG_ACPI_PROCESSOR is not set on affected systems, the error rate is
much lower.
(3) When a DMA descriptor error occurs, a dump of the descriptors does not
reveal any obvious problems.
(4) Once the problem occurs, resetting of the device does not restore proper
operations. It is not a transient error.
Support for this device was not enabled in mainline until 2.6.32-rc2.
I do not know enough about either the ACPI or DMA code to begin debugging in
either of those regions. Any suggestions on debugging strategies, or links to
similar problems would be appreciated.
Thanks,
Larry
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: 64-bit DMA problems with BCM4312 using b43
2009-11-13 17:21 64-bit DMA problems with BCM4312 using b43 Larry Finger
@ 2009-11-13 20:11 ` Matthew Garrett
[not found] ` <20091113201112.GA5540-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org>
0 siblings, 1 reply; 7+ messages in thread
From: Matthew Garrett @ 2009-11-13 20:11 UTC (permalink / raw)
To: Larry Finger
Cc: Linux ACPI, LKML, bcm43xx devel, Michael Buesch,
Gábor Stefanik
On Fri, Nov 13, 2009 at 11:21:18AM -0600, Larry Finger wrote:
> I do not know enough about either the ACPI or DMA code to begin debugging in
> either of those regions. Any suggestions on debugging strategies, or links to
> similar problems would be appreciated.
Could the hardware be highly sensitive to DMA latencies? Take a look at
the pm_qos code in ipw2100.
--
Matthew Garrett | mjg59@srcf.ucam.org
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: 64-bit DMA problems with BCM4312 using b43
[not found] ` <20091113201112.GA5540-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org>
@ 2009-11-13 20:44 ` Michael Buesch
[not found] ` <200911132144.24110.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
0 siblings, 1 reply; 7+ messages in thread
From: Michael Buesch @ 2009-11-13 20:44 UTC (permalink / raw)
To: bcm43xx-dev-0fE9KPoRgkgATYTw5x5z8w
Cc: Matthew Garrett, Linux ACPI, LKML, Larry Finger
On Friday 13 November 2009 21:11:12 Matthew Garrett wrote:
> On Fri, Nov 13, 2009 at 11:21:18AM -0600, Larry Finger wrote:
>
> > I do not know enough about either the ACPI or DMA code to begin debugging in
> > either of those regions. Any suggestions on debugging strategies, or links to
> > similar problems would be appreciated.
>
> Could the hardware be highly sensitive to DMA latencies? Take a look at
> the pm_qos code in ipw2100.
This makes perfect sense, yes. The DMA engine has so many quirks, I wouldn't be
surprised if it couldn't handle pm properly.
--
Greetings, Michael.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: 64-bit DMA problems with BCM4312 using b43
[not found] ` <200911132144.24110.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
@ 2009-11-13 21:05 ` Larry Finger
2009-11-13 21:13 ` Matthew Garrett
0 siblings, 1 reply; 7+ messages in thread
From: Larry Finger @ 2009-11-13 21:05 UTC (permalink / raw)
To: Michael Buesch
Cc: Matthew Garrett, bcm43xx-dev-0fE9KPoRgkgATYTw5x5z8w, LKML,
Linux ACPI
On 11/13/2009 02:44 PM, Michael Buesch wrote:
> On Friday 13 November 2009 21:11:12 Matthew Garrett wrote:
>> On Fri, Nov 13, 2009 at 11:21:18AM -0600, Larry Finger wrote:
>>
>>> I do not know enough about either the ACPI or DMA code to begin debugging in
>>> either of those regions. Any suggestions on debugging strategies, or links to
>>> similar problems would be appreciated.
>>
>> Could the hardware be highly sensitive to DMA latencies? Take a look at
>> the pm_qos code in ipw2100.
>
> This makes perfect sense, yes. The DMA engine has so many quirks, I wouldn't be
> surprised if it couldn't handle pm properly.
I'm in the process of creating a patch to set the latency to 200 usec. The
default is 2000. On my fast prosessors, it should not be anything nearly that
slow. If we determine this to be the problem, then we can try tuning.
Larry
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: 64-bit DMA problems with BCM4312 using b43
2009-11-13 21:05 ` Larry Finger
@ 2009-11-13 21:13 ` Matthew Garrett
2009-11-13 21:34 ` Larry Finger
2009-11-14 3:40 ` Larry Finger
0 siblings, 2 replies; 7+ messages in thread
From: Matthew Garrett @ 2009-11-13 21:13 UTC (permalink / raw)
To: Larry Finger; +Cc: Michael Buesch, bcm43xx-dev, Linux ACPI, LKML
On Fri, Nov 13, 2009 at 03:05:18PM -0600, Larry Finger wrote:
> I'm in the process of creating a patch to set the latency to 200 usec. The
> default is 2000. On my fast prosessors, it should not be anything nearly that
> slow. If we determine this to be the problem, then we can try tuning.
The latency is the amount of time it takes to get out of deep C states
and into C0. That's a function of the processor design rather than the
frequency.
--
Matthew Garrett | mjg59@srcf.ucam.org
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: 64-bit DMA problems with BCM4312 using b43
2009-11-13 21:13 ` Matthew Garrett
@ 2009-11-13 21:34 ` Larry Finger
2009-11-14 3:40 ` Larry Finger
1 sibling, 0 replies; 7+ messages in thread
From: Larry Finger @ 2009-11-13 21:34 UTC (permalink / raw)
To: Matthew Garrett; +Cc: Michael Buesch, bcm43xx-dev, Linux ACPI, LKML
On 11/13/2009 03:13 PM, Matthew Garrett wrote:
> On Fri, Nov 13, 2009 at 03:05:18PM -0600, Larry Finger wrote:
>
>> I'm in the process of creating a patch to set the latency to 200 usec. The
>> default is 2000. On my fast prosessors, it should not be anything nearly that
>> slow. If we determine this to be the problem, then we can try tuning.
>
> The latency is the amount of time it takes to get out of deep C states
> and into C0. That's a function of the processor design rather than the
> frequency.
Thanks for that info. I should have said my Turion 64 X2 is different.
Larry
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: 64-bit DMA problems with BCM4312 using b43
2009-11-13 21:13 ` Matthew Garrett
2009-11-13 21:34 ` Larry Finger
@ 2009-11-14 3:40 ` Larry Finger
1 sibling, 0 replies; 7+ messages in thread
From: Larry Finger @ 2009-11-14 3:40 UTC (permalink / raw)
To: Matthew Garrett; +Cc: Michael Buesch, bcm43xx-dev, Linux ACPI, LKML
On 11/13/2009 03:13 PM, Matthew Garrett wrote:
> On Fri, Nov 13, 2009 at 03:05:18PM -0600, Larry Finger wrote:
>
>> I'm in the process of creating a patch to set the latency to 200 usec. The
>> default is 2000. On my fast prosessors, it should not be anything nearly that
>> slow. If we determine this to be the problem, then we can try tuning.
>
> The latency is the amount of time it takes to get out of deep C states
> and into C0. That's a function of the processor design rather than the
> frequency.
Thanks for your suggestion. The value of 200 fixed one of the two machines and
greatly improved the other. He is currently testing with a value of 150, and
will try 100 if that still fails.
Larry
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2009-11-14 3:40 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-11-13 17:21 64-bit DMA problems with BCM4312 using b43 Larry Finger
2009-11-13 20:11 ` Matthew Garrett
[not found] ` <20091113201112.GA5540-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org>
2009-11-13 20:44 ` Michael Buesch
[not found] ` <200911132144.24110.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2009-11-13 21:05 ` Larry Finger
2009-11-13 21:13 ` Matthew Garrett
2009-11-13 21:34 ` Larry Finger
2009-11-14 3:40 ` Larry Finger
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox