obj-$(CONFIG_SOC_BUS) += soc.o
 obj-$(CONFIG_PINCTRL) += pinctrl.o
 obj-$(CONFIG_DEV_COREDUMP) += devcoredump.o
-obj-$(CONFIG_GENERIC_MSI_IRQ_DOMAIN) += platform-msi.o
+obj-$(CONFIG_GENERIC_MSI_IRQ) += platform-msi.o
 obj-$(CONFIG_GENERIC_ARCH_TOPOLOGY) += arch_topology.o
 obj-$(CONFIG_GENERIC_ARCH_NUMA) += arch_numa.o
 obj-$(CONFIG_ACPI) += physical_location.o
 
 config FSL_MC_BUS
        bool "QorIQ DPAA2 fsl-mc bus driver"
        depends on OF && (ARCH_LAYERSCAPE || (COMPILE_TEST && (ARM || ARM64 || X86_LOCAL_APIC || PPC)))
-       select GENERIC_MSI_IRQ_DOMAIN
+       select GENERIC_MSI_IRQ
        help
          Driver to enable the bus infrastructure for the QorIQ DPAA2
          architecture.  The fsl-mc bus driver handles discovery of
 
        select DMA_ENGINE
        select DMA_ENGINE_RAID
        select ASYNC_TX_ENABLE_CHANNEL_SWITCH
-       select GENERIC_MSI_IRQ_DOMAIN
+       select GENERIC_MSI_IRQ
        help
          Enable support for the Marvell version 2 XOR engine.
 
 
        return hidma_ll_inthandler(chirq, lldev);
 }
 
-#ifdef CONFIG_GENERIC_MSI_IRQ_DOMAIN
+#ifdef CONFIG_GENERIC_MSI_IRQ
 static irqreturn_t hidma_chirq_handler_msi(int chirq, void *arg)
 {
        struct hidma_lldev **lldevp = arg;
        return device_create_file(dev->ddev.dev, dev->chid_attrs);
 }
 
