Re: [PATCH 03/13] PCI: Add busn_res tracking in core
From: Yinghai Lu <yinghai@kernel.org>
Date: 2012-01-30 18:39:33
Also in:
linux-pci, lkml
On Mon, Jan 30, 2012 at 7:35 AM, Bjorn Helgaas [off-list ref] wrote:
On Fri, Jan 27, 2012 at 6:49 PM, Yinghai Lu [off-list ref] wrote:quoted
update pci_scan_root_bus, and pci_scan_bus to insert root bus busn into iobusn_resource tree. -struct pci_bus * __devinit pci_scan_root_bus(struct device *parent, int bus, - struct pci_ops *ops, void *sysdata, struct list_head *resources) +struct pci_bus * __devinit pci_scan_root_bus_max(struct device *parent, int bus, + int bus_max, struct pci_ops *ops, void *sysdata, + struct list_head *resources)We are adding "scan root bus" interfaces at an alarming rate (I'm responsible for most of them, so I'm not blaming you :)). Could we get away without adding this one by just adding a bus number resource to the "resources" list? For example, then an arch could do: LIST_HEAD(resources); pci_add_resource(resources, bus_window); pci_add_resource(resources, mem_window); pci_add_resource(resources, io_window); pci_scan_root_bus(..., resources); If pci_scan_root_bus() didn't find a bus number resource in the list, it could fall back to a default max_bus of 255.
this pci_scan_root_bus_max is only used for x86 code. and should be fixed later. Yinghai