On Tue, Jul 08, 2014 at 11:37:37PM +0100, Bjorn Helgaas wrote: > On Tue, Jul 08, 2014 at 11:27:38PM +0100, Liviu Dudau wrote: > > On Tue, Jul 08, 2014 at 10:33:05PM +0100, Bjorn Helgaas wrote: > > > On Tue, Jul 08, 2014 at 11:29:40AM +0100, Liviu Dudau wrote: > > > > On Tue, Jul 08, 2014 at 02:01:04AM +0100, Bjorn Helgaas wrote: > > > > > On Tue, Jul 01, 2014 at 07:43:33PM +0100, Liviu Dudau wrote: > > > > > > ... > > > > > > +int __weak pcibios_fixup_bridge_ranges(struct list_head *resources) > > > > > > +{ > > > > > > + return 0; > > > > > > +} > > > > > > > > > > I'd wait to add this until there's a platform that needs to implement it. > > > > > Splitting it out will make this patch that much smaller and easier to > > > > > understand. > > > > > > > > I need this as this is the default implementation (i.e. do nothing). Otherwise the > > > > link phase will give errors. > > > > > > I meant that you could remove the default implementation *and* the call of > > > it, since it currently does nothing. > > > > True. But it looks like converting Will's pci-host-generic.c driver will make use of this. > > I think we should move this part of the patch to the conversion of > that driver. That will keep related changes grouped together, which > makes them easier to review and easier to backport, e.g., to distro > kernels. > > > > > > > diff --git a/include/linux/pci.h b/include/linux/pci.h > > > > > > index 7e7b939..556dc5f 100644 > > > > > > --- a/include/linux/pci.h > > > > > > +++ b/include/linux/pci.h > > > > > > @@ -402,6 +402,7 @@ struct pci_host_bridge { > > > > > > struct device dev; > > > > > > struct pci_bus *bus; /* root bus */ > > > > > > int domain_nr; > > > > > > + resource_size_t io_base; /* physical address for the start of I/O area */ > > > > > > > > > > I don't see where this is used yet. > > > > > > > > It's used in pci_host_bridge_of_get_ranges() (earlier in this patch). > > > > > > of_create_pci_host_bridge() fills in bridge->io_base, but I don't see > > > anything that ever *reads* bridge->io_base. > > > > Ah, understood. It is used by the host bridge drivers to set their ATR registers to the > > correct CPU address values. > > Same applies here. Except I have no idea which host bridge driver is going to be submitted first. There are at least a couple of public series for HB drivers based on my series plus the one I have yet to submit for my platform. Maybe an associated documentation patch that explains the intended use for io_base could persuade you on the value of keeping the io_base patch here? 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