Thread (50 messages) 50 messages, 7 authors, 2017-06-02
STALE3297d

[RFC/RFT PATCH 03/18] PCI: Introduce pci_scan_root_bus_bridge()

From: arnd@arndb.de (Arnd Bergmann)
Date: 2017-05-02 19:36:41
Also in: linux-pci

On Tue, May 2, 2017 at 7:15 PM, Lorenzo Pieralisi
[off-list ref] wrote:
On Fri, Apr 28, 2017 at 02:28:38PM +0200, Arnd Bergmann wrote:
quoted
On Wed, Apr 26, 2017 at 1:17 PM, Lorenzo Pieralisi
[off-list ref] wrote:

Good idea, yes. To avoid growing the number of interfaces too
much, should we change the existing users of pci_register_host_bridge
in host drivers over to this entry point, and make the other one
local to probe.c then?
Yes, the problem is that there are drivers (ie pcie-iproc.c) that
require the struct pci_bus (created by pci_register_host_bridge())
to fiddle with it to check link status and THEN scan the bus (so
the pci_register_host_bridge() call can't be embedded in the scan
interface - the driver requires struct pci_bus for pci_ops to work
before scanning the bus itself).

I will see how I can accommodate this change because you definitely
have a point.
The obvious answer for that particular problem would be a link_check()
callback in the bridge operations. I think that would also fit in well with
the dw_pcie driver that has some private infrastructure for it. I don't
know if that callback is sufficient to solve all related problems though.

       Arnd
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help