linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: jiang.liu@linux.intel.com (Jiang Liu)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC Patch V1 00/12] Reorganize struct msi_desc to prepare for support of generic MSI
Date: Thu,  9 Jul 2015 16:00:35 +0800	[thread overview]
Message-ID: <1436428847-8886-1-git-send-email-jiang.liu@linux.intel.com> (raw)

Recently Marc Zyngier <marc.zyngier@arm.com> has posted a patch set at
https://lkml.org/lkml/2015/7/7/712
to enhance PCI MSI code to support generic MSI.

This is a companion patch set to refine struct msi_desc and related data
structures to support generic MSI, and it would be better to combined with
Marc's patch set.  It's also requested by
Stuart Yoder <stuart.yoder@freescale.com>

It first introduces a helper function msi_desc_to_pci_sysdata(), and
convert current PCI drivers to use helper functions to access fields
in struct msi_desc.
Then it moves msi_list from struct pci_dev into struct device and
refines struct msi_desc.
At last it moves alloc_msi_entry() into kernel/irq/msi.c for reuse.

Currently msi_desc_to_pci_sysdata() and msi_desc_to_pci_dev() are
implemented as normal functions instead of inlines to avoid header file
inclusion issue. If inlined version is preferred for performance, we could
move all of first_pci_msi_entry, for_each_pci_msi_entry, msi_desc_to_pci_dev
and msi_desc_to_pci_sysdata from linxu/kernel/msi.h into linux/kernel/pci.h.

This patch set is based on v4.2-rc1 and passes 0day test suite. You
may access the code at:
https://github.com/jiangliu/linux.git msi_desc_v1

Thanks!
Gerry

Jiang Liu (12):
  PCI: Add helper function msi_desc_to_pci_sysdata()
  MIPS, PCI: Use for_pci_msi_entry() to access MSI device list
  PowerPC, PCI: Use for_pci_msi_entry() to access MSI device list
  s390/pci: Use for_pci_msi_entry() to access MSI device list
  x86, PCI: Use for_pci_msi_entry() to access MSI device list
  PCI: Use for_pci_msi_entry() to access MSI device list
  sparc, PCI: Use helper functions to access fields in struct msi_desc
  PCI: Use helper functions to access fields in struct msi_desc
  genirq: Move msi_list from struct pci_dev to struct device
  genirq, PCI: Store 'struct device *' instead 'struct pci_dev *' in
    struct msi_desc
  genirq, PCI: Reorginize struct msi_desc to prepare for support of
    generic MSI
  genirq, PCI: Move alloc_msi_entry() from PCI MSI code into generic
    MSI code

 arch/mips/pci/msi-octeon.c             |    2 +-
 arch/powerpc/platforms/cell/axon_msi.c |    6 +--
 arch/powerpc/platforms/pasemi/msi.c    |    4 +-
 arch/powerpc/platforms/powernv/pci.c   |    4 +-
 arch/powerpc/platforms/pseries/msi.c   |    6 +--
 arch/powerpc/sysdev/fsl_msi.c          |    4 +-
 arch/powerpc/sysdev/mpic_u3msi.c       |    4 +-
 arch/powerpc/sysdev/ppc4xx_hsta_msi.c  |    4 +-
 arch/powerpc/sysdev/ppc4xx_msi.c       |    4 +-
 arch/s390/pci/pci.c                    |    6 +--
 arch/sparc/kernel/pci.c                |    2 +-
 arch/x86/pci/xen.c                     |    8 ++--
 drivers/base/core.c                    |    3 ++
 drivers/pci/host/pci-keystone-dw.c     |    6 +--
 drivers/pci/host/pcie-designware.c     |    4 +-
 drivers/pci/host/pcie-xilinx.c         |   12 ++---
 drivers/pci/msi.c                      |   82 +++++++++++++++++---------------
 drivers/pci/xen-pcifront.c             |    2 +-
 include/linux/device.h                 |    4 ++
 include/linux/msi.h                    |   55 +++++++++++----------
 include/linux/pci.h                    |    1 -
 kernel/irq/msi.c                       |   17 +++++++
 22 files changed, 136 insertions(+), 104 deletions(-)

-- 
1.7.10.4

             reply	other threads:[~2015-07-09  8:00 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-09  8:00 Jiang Liu [this message]
2015-07-09  8:00 ` [RFC Patch V1 01/12] PCI: Add helper function msi_desc_to_pci_sysdata() Jiang Liu
2015-07-09  8:00 ` [RFC Patch V1 02/12] MIPS, PCI: Use for_pci_msi_entry() to access MSI device list Jiang Liu
2015-07-09 11:03   ` Sergei Shtylyov
2015-07-09  8:00 ` [RFC Patch V1 03/12] PowerPC, " Jiang Liu
2015-07-09  8:00 ` [RFC Patch V1 04/12] s390/pci: " Jiang Liu
2015-07-13 12:47   ` Sebastian Ott
2015-07-09  8:00 ` [RFC Patch V1 05/12] x86, PCI: " Jiang Liu
2015-07-09 19:07   ` Konrad Rzeszutek Wilk
2015-07-09  8:00 ` [RFC Patch V1 06/12] " Jiang Liu
2015-07-09 19:08   ` Konrad Rzeszutek Wilk
2015-07-09  8:00 ` [RFC Patch V1 07/12] sparc, PCI: Use helper functions to access fields in struct msi_desc Jiang Liu
2015-07-09  8:00   ` David Miller
2015-07-09  8:00 ` [RFC Patch V1 08/12] " Jiang Liu
2015-07-12 11:18   ` Jingoo Han
2015-07-09  8:00 ` [RFC Patch V1 09/12] genirq: Move msi_list from struct pci_dev to struct device Jiang Liu
2015-07-10  0:19   ` Paul Gortmaker
2015-07-21 22:02     ` Thomas Gleixner
2015-07-09  8:00 ` [RFC Patch V1 10/12] genirq, PCI: Store 'struct device *' instead 'struct pci_dev *' in struct msi_desc Jiang Liu
2015-07-09  8:00 ` [RFC Patch V1 11/12] genirq, PCI: Reorginize struct msi_desc to prepare for support of generic MSI Jiang Liu
2015-07-10 12:41   ` Marc Zyngier
2015-07-09  8:00 ` [RFC Patch V1 12/12] genirq, PCI: Move alloc_msi_entry() from PCI MSI code into generic MSI code Jiang Liu
2015-07-10  1:41 ` [RFC Patch V1 00/12] Reorganize struct msi_desc to prepare for support of generic MSI Yijing Wang
2015-07-10 12:54 ` Marc Zyngier
2015-07-21  8:31 ` Thomas Gleixner
2015-07-21 13:30 ` Bjorn Helgaas
2015-07-21 15:51   ` Thomas Gleixner

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=1436428847-8886-1-git-send-email-jiang.liu@linux.intel.com \
    --to=jiang.liu@linux.intel.com \
    --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).