On Tue, Jul 8, 2014 at 4:46 AM, Liviu Dudau Liviu.Dudau@arm.com wrote:
On Tue, Jul 08, 2014 at 01:59:54AM +0100, Bjorn Helgaas wrote:
I wonder if it would help to make a weak pci_domain_nr() function that returns "bridge->domain_nr". Then each arch could individually drop its pci_domain_nr() definition as it was converted, e.g., something like this:
- Convert every arch pci_domain_nr() from a #define to a non-inline function
- Add bridge.domain_nr, initialized from pci_domain_nr()
- Add a weak generic pci_domain_nr() that returns bridge.domain_nr
- Add a way to create a host bridge in a specified domain, so we can initialize bridge.domain_nr without using pci_domain_nr()
- Convert each arch to use the new creation mechanism and drop its pci_domain_nr() implementation
I will try to propose a patch implementing this.
I think this is more of an extra credit, cleanup sort of thing. I don't think it advances your primary goal of (I think) getting arm64 PCI support in. So my advice is to not worry about unifying domain handling until later.
Bjorn