From: helgaas@kernel.org (Bjorn Helgaas)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v1 00/25] PCI: Request host bridge window resources
Date: Sat, 18 Jun 2016 13:07:35 -0500 [thread overview]
Message-ID: <20160618180735.GB20504@localhost> (raw)
In-Reply-To: <20160606225630.20936.77349.stgit@bhelgaas-glaptop2.roam.corp.google.com>
On Mon, Jun 06, 2016 at 06:04:44PM -0500, Bjorn Helgaas wrote:
> Several host bridge drivers (designware and all derivatives, iproc,
> xgene, xilinx, and xilinx-nwl) don't request the MMIO and I/O port
> windows they forward downstream to the PCI bus.
>
> That means the PCI core can't request resources for PCI bridge
> windows and PCI BARs.
>
> Several other drivers (altera, generic, mvebu, rcar, tegra) do request
> the windows, but use some duplicated code to do it.
>
> This adds a new devm_request_pci_bus_resources() interface and changes
> these drivers to use it. It also fixes several error paths where we failed
> to free the resource list allocated by of_pci_get_host_bridge_resources().
>
> Tegra guys, please take a look at "PCI: tegra: Remove top-level resource
> from hierarchy" in particular. Removing the top-level resource definitely
> makes /proc/iomem look uglier (although it will look more like that of
> other drivers). A short-term fix could be to include device information in
> the resource name. I think a better long-term fix would be to make the DT
> or platform device core request all the resources from the DT.
>
> Comments welcome. I expect we'll trip over something here, so I marked
> this "v1" and I don't plan to put it into -next for a while.
>
> This is on my pci/host-request-windows branch, which you can pull or view
> at https://git.kernel.org/cgit/linux/kernel/git/helgaas/pci.git/log/?h=pci/host-request-windows
I merged this to my -next branch, so it should show up in linux-next
in a couple days. Let me know if you see any problems.
> Bjorn Helgaas (25):
> PCI: Add devm_request_pci_bus_resources()
> PCI: designware: Free bridge resource list on failure
> PCI: designware: Request host bridge window resources
> PCI: designware: Simplify host bridge window iteration
> PCI: iproc: Request host bridge window resources
> PCI: xgene: Free bridge resource list on failure
> PCI: xgene: Request host bridge window resources
> PCI: xilinx: Free bridge resource list on failure
> PCI: xilinx: Request host bridge window resources
> PCI: xilinx-nwl: Free bridge resource list on failure
> PCI: xilinx-nwl: Request host bridge window resources
> PCI: xilinx-nwl: Use dev_printk() when possible
> PCI: altera: Request host bridge window resources with core function
> PCI: altera: Simplify host bridge window iteration
> PCI: generic: Free resource list close to where it's allocated
> PCI: generic: Request host bridge window resources with core function
> PCI: generic: Simplify host bridge window iteration
> PCI: mvebu: Request host bridge window resources with core function
> PCI: rcar Gen2: Request host bridge window resources
> PCI: rcar: Request host bridge window resources with core function
> PCI: rcar: Simplify host bridge window iteration
> PCI: tegra: Remove top-level resource from hierarchy
> PCI: tegra: Request host bridge window resources with core function
> PCI: versatile: Request host bridge window resources with core function
> PCI: versatile: Simplify host bridge window iteration
>
>
> drivers/pci/bus.c | 29 +++++++++++++++++
> drivers/pci/host/pci-host-common.c | 61 +++++++++++++++---------------------
> drivers/pci/host/pci-mvebu.c | 17 ++++------
> drivers/pci/host/pci-rcar-gen2.c | 4 ++
> drivers/pci/host/pci-tegra.c | 35 +++------------------
> drivers/pci/host/pci-versatile.c | 29 ++++++-----------
> drivers/pci/host/pci-xgene.c | 16 ++++++++-
> drivers/pci/host/pcie-altera.c | 35 ++++++---------------
> drivers/pci/host/pcie-designware.c | 34 +++++++++++++-------
> drivers/pci/host/pcie-iproc.c | 4 ++
> drivers/pci/host/pcie-rcar.c | 33 +++++--------------
> drivers/pci/host/pcie-xilinx-nwl.c | 20 +++++++++---
> drivers/pci/host/pcie-xilinx.c | 16 ++++++++-
> include/linux/pci.h | 5 ++-
> 14 files changed, 170 insertions(+), 168 deletions(-)
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2016-06-18 18:07 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-06 23:04 [PATCH v1 00/25] PCI: Request host bridge window resources Bjorn Helgaas
2016-06-06 23:04 ` [PATCH v1 01/25] PCI: Add devm_request_pci_bus_resources() Bjorn Helgaas
2016-06-06 23:05 ` [PATCH v1 02/25] PCI: designware: Free bridge resource list on failure Bjorn Helgaas
2016-06-06 23:05 ` [PATCH v1 03/25] PCI: designware: Request host bridge window resources Bjorn Helgaas
2016-06-06 23:05 ` [PATCH v1 04/25] PCI: designware: Simplify host bridge window iteration Bjorn Helgaas
2016-06-06 23:05 ` [PATCH v1 05/25] PCI: iproc: Request host bridge window resources Bjorn Helgaas
2016-06-06 23:05 ` [PATCH v1 06/25] PCI: xgene: Free bridge resource list on failure Bjorn Helgaas
2016-06-06 23:05 ` [PATCH v1 07/25] PCI: xgene: Request host bridge window resources Bjorn Helgaas
2016-06-06 23:05 ` [PATCH v1 08/25] PCI: xilinx: Free bridge resource list on failure Bjorn Helgaas
2016-06-06 23:05 ` [PATCH v1 09/25] PCI: xilinx: Request host bridge window resources Bjorn Helgaas
2016-06-06 23:05 ` [PATCH v1 10/25] PCI: xilinx-nwl: Free bridge resource list on failure Bjorn Helgaas
2016-06-06 23:06 ` [PATCH v1 11/25] PCI: xilinx-nwl: Request host bridge window resources Bjorn Helgaas
2016-06-06 23:06 ` [PATCH v1 12/25] PCI: xilinx-nwl: Use dev_printk() when possible Bjorn Helgaas
2016-06-06 23:06 ` [PATCH v1 13/25] PCI: altera: Request host bridge window resources with core function Bjorn Helgaas
2016-06-06 23:06 ` [PATCH v1 14/25] PCI: altera: Simplify host bridge window iteration Bjorn Helgaas
2016-06-06 23:06 ` [PATCH v1 15/25] PCI: generic: Free resource list close to where it's allocated Bjorn Helgaas
2016-06-20 16:56 ` Tyler Baker
2016-06-20 17:22 ` Lorenzo Pieralisi
2016-06-21 15:14 ` Bjorn Helgaas
2016-06-06 23:06 ` [PATCH v1 16/25] PCI: generic: Request host bridge window resources with core function Bjorn Helgaas
2016-06-06 23:06 ` [PATCH v1 17/25] PCI: generic: Simplify host bridge window iteration Bjorn Helgaas
2016-06-06 23:06 ` [PATCH v1 18/25] PCI: mvebu: Request host bridge window resources with core function Bjorn Helgaas
2016-06-06 23:07 ` [PATCH v1 19/25] PCI: rcar Gen2: Request host bridge window resources Bjorn Helgaas
2016-06-21 10:41 ` Geert Uytterhoeven
2016-06-21 14:26 ` Bjorn Helgaas
2016-06-21 15:41 ` Valentine Barshak
2016-06-21 16:49 ` Bjorn Helgaas
2016-06-24 14:19 ` Geert Uytterhoeven
2016-06-06 23:07 ` [PATCH v1 20/25] PCI: rcar: Request host bridge window resources with core function Bjorn Helgaas
2016-06-06 23:07 ` [PATCH v1 21/25] PCI: rcar: Simplify host bridge window iteration Bjorn Helgaas
2016-06-06 23:07 ` [PATCH v1 22/25] PCI: tegra: Remove top-level resource from hierarchy Bjorn Helgaas
2016-06-06 23:07 ` [PATCH v1 23/25] PCI: tegra: Request host bridge window resources with core function Bjorn Helgaas
2016-06-06 23:07 ` [PATCH v1 24/25] PCI: versatile: " Bjorn Helgaas
2016-06-06 23:07 ` [PATCH v1 25/25] PCI: versatile: Simplify host bridge window iteration Bjorn Helgaas
2016-06-07 8:21 ` [PATCH v1 00/25] PCI: Request host bridge window resources Arnd Bergmann
2016-06-07 13:11 ` Bjorn Helgaas
2016-06-07 13:25 ` Arnd Bergmann
2016-06-07 23:34 ` Bjorn Helgaas
2016-06-18 17:58 ` Bjorn Helgaas
2016-06-18 18:07 ` Bjorn Helgaas [this message]
2016-06-21 11:58 ` wangyijing
2016-06-21 15:03 ` Bjorn Helgaas
2016-06-22 1:07 ` wangyijing
2016-07-05 4:37 ` Duc Dang
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=20160618180735.GB20504@localhost \
--to=helgaas@kernel.org \
--cc=linux-arm-kernel@lists.infradead.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;
as well as URLs for NNTP newsgroup(s).