Hello Lorenzo, Bjorn and Marc, this is v2 of fourth batch of fixes for the Aardvark PCIe controller driver. Stuff is converted to new interrupt APIs and recommendations from Marc. Marc, could you look at these and acknowledge or comment? This series mainly fixes and adds support for stuff around interrupts: the most important thing is fixing MSI support. The series is rebased on helgaas/next. Marek Changes since v1: - added patches converting irq_chip and msi_domain_info structures into static driver structures, instead of creating them dynamically, as suggested by Marc - added some small patches that should be easy to review - conversion to use constants from linux/pci.h instead of ad-hoc constants int patch 1 - use dev_fwnode(dev) instead of of_node_to_fwnode(dev->of_node) in patch 8 - fix of a comment in patch 22 Marek Behún (6): PCI: aardvark: Make MSI irq_chip structures static driver structures PCI: aardvark: Make msi_domain_info structure a static driver structure PCI: aardvark: Use dev_fwnode() instead of of_node_to_fwnode(dev->of_node) PCI: aardvark: Drop __maybe_unused from advk_pcie_disable_phy() PCI: aardvark: Update comment about link going down after link-up PCI: aardvark: Make main irq_chip structure a static driver structure Pali Rohár (17): PCI: aardvark: Replace custom PCIE_CORE_INT_* macros with PCI_INTERRUPT_* PCI: aardvark: Fix reading MSI interrupt number PCI: aardvark: Fix support for MSI interrupts PCI: aardvark: Rewrite IRQ code to chained IRQ handler PCI: aardvark: Check return value of generic_handle_domain_irq() when processing INTx IRQ PCI: aardvark: Refactor unmasking summary MSI interrupt PCI: aardvark: Add support for masking MSI interrupts PCI: aardvark: Fix setting MSI address PCI: aardvark: Enable MSI-X support PCI: aardvark: Add support for ERR interrupt on emulated bridge PCI: aardvark: Fix reading PCI_EXP_RTSTA_PME bit on emulated bridge PCI: aardvark: Optimize writing PCI_EXP_RTCTL_PMEIE and PCI_EXP_RTSTA_PME on emulated bridge PCI: aardvark: Add support for PME interrupts PCI: aardvark: Fix support for PME requester on emulated bridge PCI: aardvark: Use separate INTA interrupt for emulated root bridge PCI: aardvark: Remove irq_mask_ack callback for INTx interrupts PCI: aardvark: Don't mask irq when mapping drivers/pci/controller/pci-aardvark.c | 415 +++++++++++++++++--------- 1 file changed, 281 insertions(+), 134 deletions(-) -- 2.34.1