linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Meelis Roos <mroos@linux.ee>
To: Bjorn Helgaas <helgaas@kernel.org>
Cc: Yinghai Lu <yinghai@kernel.org>,
	linux-pci@vger.kernel.org, sparclinux@vger.kernel.org
Subject: Re: sparc64 PCI BAR allocation is still problematic
Date: Fri, 6 Jul 2018 22:49:19 +0300 (EEST)	[thread overview]
Message-ID: <alpine.LRH.2.21.1807062218350.21056@math.ut.ee> (raw)
In-Reply-To: <20180629134721.GA98204@bhelgaas-glaptop.roam.corp.google.com>

> > Video RAM area related BAR messages are gone from all servers.
> > 
> > V100 OK
> > V120 OK
> > Netra X1 OK
> > Netra T1-200 OK
> > Netra T1-105 OK
> > 
> > T2000 still has "no compatible bridge window" about ULi ISA Bridge:
> > 
> > [    3.767832] pci 0001:05:02.0: can't claim BAR 0 [io  0xf010000000-0xf01000ffff]: no compatible bridge window
> 
> >From the dmesg log at https://bugzilla.kernel.org/show_bug.cgi?id=117191,
> 
>   pci_sun4v f0287174: PCI host bridge to bus 0001:02
>   pci_bus 0001:02: root bus resource [io  0xf010000000-0xf01fffffff] (bus address [0x0000-0xfffffff])
>   pci 0001:05:02.0: can't claim BAR 0 [io  0xf010000000-0xf01000ffff]: no compatible bridge window
> 
> BAR 0 could potentially be valid, if the intermediate bridge windows
> were set up correctly.  But from the lspci:
> 
>   0001:02:00.0 PCI bridge: PEX 8532 Upstream Port
>     Bus: primary=02, secondary=03, subordinate=09
>     I/O behind bridge: 00000000-00002fff
>   0001:03:01.0 PCI bridge: PEX 8532 Downstream Port
>     Bus: primary=03, secondary=04, subordinate=06
>     I/O behind bridge: 00000000-00000fff
>   0001:04:00.0 PCI bridge: PCIe to PCI/PCI-X Bridge
>     Bus: primary=04, secondary=05, subordinate=05
>     I/O behind bridge: 00000000-00000fff
>   0001:05:02.0 ISA bridge: ULi M1533/M1535/M1543 PCI to ISA Bridge
>     Region 0: [virtual] I/O ports at f010000000 [size=64K]
> 
> (lspci normally shows the CPU addresses, but it looks like it's showing
> bus addresses here (except for the 0001:05:02.0 I/O BAR).  That might
> be something we should sort out at some point.  I know sparc does
> things differently in that area.)
> 
> But either way, the 0001:04:00.0 I/O aperture is only 4K in size, and
> apparently OF is telling us the ISA bridge has a 64K I/O BAR, so that
> explains the "no compatible bridge window" message.  We can't fit a
> 64K BAR in a 4K window.
> 
> Do you know if there's an ISA device behind that bridge?  If there
> is, and it only requires I/O ports in the 0-0xfff range, it probably
> still works in spite of the warning.

prtconf shows from OF that a serial port is there:

                        Node 0xf02991b8
                            ignore-cd:
                            reg:  00000000.000003f8.00000008
                            interrupts:  00000001
                            compatible: 'su16550' + 'su'
                            device_type:  'serial'
                            name:  'serial'


> But if it needs anything above 0xfff, or if we decided to be "smart"
> and not enable I/O on the bridge because we think the I/O BAR is
> invalid, it wouldn't work.
> 
> > V245 still has "no compatible bridge window" about ULI ISA Bridge:
> > 
> > [    4.522892] pci 0000:05:1e.0: can't claim BAR 0 [io  0x7f810000000-0x7f810000fff]: no compatible bridge window
> 
> Again from https://bugzilla.kernel.org/show_bug.cgi?id=117191,
> 
>   fire f0068b8c: PCI host bridge to bus 0000:02
>   pci_bus 0000:02: root bus resource [io  0x7f810000000-0x7f81fffffff] (bus address [0x0000-0xfffffff])
>   pci 0000:05:1e.0: can't claim BAR 0 [io  0x7f810000000-0x7f810000fff]: no compatible bridge window
> 
>   0000:04:00.0 PCI bridge: ULi M5249 HTT to PCI Bridge
>     Bus: primary=04, secondary=05, subordinate=05
>     I/O behind bridge: 00001000-00001fff
>     Memory behind bridge: 00200000-03ffffff
>   0000:05:1c.0 ULi USB 1.1 Controller [OHCI]
>     Region 0: Memory at 01000000 (32-bit, non-prefetchable) [size=16M]
>   0000:05:1c.1 ULi USB 1.1 Controller [OHCI]
>     Region 0: Memory at 02000000 (32-bit, non-prefetchable) [size=16M]
>   0000:05:1c.3 ULi USB 2.0 Controller [EHCI]
>     Region 0: Memory at 00200000 (32-bit, non-prefetchable) [size=8K]
>   0000:05:1e.0 ISA bridge: ULi M1575 South Bridge
>     Region 0: [virtual] I/O ports at 7f810000000 [size=4K]
>   0000:05:1f.0 ULi M5229 IDE
>     Region 0: I/O ports at 1040 [size=64]
>     Region 1: I/O ports at 1080 [size=64]
>     Region 2: I/O ports at 10c0 [size=64]
>     Region 3: I/O ports at 1100 [size=64]
>     Region 4: I/O ports at 1000 [size=64]
> 
> The 0000:05:1e.0 I/O BAR (BAR 0) contains 0 (at least according to
> OF).  This is clearly invalid because the bridge at 0000:04:00.0 will
> never route anything to bus 05 with an I/O bus address of 0, so
> nothing behind the 05:1e.0 ISA bridge should work.
> 
> If you still have the v4.18-rc1 logs from these boxes, would you mind
> attaching them to the bugzilla?

Found 4.17.0 and 4.18-rc2+git dmesgs for both T2000 and V245, attached 
there.

-- 
Meelis Roos (mroos@linux.ee)

      reply	other threads:[~2018-07-06 19:49 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-08 18:44 sparc64 PCI BAR allocation is still problematic Meelis Roos
2018-04-08 21:21 ` David Miller
2018-04-09  3:00   ` Sinan Kaya
2018-04-09 10:47     ` Meelis Roos
2018-04-09  3:23 ` Bjorn Helgaas
2018-04-09 14:30   ` Meelis Roos
2018-04-10 17:34 ` Bjorn Helgaas
2018-04-10 18:45   ` Meelis Roos
2018-04-10 18:56     ` Bjorn Helgaas
2018-04-11  7:59       ` Meelis Roos
2018-04-11 13:33         ` Bjorn Helgaas
2018-04-11 14:40           ` Meelis Roos
2018-04-11 20:01             ` Bjorn Helgaas
2018-04-11 20:25               ` Meelis Roos
2018-04-11 21:17                 ` Bjorn Helgaas
2018-05-21 20:10         ` Bjorn Helgaas
2018-06-20 22:05 ` Bjorn Helgaas
2018-06-29 10:06   ` Meelis Roos
2018-06-29 13:47     ` Bjorn Helgaas
2018-07-06 19:49       ` Meelis Roos [this message]

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=alpine.LRH.2.21.1807062218350.21056@math.ut.ee \
    --to=mroos@linux.ee \
    --cc=helgaas@kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=sparclinux@vger.kernel.org \
    --cc=yinghai@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;
as well as URLs for NNTP newsgroup(s).