linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* trouble with PCI: Call pci_read_bridge_bases() from core instead of arch code
@ 2015-09-02  9:51 oe5hpm
  2015-09-02 17:47 ` Lorenzo Pieralisi
  0 siblings, 1 reply; 33+ messages in thread
From: oe5hpm @ 2015-09-02  9:51 UTC (permalink / raw)
  To: CC: Ralf Baechle, CC: James E.J. Bottomley, CC: Michael Ellerman,
	CC: Bjorn Helgaas, CC: Richard Henderson,
	CC: Benjamin Herrenschmidt, CC: David Howells, CC: Russell King,
	CC: Tony Luck, CC: David S. Miller, CC: Ingo Molnar,
	CC: Guenter Roeck, CC: Michal Simek, CC: Chris Zankel,
	Lorenzo Pieralisi, linux-pci

Hi Lorenzo,

today i tried to boot up the most recent vanilla kernel on my
Freescale i.mx6 board.
I ran into trouble regarding PCI enumeration.

[    0.431949] imx6q-pcie 1ffc000.pcie: PCI host bridge to bus 0000:00
[    0.431976] pci_bus 0000:00: root bus resource [io  0x1000-0xffff]
[    0.431996] pci_bus 0000:00: root bus resource [mem 0x01000000-0x01efffff]
[    0.432022] pci_bus 0000:00: root bus resource [bus 00-ff]
[    0.433271] PCI: bus0: Fast back to back transfers disabled
[    0.433629] pci 0000:00:00.0: PCI bridge to [bus 01-ff]
[    0.435181] PCI: bus1: Fast back to back transfers disabled
[    0.435564] pci 0000:00:00.0: BAR 0: assigned [mem 0x01000000-0x010fffff]
[    0.435593] pci 0000:00:00.0: BAR 8: no space for [mem size 0x01000000]
[    0.435613] pci 0000:00:00.0: BAR 8: failed to assign [mem size 0x01000000]
[    0.435635] pci 0000:00:00.0: BAR 9: assigned [mem
0x01100000-0x011fffff pref]
[    0.435655] pci 0000:00:00.0: BAR 6: assigned [mem
0x01200000-0x0120ffff pref]
[    0.435676] pci 0000:00:00.0: BAR 7: assigned [io  0x1000-0x1fff]
[    0.435705] pci 0000:01:00.0: BAR 2: no space for [mem size 0x00200000]
[    0.435722] pci 0000:01:00.0: BAR 2: failed to assign [mem size 0x00200000]
[    0.435739] pci 0000:01:00.0: BAR 1: no space for [mem size 0x00004000]
[    0.435754] pci 0000:01:00.0: BAR 1: failed to assign [mem size 0x00004000]
[    0.435770] pci 0000:01:00.0: BAR 0: no space for [mem size 0x00000100]
[    0.435786] pci 0000:01:00.0: BAR 0: failed to assign [mem size 0x00000100]
[    0.435804] pci 0000:00:00.0: PCI bridge to [bus 01]
[    0.435826] pci 0000:00:00.0:   bridge window [io  0x1000-0x1fff]
[    0.435855] pci 0000:00:00.0:   bridge window [mem
0x01100000-0x011fffff pref]

there are several fails assigning memory ressources to pci-devices.

i bisect down this trouble to commit id:
dff22d2054b5dbb1889f20c03959dd0c494fab8c : PCI: Call
pci_read_bridge_bases() from core instead of arch code

For testing purpose i've reverted this commit on a local branch and
everythings works fine, as before.

[    0.431976] imx6q-pcie 1ffc000.pcie: PCI host bridge to bus 0000:00
[    0.432004] pci_bus 0000:00: root bus resource [io  0x1000-0xffff]
[    0.432023] pci_bus 0000:00: root bus resource [mem 0x01000000-0x01efffff]
[    0.432047] pci_bus 0000:00: root bus resource [bus 00-ff]
[    0.433302] PCI: bus0: Fast back to back transfers disabled
[    0.435122] PCI: bus1: Fast back to back transfers disabled
[    0.435504] pci 0000:00:00.0: BAR 0: assigned [mem 0x01000000-0x010fffff]
[    0.435535] pci 0000:00:00.0: BAR 8: assigned [mem 0x01100000-0x013fffff]
[    0.435557] pci 0000:00:00.0: BAR 6: assigned [mem
0x01400000-0x0140ffff pref]
[    0.435585] pci 0000:01:00.0: BAR 2: assigned [mem 0x01200000-0x013fffff]
[    0.435626] pci 0000:01:00.0: BAR 1: assigned [mem 0x01100000-0x01103fff]
[    0.435665] pci 0000:01:00.0: BAR 0: assigned [mem 0x01104000-0x011040ff]
[    0.435703] pci 0000:00:00.0: PCI bridge to [bus 01]
[    0.435728] pci 0000:00:00.0:   bridge window [mem 0x01100000-0x013fffff]

Further i can break down the failure to "drivers/pci/probe.c" line #924.
If i comment out the "pci_read_bridge_bases(child);" also everything works well.

I have to confess, that my knowledge about the whole PCI thing in the
kernel is not very deep, so it is not possible for me to figure out
what is going wrong.

maybe some of you can help?

best regards,
Hannes

^ permalink raw reply	[flat|nested] 33+ messages in thread

end of thread, other threads:[~2015-09-16  8:58 UTC | newest]

Thread overview: 33+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-09-02  9:51 trouble with PCI: Call pci_read_bridge_bases() from core instead of arch code oe5hpm
2015-09-02 17:47 ` Lorenzo Pieralisi
2015-09-02 20:32   ` Bjorn Helgaas
2015-09-03 10:01     ` Lorenzo Pieralisi
2015-09-03 16:21       ` Bjorn Helgaas
2015-09-03 17:57         ` Lorenzo Pieralisi
2015-09-04 14:19         ` Lorenzo Pieralisi
2015-09-04 16:00           ` Yinghai Lu
2015-09-04 16:44             ` Lorenzo Pieralisi
2015-09-04 23:53               ` Yinghai Lu
2015-09-07  9:12                 ` Lorenzo Pieralisi
2015-09-14 10:09                   ` Lorenzo Pieralisi
2015-09-14 16:05                     ` Yinghai Lu
2015-09-14 16:28                       ` Lorenzo Pieralisi
2015-09-14 17:36                         ` Yinghai Lu
2015-09-14 23:58                           ` Yinghai Lu
2015-09-15  9:46                             ` Lorenzo Pieralisi
2015-09-15 15:57                               ` Bjorn Helgaas
2015-09-15 16:30                                 ` Lorenzo Pieralisi
2015-09-15 16:51                                   ` Guenter Roeck
2015-09-15 19:25                                     ` Bjorn Helgaas
2015-09-15 20:26                                       ` Yinghai Lu
2015-09-16  8:58                                       ` Lorenzo Pieralisi
2015-09-15 20:17                                     ` Yinghai Lu
2015-09-15 21:07                                       ` Guenter Roeck
2015-09-15 21:12                                         ` Yinghai Lu
2015-09-09 11:32                 ` Lorenzo Pieralisi
2015-09-09 16:59                   ` Yinghai Lu
2015-09-09 17:22                     ` Yinghai Lu
2015-09-09 17:38                       ` Lorenzo Pieralisi
2015-09-03 10:03     ` oe5hpm
2015-09-03 10:30       ` oe5hpm
2015-09-03 10:51         ` Lorenzo Pieralisi

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).