From: "Jingoo Han" <jingoohan1@gmail.com>
To: "'Bjorn Helgaas'" <bhelgaas@google.com>,
"'Lorenzo Pieralisi'" <lorenzo.pieralisi@arm.com>
Cc: "'Thomas Petazzoni'" <thomas.petazzoni@free-electrons.com>,
"'Jayachandran C'" <jchandra@broadcom.com>,
"'Pratyush Anand'" <pratyush.anand@gmail.com>,
"'Russell King'" <linux@arm.linux.org.uk>,
"'Arnd Bergmann'" <arnd@arndb.de>,
"'Gabriele Paoloni'" <gabriele.paoloni@huawei.com>,
"'Marc Zyngier'" <marc.zyngier@arm.com>,
<linux-pci@vger.kernel.org>, "'Duc Dang'" <dhdang@apm.com>,
"'Michal Simek'" <michal.simek@xilinx.com>,
"'Simon Horman'" <horms@verge.net.au>,
"'James Morse'" <james.morse@arm.com>,
"'Tanmay Inamdar'" <tinamdar@apm.com>,
"'Thierry Reding'" <thierry.reding@gmail.com>,
<linux-arm-kernel@lists.infradead.org>,
"'Jason Cooper'" <jason@lakedaemon.net>,
"'Jingoo Han'" <jingoohan1@gmail.com>
Subject: Re: [PATCH v5 2/9] PCI: Add pci_scan_root_bus_msi()
Date: Thu, 6 Aug 2015 23:47:55 +0900 [thread overview]
Message-ID: <000401d0d056$e700d260$b5027720$@com> (raw)
In-Reply-To: <20150804215404.9189.41823.stgit@bhelgaas-glaptop2.roam.corp.google.com>
On Wednesday, August 05, 2015 6:54 AM, Bjorn Helgaas wrote:
>
> From: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
>
> Add a pci_scan_root_bus_msi() interface so an arch can specify the MSI
> controller up front. This removes the need for a pcibios callback to set
> the MSI controller later.
>
> This is not exported because I'd like to replace the variety of "scan root
> bus" interfaces with a single, more extensible interface that can handle
> the MSI controller, domain, pci_ops, resources, etc. I hope this interface
> is temporary.
>
> [bhelgaas: changelog, split into separate patch, move to drivers/pci/pci.h]
> Suggested-by: Russell King <linux@arm.linux.org.uk>
> Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Jingoo Han <jingoohan1@gmail.com>
Best regards,
Jingoo Han
> ---
> drivers/pci/pci.h | 5 +++++
> drivers/pci/probe.c | 14 ++++++++++++--
> 2 files changed, 17 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h
> index 4ff0ff1..1d4c95c 100644
> --- a/drivers/pci/pci.h
> +++ b/drivers/pci/pci.h
> @@ -223,6 +223,11 @@ enum pci_bar_type {
> pci_bar_mem64, /* A 64-bit memory BAR */
> };
>
> +struct pci_bus *pci_scan_root_bus_msi(struct device *parent, int bus,
> + struct pci_ops *ops, void *sysdata,
> + struct list_head *resources,
> + struct msi_controller *msi);
> +
> bool pci_bus_read_dev_vendor_id(struct pci_bus *bus, int devfn, u32 *pl,
> int crs_timeout);
> int pci_setup_device(struct pci_dev *dev);
> diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
> index cefd636..9ff4df0 100644
> --- a/drivers/pci/probe.c
> +++ b/drivers/pci/probe.c
> @@ -2096,8 +2096,9 @@ void pci_bus_release_busn_res(struct pci_bus *b)
> res, ret ? "can not be" : "is");
> }
>
> -struct pci_bus *pci_scan_root_bus(struct device *parent, int bus,
> - struct pci_ops *ops, void *sysdata, struct list_head *resources)
> +struct pci_bus *pci_scan_root_bus_msi(struct device *parent, int bus,
> + struct pci_ops *ops, void *sysdata,
> + struct list_head *resources, struct msi_controller *msi)
> {
> struct resource_entry *window;
> bool found = false;
> @@ -2114,6 +2115,8 @@ struct pci_bus *pci_scan_root_bus(struct device *parent, int bus,
> if (!b)
> return NULL;
>
> + b->msi = msi;
> +
> if (!found) {
> dev_info(&b->dev,
> "No busn resource found for root bus, will use [bus %02x-ff]\n",
> @@ -2128,6 +2131,13 @@ struct pci_bus *pci_scan_root_bus(struct device *parent, int bus,
>
> return b;
> }
> +
> +struct pci_bus *pci_scan_root_bus(struct device *parent, int bus,
> + struct pci_ops *ops, void *sysdata, struct list_head *resources)
> +{
> + return pci_scan_root_bus_msi(parent, bus, ops, sysdata, resources,
> + NULL);
> +}
> EXPORT_SYMBOL(pci_scan_root_bus);
>
> struct pci_bus *pci_scan_bus(int bus, struct pci_ops *ops,
next prev parent reply other threads:[~2015-08-06 14:48 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-04 21:53 [PATCH v5 0/9] ARM: PCI: kill pcibios_msi_controller() Bjorn Helgaas
2015-08-04 21:53 ` [PATCH v5 1/9] ARM/PCI: Replace panic with WARN messages on failures Bjorn Helgaas
2015-08-06 14:46 ` Jingoo Han
2015-08-04 21:54 ` [PATCH v5 2/9] PCI: Add pci_scan_root_bus_msi() Bjorn Helgaas
2015-08-06 14:47 ` Jingoo Han [this message]
2015-08-04 21:54 ` [PATCH v5 3/9] ARM/PCI, designware, xilinx: Use pci_scan_root_bus_msi() Bjorn Helgaas
2015-08-06 14:49 ` Jingoo Han
2015-08-04 21:54 ` [PATCH v5 4/9] ARM/PCI: Remove msi_controller from struct pci_sys_data Bjorn Helgaas
2015-08-06 14:51 ` Jingoo Han
2015-08-04 21:54 ` [PATCH v5 5/9] PCI/MSI: Remove unused pcibios_msi_controller() hook Bjorn Helgaas
2015-08-04 21:54 ` [PATCH v5 6/9] PCI: Drop references acquired by of_parse_phandle() Bjorn Helgaas
2015-08-10 21:39 ` Bjorn Helgaas
2015-08-10 22:19 ` Rob Herring
2015-08-12 11:24 ` Lorenzo Pieralisi
2015-08-04 21:54 ` [PATCH v5 7/9] PCI: xgene: Set msi_controller->dev to platform_device, not pci_bus Bjorn Helgaas
2015-08-04 22:58 ` Bjorn Helgaas
2015-08-04 21:54 ` [PATCH v5 8/9] PCI: xgene: Look for OF "msi-parent" in host controller, not root bus Bjorn Helgaas
2015-08-04 21:54 ` [PATCH v5 9/9] PCI: xgene: Use pci_scan_root_bus_msi() Bjorn Helgaas
2015-08-06 15:26 ` Marc Zyngier
2015-08-06 16:41 ` Ley Foon Tan
2015-08-06 16:53 ` Marc Zyngier
2015-08-07 2:18 ` Ley Foon Tan
2015-08-10 22:04 ` Bjorn Helgaas
2015-08-10 22:28 ` Duc Dang
2015-08-04 23:00 ` [PATCH v5 0/9] ARM: PCI: kill pcibios_msi_controller() Bjorn Helgaas
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='000401d0d056$e700d260$b5027720$@com' \
--to=jingoohan1@gmail.com \
--cc=arnd@arndb.de \
--cc=bhelgaas@google.com \
--cc=dhdang@apm.com \
--cc=gabriele.paoloni@huawei.com \
--cc=horms@verge.net.au \
--cc=james.morse@arm.com \
--cc=jason@lakedaemon.net \
--cc=jchandra@broadcom.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=lorenzo.pieralisi@arm.com \
--cc=marc.zyngier@arm.com \
--cc=michal.simek@xilinx.com \
--cc=pratyush.anand@gmail.com \
--cc=thierry.reding@gmail.com \
--cc=thomas.petazzoni@free-electrons.com \
--cc=tinamdar@apm.com \
/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).