-#ifdef CONFIG_GENERIC_MSI_IRQ_DOMAIN
+#ifdef CONFIG_GENERIC_MSI_IRQ
 static void hidma_write_msi_msg(struct msi_desc *desc, struct msi_msg *msg)
 {
        struct device *dev = msi_desc_to_dev(desc);
 
 static void hidma_free_msis(struct hidma_dev *dmadev)
 {
-#ifdef CONFIG_GENERIC_MSI_IRQ_DOMAIN
+#ifdef CONFIG_GENERIC_MSI_IRQ
        struct device *dev = dmadev->ddev.dev;
        int i, virq;
 
 static int hidma_request_msi(struct hidma_dev *dmadev,
                             struct platform_device *pdev)
 {
-#ifdef CONFIG_GENERIC_MSI_IRQ_DOMAIN
+#ifdef CONFIG_GENERIC_MSI_IRQ
        int rc, i, virq;
 
        rc = platform_msi_domain_alloc_irqs(&pdev->dev, HIDMA_MSI_INTS,
 
        depends on ARM64
        select IOMMU_API
        select IOMMU_IO_PGTABLE_LPAE
-       select GENERIC_MSI_IRQ_DOMAIN
+       select GENERIC_MSI_IRQ
        help
          Support for implementations of the ARM System MMU architecture
          version 3 providing translation support to a PCIe root complex.
 
 
 config ARM_GIC_V3_ITS
        bool
-       select GENERIC_MSI_IRQ_DOMAIN
+       select GENERIC_MSI_IRQ
        default ARM_GIC_V3
 
 config ARM_GIC_V3_ITS_PCI
 
 config MVEBU_ODMI
        bool
-       select GENERIC_MSI_IRQ_DOMAIN
+       select GENERIC_MSI_IRQ
 
 config MVEBU_PIC
        bool
        default m if ARCH_MXC
        select IRQ_DOMAIN
        select IRQ_DOMAIN_HIERARCHY
-       select GENERIC_MSI_IRQ_DOMAIN
+       select GENERIC_MSI_IRQ
        help
          Provide a driver for the i.MX Messaging Unit block used as a
          CPU-to-CPU MSI controller. This requires a specially crafted DT
 
        tristate "Broadcom FlexRM Mailbox"
        depends on ARM64
        depends on ARCH_BCM_IPROC || COMPILE_TEST
-       select GENERIC_MSI_IRQ_DOMAIN
+       select GENERIC_MSI_IRQ
        default m if ARCH_BCM_IPROC
        help
          Mailbox implementation of the Broadcom FlexRM ring manager,
 
 
 config PCI_MSI
        bool "Message Signaled Interrupts (MSI and MSI-X)"
-       select GENERIC_MSI_IRQ_DOMAIN
        select GENERIC_MSI_IRQ
        help
           This allows device drivers to enable MSI (Message Signaled
 
 config ARM_SMMU_V3_PMU
         tristate "ARM SMMUv3 Performance Monitors Extension"
         depends on (ARM64 && ACPI) || (COMPILE_TEST && 64BIT)
-        depends on GENERIC_MSI_IRQ_DOMAIN
+        depends on GENERIC_MSI_IRQ
           help
           Provides support for the ARM SMMUv3 Performance Monitor Counter
           Groups (PMCG), which provide monitoring of transactions passing
 
 
 config TI_SCI_INTA_MSI_DOMAIN
        bool
-       select GENERIC_MSI_IRQ_DOMAIN
+       select GENERIC_MSI_IRQ
        help
          Driver to enable Interrupt Aggregator specific MSI Domain.
 
 
 #include <linux/types.h>
 
-#ifdef CONFIG_GENERIC_MSI_IRQ_DOMAIN
+#ifdef CONFIG_GENERIC_MSI_IRQ
 
 #ifndef NUM_MSI_ALLOC_SCRATCHPAD_REGS
 # define NUM_MSI_ALLOC_SCRATCHPAD_REGS 2
 
 #define GENERIC_MSI_DOMAIN_OPS         1
 
-#endif /* CONFIG_GENERIC_MSI_IRQ_DOMAIN */
+#endif /* CONFIG_GENERIC_MSI_IRQ */
 
 #endif
 
  * @data:      Pointer to MSI device data
  */
 struct dev_msi_info {
-#ifdef CONFIG_GENERIC_MSI_IRQ_DOMAIN
-       struct irq_domain       *domain;
-#endif
 #ifdef CONFIG_GENERIC_MSI_IRQ
+       struct irq_domain       *domain;
        struct msi_device_data  *data;
 #endif
 };
 
 static inline struct irq_domain *dev_get_msi_domain(const struct device *dev)
 {
-#ifdef CONFIG_GENERIC_MSI_IRQ_DOMAIN
+#ifdef CONFIG_GENERIC_MSI_IRQ
        return dev->msi.domain;
 #else
        return NULL;
 
 static inline void dev_set_msi_domain(struct device *dev, struct irq_domain *d)
 {
-#ifdef CONFIG_GENERIC_MSI_IRQ_DOMAIN
+#ifdef CONFIG_GENERIC_MSI_IRQ
        dev->msi.domain = d;
 #endif
 }
 
 
 union gpio_irq_fwspec {
        struct irq_fwspec       fwspec;
-#ifdef CONFIG_GENERIC_MSI_IRQ_DOMAIN
+#ifdef CONFIG_GENERIC_MSI_IRQ
        msi_alloc_info_t        msiinfo;
 #endif
 };
 
 #ifdef CONFIG_GENERIC_MSI_IRQ
 void get_cached_msi_msg(unsigned int irq, struct msi_msg *msg);
 #else
-static inline void get_cached_msi_msg(unsigned int irq, struct msi_msg *msg)
-{
-}
+static inline void get_cached_msi_msg(unsigned int irq, struct msi_msg *msg) { }
 #endif
 
 typedef void (*irq_write_msi_msg_t)(struct msi_desc *desc,
  */
 bool arch_restore_msi_irqs(struct pci_dev *dev);
 
-#ifdef CONFIG_GENERIC_MSI_IRQ_DOMAIN
+#ifdef CONFIG_GENERIC_MSI_IRQ
 
 #include <linux/irqhandler.h>
 
 void platform_msi_device_domain_free(struct irq_domain *domain, unsigned int virq,
                                     unsigned int nvec);
 void *platform_msi_get_host_data(struct irq_domain *domain);
-#endif /* CONFIG_GENERIC_MSI_IRQ_DOMAIN */
+#endif /* CONFIG_GENERIC_MSI_IRQ */
 
 /* PCI specific interfaces */
 #ifdef CONFIG_PCI_MSI
 
        depends on SMP
        select IRQ_DOMAIN_HIERARCHY
 
-# Generic MSI interrupt support
-config GENERIC_MSI_IRQ
-       bool
-
 # Generic MSI hierarchical interrupt domain support
-config GENERIC_MSI_IRQ_DOMAIN
+config GENERIC_MSI_IRQ
        bool
        select IRQ_DOMAIN_HIERARCHY
-       select GENERIC_MSI_IRQ
 
 config IRQ_MSI_IOMMU
        bool
 
 static inline void msi_sysfs_remove_desc(struct device *dev, struct msi_desc *desc) { }
 #endif /* !CONFIG_SYSFS */
 
-#ifdef CONFIG_GENERIC_MSI_IRQ_DOMAIN
 static int __msi_domain_alloc_irqs(struct irq_domain *domain, struct device *dev, int nvec);
 static void __msi_domain_free_irqs(struct irq_domain *domain, struct device *dev);
 
 {
        return (struct msi_domain_info *)domain->host_data;
 }
-
-#endif /* CONFIG_GENERIC_MSI_IRQ_DOMAIN */