From: Liviu Dudau <Liviu.Dudau@arm.com>
To: Bjorn Helgaas <bhelgaas@google.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Yinghai Lu <yinghai@kernel.org>, Arnd Bergmann <arnd@arndb.de>,
Rob Herring <robh+dt@kernel.org>,
Jason Gunthorpe <jgunthorpe@obsidianresearch.com>,
Catalin Marinas <Catalin.Marinas@arm.com>,
Will Deacon <Will.Deacon@arm.com>,
Russell King <linux@arm.linux.org.uk>,
linux-pci <linux-pci@vger.kernel.org>,
Linus Walleij <linus.walleij@linaro.org>,
Tanmay Inamdar <tinamdar@apm.com>,
Grant Likely <grant.likely@secretlab.ca>,
Sinan Kaya <okaya@codeaurora.org>,
Jingoo Han <jg1.han@samsung.com>,
Kukjin Kim <kgene.kim@samsung.com>,
Suravee Suthikulanit <suravee.suthikulpanit@amd.com>,
linux-arch <linux-arch@vger.kernel.org>,
LKML <linux-kernel@vger.kernel.org>,
Device Tree ML <devicetree@vger.kernel.org>,
LAKML <linux-arm-kernel@lists.infradead.org>,
Jiang Liu <jiang.liu@linux.intel.com>
Subject: Re: [PATCH v13 10/12] PCI: Assign unassigned bus resources in pci_scan_root_bus()
Date: Tue, 30 Sep 2014 09:54:07 +0100 [thread overview]
Message-ID: <20140930085407.GL841@e106497-lin.cambridge.arm.com> (raw)
In-Reply-To: <CAErSpo70t9TMdntjBt+GdTw3FVmMquACQePX8=SKkySPuG3F3Q@mail.gmail.com>
On Tue, Sep 30, 2014 at 12:08:49AM +0100, Bjorn Helgaas wrote:
> On Mon, Sep 29, 2014 at 4:31 PM, Benjamin Herrenschmidt
> <benh@kernel.crashing.org> wrote:
> > On Mon, 2014-09-29 at 15:33 -0600, Bjorn Helgaas wrote:
> >> > Right and on powerpc and others as well. We need to survey existing
> >> > resources. We also have a number of platform things that might need
> >> > to happen before we do the final re-assignment pass.
> >>
> >> That's true today. But I don't know whether it *has* to be this way
> >> forever. On x86, pcibios_resource_survey() throws in E820 information
> >> (which we know long before we do any PCI enumeration) and some IO-APIC
> >> resources (it looks like we also know these before PCI enumeration).
> >> Powerpc has pcibios_reserve_legacy_regions(), but that looks like
> >> mostly stuff that could be done when we find the host bridge, before
> >> we enumerate PCI devices below it.
> >
> > Oh we can probably change that but it's going to be much more work than
> > just moving the assignment into pci_scan_root_bus().
>
> Agreed. It's obvious that we can't apply Liviu's patch as-is.
Thanks everyone for the feedback!
Bjorn, you can drop this patch from the series if you want to add it to
your tree, and the host bridge drivers will have to reimplement pci_scan_root_bus()
for now (most do it already as they need to add msi information as well).
Benjamin, I still have on my ToDo list to convert powerpc. I might not be
able to do it successfully on my own (as I don't understand a lot of the
corner cases) but Bjorn is correct here in that pcibios_reserve_legacy_regions()
will move out of the scanning of the root bus.
>
> > There are also a
> > number of subtle and not-so-subtle bits of code that rely on side
> > effects of the current code such as anything that tests for bus->added
> > or dev->added. Again, nothing we can't sort out eventually but the
> > transition might be a bit painful.
> >
> > We might need to introduce a new flag for platforms converted to the
> > "new style" generalized resource assignment which we can deprecate once
> > everybody has moved over.
>
> There's definitely a lot of work here if we ever want to make this happen.
I know :)
Best regards,
Liviu
>
> Bjorn
>
--
====================
| I would like to |
| fix the world, |
| but they're not |
| giving me the |
\ source code! /
---------------
¯\_(ツ)_/¯
next prev parent reply other threads:[~2014-09-30 8:54 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-29 14:29 [PATCH v13 00/12] Support for creating generic PCI host bridges from DT Liviu Dudau
2014-09-29 14:29 ` Liviu Dudau
2014-09-29 14:29 ` [PATCH v13 01/12] asm-generic/io.h: Fix ioport_map() for !CONFIG_GENERIC_IOMAP Liviu Dudau
2014-09-29 14:29 ` Liviu Dudau
2014-09-29 14:29 ` [PATCH v13 02/12] of/pci: Add pci_register_io_range() and pci_pio_to_address() Liviu Dudau
2014-09-29 14:29 ` Liviu Dudau
2014-09-29 19:20 ` Al Stone
2014-09-29 19:20 ` Al Stone
2014-09-30 8:59 ` Liviu Dudau
2014-09-30 8:59 ` Liviu Dudau
2014-09-29 14:29 ` [PATCH v13 03/12] ARM: Define PCI_IOBASE as the base of virtual PCI IO space Liviu Dudau
2014-09-29 14:29 ` Liviu Dudau
2014-09-29 14:29 ` [PATCH v13 04/12] of/pci: Define of_pci_range_to_resource() only when CONFIG_PCI=y Liviu Dudau
2014-09-29 14:29 ` Liviu Dudau
2014-09-29 14:29 ` [PATCH v13 05/12] of/pci: Move of_pci_range_to_resources() to of/address.c Liviu Dudau
2014-09-29 14:29 ` Liviu Dudau
2014-09-29 14:29 ` [PATCH v13 06/12] of/pci: Fix the conversion of IO ranges into IO resources Liviu Dudau
2014-09-29 14:29 ` Liviu Dudau
2014-09-29 14:29 ` [PATCH v13 07/12] PCI: Add generic domain handling Liviu Dudau
2014-09-29 14:29 ` [PATCH v13 08/12] of/pci: Add pci_get_new_domain_nr() and of_get_pci_domain_nr() Liviu Dudau
2014-09-29 14:29 ` [PATCH v13 09/12] of/pci: Add support for parsing PCI host bridge resources from DT Liviu Dudau
2014-09-29 14:29 ` Liviu Dudau
2014-09-29 14:29 ` [PATCH v13 10/12] PCI: Assign unassigned bus resources in pci_scan_root_bus() Liviu Dudau
2014-09-29 14:29 ` Liviu Dudau
2014-09-29 18:25 ` Yinghai Lu
2014-09-29 18:25 ` Yinghai Lu
2014-09-29 19:06 ` Yinghai Lu
2014-09-29 19:06 ` Yinghai Lu
2014-09-29 21:02 ` Benjamin Herrenschmidt
2014-09-29 21:33 ` Bjorn Helgaas
2014-09-29 22:31 ` Benjamin Herrenschmidt
2014-09-29 23:08 ` Bjorn Helgaas
2014-09-29 23:08 ` Bjorn Helgaas
2014-09-30 8:54 ` Liviu Dudau [this message]
2014-09-30 8:54 ` Liviu Dudau
2014-09-29 14:29 ` [PATCH v13 11/12] PCI: Add pci_remap_iospace() to map bus I/O resources Liviu Dudau
2014-09-29 14:29 ` Liviu Dudau
2014-09-29 14:29 ` [PATCH v13 12/12] arm64: Add architectural support for PCI Liviu Dudau
2014-09-29 14:29 ` Liviu Dudau
2014-09-29 19:43 ` [PATCH v13 00/12] Support for creating generic PCI host bridges from DT Bjorn Helgaas
2014-09-30 10:39 ` Liviu Dudau
2014-09-30 10:39 ` Liviu Dudau
[not found] ` <20140930103942.GO841-2JSQmVVBSi7ZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2014-09-30 16:18 ` Bjorn Helgaas
2014-09-30 16:18 ` Bjorn Helgaas
2014-09-30 16:45 ` Liviu Dudau
2014-09-30 16:45 ` Liviu Dudau
2014-09-30 16:54 ` Liviu Dudau
2014-10-08 7:44 ` Robert Richter
2014-10-08 7:44 ` Robert Richter
2014-10-08 9:13 ` Liviu Dudau
2014-10-08 9:13 ` Liviu Dudau
[not found] ` <20141008091321.GC4652-2JSQmVVBSi7ZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2014-10-08 10:36 ` Robert Richter
2014-10-08 10:36 ` Robert Richter
2014-10-08 11:46 ` Liviu Dudau
2014-10-08 11:46 ` Liviu Dudau
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140930085407.GL841@e106497-lin.cambridge.arm.com \
--to=liviu.dudau@arm.com \
--cc=Catalin.Marinas@arm.com \
--cc=Will.Deacon@arm.com \
--cc=arnd@arndb.de \
--cc=benh@kernel.crashing.org \
--cc=bhelgaas@google.com \
--cc=devicetree@vger.kernel.org \
--cc=grant.likely@secretlab.ca \
--cc=jg1.han@samsung.com \
--cc=jgunthorpe@obsidianresearch.com \
--cc=jiang.liu@linux.intel.com \
--cc=kgene.kim@samsung.com \
--cc=linus.walleij@linaro.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=okaya@codeaurora.org \
--cc=robh+dt@kernel.org \
--cc=suravee.suthikulpanit@amd.com \
--cc=tinamdar@apm.com \
--cc=yinghai@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox