All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Helgaas <bhelgaas@google.com>
To: Marc Zyngier <marc.zyngier@arm.com>
Cc: Lorenzo Pieralisi <Lorenzo.Pieralisi@arm.com>,
	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>,
	"linux-pci@vger.kernel.org" <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>,
	Jingoo Han <jingoohan1@gmail.com>,
	Thierry Reding <thierry.reding@gmail.com>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	Jason Cooper <jason@lakedaemon.net>
Subject: Re: [PATCH v5 9/9] PCI: xgene: Use pci_scan_root_bus_msi()
Date: Mon, 10 Aug 2015 17:04:13 -0500	[thread overview]
Message-ID: <20150810220413.GA13982@google.com> (raw)
In-Reply-To: <55C37C92.1020509@arm.com>

Hi Marc,

On Thu, Aug 06, 2015 at 04:26:10PM +0100, Marc Zyngier wrote:
> On 04/08/15 22:54, Bjorn Helgaas wrote:
> > Previously there was no way to specify the MSI controller when creating a
> > new PCI root bus, so we had to create the bus, set its MSI controller, then
> > scan the bus.  With the new pci_scan_root_bus_msi() interface, we can
> > specify the MSI controller up front and get rid of that intermediate step.
> > 
> > Look up the MSI controller first, then use pci_scan_root_bus_msi() to
> > create and scan the root PCI bus.
> 
> I'm wondering about these XGene patches.
> 
> With the code that is queued for v4.3 in tip/irq/core, the X-Gene MSI
> driver doesn't export a struct msi_controller anymore, and entirely
> relies on IRQ domains to identify to be matched with the actual PCI driver.
> 
> Do you intend this as a cleanup until everything lands in mainline? At
> that point, we'd be able to remove all traces of struct msi_controller
> from this driver.

I haven't been following the IRQ domain stuff or tip/irq/core, so I
really don't know how this relates to that.  I took a look, and I see
8d63bc7beaee ("PCI/MSI: pci-xgene-msi: Get rid of struct
msi_controller"), which removes an msi_controller pointer from
pci-xgene-msi.c, but I don't see any pci-xgene.c changes in
tip/irq/core.

Are you saying that xgene_pcie_msi_enable() will go away eventually?
And the OF "msi-parent" lookup will go away, or at least be moved
elsewhere?  We currently have:

  xgene_pcie_probe_bridge(...)
  {
    ...
    bus = pci_create_root_bus(...);
    xgene_pcie_msi_enable(...);
    pci_scan_child_bus(bus);
    ...
  }

I'd like to get rid of that arch-specific MSI enable stuff because
then we can use a higher level interface, e.g., pci_scan_root_bus(),
and make the X-Gene code slightly simpler.

> Alternatively, we could ask tglx to add an extra patch to the existing
> queue in order to clean up pci-xgene.c (nuking the whole
> xgene_pcie_msi_enable function).

Ah, I guess you *are* saying that xgene_pcie_msi_enable() will go away
eventually.  I don't know how to do that, but apparently you do, so
I'll just drop these X-Gene-related patches for now.

Bjorn

WARNING: multiple messages have this Message-ID (diff)
From: bhelgaas@google.com (Bjorn Helgaas)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v5 9/9] PCI: xgene: Use pci_scan_root_bus_msi()
Date: Mon, 10 Aug 2015 17:04:13 -0500	[thread overview]
Message-ID: <20150810220413.GA13982@google.com> (raw)
In-Reply-To: <55C37C92.1020509@arm.com>

Hi Marc,

On Thu, Aug 06, 2015 at 04:26:10PM +0100, Marc Zyngier wrote:
> On 04/08/15 22:54, Bjorn Helgaas wrote:
> > Previously there was no way to specify the MSI controller when creating a
> > new PCI root bus, so we had to create the bus, set its MSI controller, then
> > scan the bus.  With the new pci_scan_root_bus_msi() interface, we can
> > specify the MSI controller up front and get rid of that intermediate step.
> > 
> > Look up the MSI controller first, then use pci_scan_root_bus_msi() to
> > create and scan the root PCI bus.
> 
> I'm wondering about these XGene patches.
> 
> With the code that is queued for v4.3 in tip/irq/core, the X-Gene MSI
> driver doesn't export a struct msi_controller anymore, and entirely
> relies on IRQ domains to identify to be matched with the actual PCI driver.
> 
> Do you intend this as a cleanup until everything lands in mainline? At
> that point, we'd be able to remove all traces of struct msi_controller
> from this driver.

