mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Bjorn Helgaas <bjorn.helgaas@hp.com>
To: Alex Brooks <a.brooks@marathon-robotics.com>
Cc: linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: BAR 0: can't allocate resource
Date: Mon, 11 Jan 2010 14:27:03 -0700	[thread overview]
Message-ID: <201001111427.03777.bjorn.helgaas@hp.com> (raw)
In-Reply-To: <201001101407.26930.a.brooks@marathon-robotics.com>

On Saturday 09 January 2010 08:07:26 pm Alex Brooks wrote:
> > I was hoping for a kernel directly from Linus' git repo, e.g.,
> > 2.6.33-rc3; I don't think the debug output I'm thinking about went in
> > until after 2.6.32 was released.
> 
> I'm not sure how to modify the 2.6.33-rc3 kernel source exactly re MCFG -- the 
> dmesg output for 2.6.33-rc3 is quite different (attached),

It's interesting that we now use MMCONFIG by default; no tweaking
necessary.  I guess Linux just got a little smarter between 2.6.26
and 2.6.33 -- in this case, it looks like we reduce the size of the
MMCONFIG region from what the BIOS reported.

But I don't think MMCONFIG is relevant to this problem anyway.

> including some new  
> information about an address collision for the recalcitrant device:
> 
> pci 0000:01:04.0: address space collision: [mem 0x00800000-0x00800fff] already 
> in use
> pci 0000:01:04.0: can't reserve [mem 0x00800000-0x00800fff]
> 
> Does this shed any more light on things (or can you tell me what I could 
> modify to get better debug info)?

It shows that we think the octal UART is at 0x00800000, which
doesn't seem valid (I think it's in the middle of your system RAM).

This is before Linux moves anything around, so normally this would
be what BIOS left in the BAR.  But BIOS puts it at 0xfebff000 in the
working case (without the Mini PCI adapter), and the adapter shouldn't
even be visible to the BIOS, so I would expect the octal UART to still
be at the same address.

I'm afraid I still don't see a software problem here.  To me (and I'm
certainly not a hardware person), it feels like an electrical problem
on the PCI bus: we read a BAR and it has a nonsensical value, we write
the BAR and can't read that value back, we read the vendor/device/class
codes and get nonsense.  It's also interesting that most of these
nonsense values we read seem to have only one bit set.

Bjorn

  reply	other threads:[~2010-01-11 21:27 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <201001061305.31635.a.brooks@marathon-robotics.com>
2010-01-06  2:16 ` Alex Brooks
2010-01-06 20:19   ` Bjorn Helgaas
2010-01-07  1:09     ` Alex Brooks
2010-01-07  5:46       ` Bjorn Helgaas
2010-01-10  3:07         ` Alex Brooks
2010-01-11 21:27           ` Bjorn Helgaas [this message]
2010-01-11 21:47             ` Alex Brooks
2010-01-05  9:18 Alex Brooks
2010-01-05 17:33 ` Bjorn Helgaas
2010-01-05 22:19   ` Alex Brooks
2010-01-05 23:00     ` Bjorn Helgaas

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=201001111427.03777.bjorn.helgaas@hp.com \
    --to=bjorn.helgaas@hp.com \
    --cc=a.brooks@marathon-robotics.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®