linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: "Laurent Lagrange" <lagrange@fr.oleane.com>
To: <linuxppc-embedded@ozlabs.org>
Subject: Linux 2.6.x  :  useless IO mappings behing PCI bridge
Date: Fri, 15 Sep 2006 16:26:13 +0200	[thread overview]
Message-ID: <000001c6d8d2$eaa15050$5201a8c0@GEG2400> (raw)
In-Reply-To: 


Hello,

I use a custom 82xx PMC board as a PCI monarch board
on a carrier and another PCI agent board with a bridge.

The PCI agent board requests prefetchable and non
prefetchable memories behind its bridge but no IO region.
The IO flag is not set in the header space.

When probing PCI, Linux warns :
PCI: Probing PCI hardware
PCI: Cannot allocate resource region 0 of PCI bridge 1
--> the default address is not a valid pci address !!!
PCI: bridge 1 resource 0 moved to f8fff000..f8ffffff
--> This size is the default io region size.

So the kernel allocates and ioremaps 4096B for no requested IO.
The problem is not that it consumes address space but
that the kernel warns as if it is a mistake :-(

It can be checked by lspci command.
# lspci -vvx
00:13.0 Class 0604: 3388:0026 (rev 04)
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 248, cache line size 08
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
-->     I/O behind bridge: f8fff000-f8ffffff
        Memory behind bridge: a0100000-a01fffff
        Prefetchable memory behind bridge: 0000000080000000-0000000081f00000
        BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B-
        Capabilities: [dc] Power Management version 1
                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA
PME(D0+,D1+,D2+,D3hot+,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [e4] #06 [0094]
        Capabilities: [e8] Vital Product Data
00: 88 33 26 00 06 00 b0 02 04 00 04 06 08 f8 01 00
10: 00 00 00 00 00 00 00 00 00 01 01 00 f1 f1 a0 02
20: 10 a0 10 a0 01 80 f1 81 00 00 00 00 00 00 00 00
30: ff f8 ff f8 dc 00 00 00 00 00 00 00 00 00 00 00

I think it would be right to check if IO is requested before
allocating some region.

Any opinion ?
Thanks all
Laurent

                 reply	other threads:[~2006-09-15 14:23 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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='000001c6d8d2$eaa15050$5201a8c0@GEG2400' \
    --to=lagrange@fr.oleane.com \
    --cc=linuxppc-embedded@ozlabs.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;
as well as URLs for NNTP newsgroup(s).