On Thu, Jul 10, 2014 at 11:36:10PM +0100, Bjorn Helgaas wrote:
> On Thu, Jul 10, 2014 at 3:47 AM, Liviu Dudau <[email protected]> wrote:
>
> > I don't see a way out of adding new PCI interfaces if we want to have
> > support in
> > the PCI framework for unifying existing architectures. Of course, there is
> > the painful
> > alternative of changing the existing APIs and fixing arches in one go, but
> > like you've
> > said is going to be messy. I don't think I (or the people and companies
> > wanting PCIe
> > on arm64) should cop out and pick a quick fix that adds sysdata structure
> > into arm64
> > just to avoid new APIs, as this is not going to help anyone in long term.
> > What I can
> > do is to create a set of parallel APIs for pci_{scan,create}_root_bus()
> > that take
> > a pci_host_bridge pointer and start converting architectures one by one to
> > that API
> > while deprecating the existing one. That way we can add arm64 easily as it
> > would be
> > the first architecture to use new code without breaking things *and* we
> > provide a
> > migration path.
>
> A lot of the v7 discussion was about pci_register_io_range(). I
> apologize, because I think I really derailed things there and it was
> unwarranted. Arnd was right that migrating other arches should be a
> separate effort. I *think* I was probably thinking about the proposal
> of adding pci_create_root_bus_in_domain(), and my reservations about
> that got transferred to the pci_register_io_range() discussion. In
> any case, I'm completely fine with pci_register_io_range() now.
>
> Most of the rest of the v7 discussion was about "Introduce a domain
> number for pci_host_bridge." I think we should add arm64 using the
> existing pci_scan_root_bus() and keep the domain number in the arm64
> sysdata structure like every other arch does. Isn't that feasible?
> We can worry about domain unification later.
Thanks!
I'm really not that keen to add sysdata support in the arch code as it
requires initialisation code that I have tried to eliminate. What I'm
going to suggest for my v9 is a parallel set of APIs that arm64 will
be the first to use without changing the existing pci_{scan,create}_bus()
functions and then the conversion process will migrate arches to the new API.
Best regards,
Liviu
>
> I haven't followed closely enough to know what other objections people had.
>
> 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 linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/