[PATCH v2 0/6] irqchip: irq-armada-370-xp: generic MSI infrastructure and assorted fixes
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Wed Jan 27 04:56:29 PST 2016
Hello,
This patch series converts the Armada 370/XP irqchip driver (also used
on Armada 375, 38x and 39x) to the new MSI infrastructure put in place
by Marc. It doesn't bring any functional difference other than using
the right, modern, MSI mechanism, which might ultimately allows Marc to
remove the old way of implementing MSI support.
It has been tested on Armada 38x and Armada XP with an Intel e1000e
NIC and an Intel IGB NIC, both of which use MSI interrupts.
Note that this patch series depends on the patch series from Marc
Zyngier for proper operation (however there is no build dependency) :
https://lkml.org/lkml/2016/1/26/405
Changes since v1:
- Rebased on top of v4.5-rc1, and the latest version of Marc Zyngier
irqchip core fixes, which are needed for this series to work.
- Added Acked-by from Gregory Clement on patch "irqchip:
irq-armada-370-xp: add Kconfig option for the driver"
- Add a new patch that changes hardcoded "16" values by the
appropriate PCI_MSI_DOORBELL_START definition. Noticed by Gregory
Clement.
- Drop the ->irq_enable() and ->irq_disable() callbacks from struct
irq_chip armada_370_xp_msi_irq_chip, as they are not needed, since
we already provide the same callbacks for ->irq_mask() and
->irq_unmask(). Noticed by Marc Zyngier.
- Drop the MSI_FLAG_MULTI_PCI_MSI, since we don't (yet) support
allocating multiple MSIs as once. Noticed by Marc Zyngier.
- Added a separate commit actually implementing the allocation of
multiple MSIs at once, and therefore adds the
MSI_FLAG_MULTI_PCI_MSI.
- Reorder code in armada_370_xp_mpic_of_init() to make a BUG_ON()
really useful. Noticed by Marc Zyngier.
Thanks!
Thomas
Thomas Petazzoni (6):
irqchip: irq-armada-370-xp: add Kconfig option for the driver
irqchip: irq-armada-370-xp: use the generic MSI infrastructure
irqchip: irq-armada-370-xp: use PCI_MSI_DOORBELL_START where
appropriate
irqchip: irq-armada-370-xp: use shorter names for irq_chip
irqchip: irq-armada-370-xp: allow allocation of multiple MSIs
ARM: mvebu: use the ARMADA_370_XP_IRQ option
arch/arm/mach-mvebu/Kconfig | 6 +-
drivers/irqchip/Kconfig | 6 ++
drivers/irqchip/Makefile | 2 +-
drivers/irqchip/irq-armada-370-xp.c | 156 +++++++++++++++---------------------
4 files changed, 78 insertions(+), 92 deletions(-)
--
2.6.4
More information about the linux-arm-kernel
mailing list