I haven't been following the IRQ domain stuff or tip/irq/core, so I
really don't know how this relates to that.  I took a look, and I see
8d63bc7beaee ("PCI/MSI: pci-xgene-msi: Get rid of struct
msi_controller"), which removes an msi_controller pointer from
pci-xgene-msi.c, but I don't see any pci-xgene.c changes in
tip/irq/core.

Are you saying that xgene_pcie_msi_enable() will go away eventually?
And the OF "msi-parent" lookup will go away, or at least be moved
elsewhere?  We currently have:

  xgene_pcie_probe_bridge(...)
  {
    ...
    bus = pci_create_root_bus(...);
    xgene_pcie_msi_enable(...);
    pci_scan_child_bus(bus);
    ...
  }

I'd like to get rid of that arch-specific MSI enable stuff because
then we can use a higher level interface, e.g., pci_scan_root_bus(),
and make the X-Gene code slightly simpler.

> Alternatively, we could ask tglx to add an extra patch to the existing
> queue in order to clean up pci-xgene.c (nuking the whole
> xgene_pcie_msi_enable function).

Ah, I guess you *are* saying that xgene_pcie_msi_enable() will go away
eventually.  I don't know how to do that, but apparently you do, so
I'll just drop these X-Gene-related patches for now.

Bjorn

  parent reply	other threads:[~2015-08-10 22:04 UTC|newest]

Thread overview: 50+ 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 ` Bjorn Helgaas
2015-08-04 21:53 ` [PATCH v5 1/9] ARM/PCI: Replace panic with WARN messages on failures Bjorn Helgaas
2015-08-04 21:53   ` Bjorn Helgaas
2015-08-06 14:46   ` Jingoo Han
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-04 21:54   ` Bjorn Helgaas
2015-08-06 14:47   ` Jingoo Han
2015-08-06 14:47     ` Jingoo Han
2015-08-04 21:54 ` [PATCH v5 3/9] ARM/PCI, designware, xilinx: Use pci_scan_root_bus_msi() Bjorn Helgaas
2015-08-04 21:54   ` Bjorn Helgaas
2015-08-06 14:49   ` Jingoo Han
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-04 21:54   ` Bjorn Helgaas
2015-08-06 14:51   ` Jingoo Han
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   ` Bjorn Helgaas
2015-08-04 21:54 ` [PATCH v5 6/9] PCI: Drop references acquired by of_parse_phandle() Bjorn Helgaas
2015-08-04 21:54   ` Bjorn Helgaas
2015-08-10 21:39   ` Bjorn Helgaas
2015-08-10 21:39     ` Bjorn Helgaas
2015-08-10 22:19     ` Rob Herring
2015-08-10 22:19       ` Rob Herring
2015-08-12 11:24   ` Lorenzo Pieralisi
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 21:54   ` Bjorn Helgaas
2015-08-04 22:58   ` 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   ` Bjorn Helgaas
2015-08-04 21:54 ` [PATCH v5 9/9] PCI: xgene: Use pci_scan_root_bus_msi() Bjorn Helgaas
2015-08-04 21:54   ` Bjorn Helgaas
2015-08-06 15:26   ` Marc Zyngier
2015-08-06 15:26     ` Marc Zyngier
2015-08-06 16:41     ` Ley Foon Tan
2015-08-06 16:41       ` Ley Foon Tan
2015-08-06 16:53       ` Marc Zyngier
2015-08-06 16:53         ` Marc Zyngier
2015-08-07  2:18         ` Ley Foon Tan
2015-08-07  2:18           ` Ley Foon Tan
2015-08-10 22:04     ` Bjorn Helgaas [this message]
2015-08-10 22:04       ` Bjorn Helgaas
2015-08-10 22:28       ` Duc Dang
2015-08-10 22:28         ` Duc Dang
2015-08-04 23:00 ` [PATCH v5 0/9] ARM: PCI: kill pcibios_msi_controller() Bjorn Helgaas
2015-08-04 23:00   ` 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=20150810220413.GA13982@google.com \
    --to=bhelgaas@google.com \
    --cc=James.Morse@arm.com \
    --cc=Lorenzo.Pieralisi@arm.com \
    --cc=arnd@arndb.de \
    --cc=dhdang@apm.com \
    --cc=gabriele.paoloni@huawei.com \
    --cc=horms@verge.net.au \
    --cc=jason@lakedaemon.net \
    --cc=jchandra@broadcom.com \
    --cc=jingoohan1@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.