On Tue, Jul 08, 2014 at 07:41:50PM +0100, Bjorn Helgaas wrote: > On Tue, Jul 8, 2014 at 4:46 AM, Liviu Dudau <Liviu.Dudau@xxxxxxx> 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. Getting arm64 supported *is* my main goal. But like you have stated in your review of v7, you wanted to see another architecture converted as a guarantee of "genericity" (for lack of a better word) for my patches. The one architecture I've set my eyes on is microblaze, and that one uses pci_scan_root_bus() rather than pci_create_root_bus() so I don't have any opportunity to pass the domain number or any additional info (like the sysdata pointer that we were talking about) to the pci_host_bridge structure unless I do this cleanup. Best regards, Liviu > > Bjorn > -- ==================== | I would like to | | fix the world, | | but they're not | | giving me the | \ source code! / --------------- ¯\_(ツ)_/¯ -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html