All of lore.kernel.org
 help / color / mirror / Atom feed
From: Larry Finger <Larry.Finger@lwfinger.net>
To: b43-dev@lists.infradead.org
Subject: [14e4:4315] Fatal DMA errors on Dell Vostro 1310 (Celeron M540)
Date: Sat, 03 Apr 2010 23:59:25 -0500	[thread overview]
Message-ID: <4BB81CAD.10602@lwfinger.net> (raw)
In-Reply-To: <201004032000.51561.mb@bu3sch.de>

On 04/03/2010 01:00 PM, Michael Buesch wrote:
> On Saturday 03 April 2010 18:15:55 G?bor Stefanik wrote:
>>> AFAIK my SSB PMU LDO voltage setting patches landed in 2.6.33. As
>>> Michael said before, the PMU cutting power to the device at
>>> inappropriate times can easily cause DMA errors, so any PMU
>>
>> ...changes can be considered suspicious. (I'm gonna shoot my mailer now.)
> 
> I think the bug is within the PCI-E core driver.

I agree with Michael, and I'm reviewing all the PCI-E initialization
code. So far, I have some differences in the specs as follows:

With the PCI-E core selected, read the contents of MMIO address 0x0800.
Mask that result with 0xF000 and compare the result with (PCI-E core
index) << 12. If the two are not equal, maskset 0x800 with mask 0x0FFF
and set with (PCI-E core index) << 12.

Again with the PCI-E core selected, if the PCI-E core revision is >= 6,
set bit 0x8000 in MMIO register 0x280A.

When running wl on my machine, these changes show up as the contents of
0x0800 going from 0x2801 to 0x3801 and 0x280A going from 0x6FDE to
0xEBDE. On John's Netbook, both values are already at the correct values.

A change that will make a difference is found in ssb_pmu_pll_init(). The
0x4312 case should just do a break. No external routines are called for
this chip.

There is also a new section to be placed near the end of
ssb_pcicore_dev_irqvecs_enable() in the PCI-E branch of the if statement
according to the following:

 If (chip id is 0x4311 AND chip revision is 2) OR chip id is 0x4312
   Maskset SSB_IMCFGLO with mask ~(SSB_IMCFGLO_SERTO |
     SSB_IMCFGLO_REQTO) and set with 3

So far, those are the only differences that I have found.

Larry

  parent reply	other threads:[~2010-04-04  4:59 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-02 17:11 [14e4:4315] Fatal DMA errors on Dell Vostro 1310 (Celeron M540) Myhailo Danylenko
2010-04-02 18:04 ` Larry Finger
2010-04-03  9:57   ` Myhailo Danylenko
2010-04-03 16:03     ` Larry Finger
2010-04-03 16:15       ` Gábor Stefanik
2010-04-03 16:15         ` Gábor Stefanik
2010-04-03 18:00           ` Michael Buesch
2010-04-03 22:35             ` Gábor Stefanik
2010-04-04  4:59             ` Larry Finger [this message]
2010-04-04  7:03               ` richardvoigt at gmail.com
2010-04-04 14:51                 ` Larry Finger
2010-04-04  8:24               ` Michael Buesch
2010-04-04 17:15                 ` Larry Finger
2010-04-04 17:22                   ` Michael Buesch
2011-04-19 10:18               ` Rafał Miłecki

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4BB81CAD.10602@lwfinger.net \
    --to=larry.finger@lwfinger.net \
    --cc=b43-dev@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.