irqchip/gic-v3-its: Remove artificial dependency on PCI

The GICv3 ITS doesn't really depend on PCI. Only the PCI/MSI
part of it does, and there is no reason not to blow away most
of the irqchip stack because PCI is not selected (though not
selecting PCI seem to be asking for punishment, but hey...).

So let's split the PCI-specific part from the ITS in the Kconfig
file, and let's make that part depend on PCI. Architecture specific
hacks (arch/arm{,64}/Kconfig) will be addressed in a separate patch.

Reported-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>

+9 -1
+7
drivers/irqchip/Kconfig
··· 41 41 42 42 config ARM_GIC_V3_ITS 43 43 bool 44 + select GENERIC_MSI_IRQ_DOMAIN 45 + default ARM_GIC_V3 46 + 47 + config ARM_GIC_V3_ITS_PCI 48 + bool 49 + depends on ARM_GIC_V3_ITS 44 50 depends on PCI 45 51 depends on PCI_MSI 52 + default ARM_GIC_V3_ITS 46 53 47 54 config ARM_NVIC 48 55 bool
+2 -1
drivers/irqchip/Makefile
··· 28 28 obj-$(CONFIG_ARCH_REALVIEW) += irq-gic-realview.o 29 29 obj-$(CONFIG_ARM_GIC_V2M) += irq-gic-v2m.o 30 30 obj-$(CONFIG_ARM_GIC_V3) += irq-gic-v3.o irq-gic-common.o 31 - obj-$(CONFIG_ARM_GIC_V3_ITS) += irq-gic-v3-its.o irq-gic-v3-its-pci-msi.o irq-gic-v3-its-platform-msi.o irq-gic-v4.o 31 + obj-$(CONFIG_ARM_GIC_V3_ITS) += irq-gic-v3-its.o irq-gic-v3-its-platform-msi.o irq-gic-v4.o 32 + obj-$(CONFIG_ARM_GIC_V3_ITS_PCI) += irq-gic-v3-its-pci-msi.o 32 33 obj-$(CONFIG_PARTITION_PERCPU) += irq-partition-percpu.o 33 34 obj-$(CONFIG_HISILICON_IRQ_MBIGEN) += irq-mbigen.o 34 35 obj-$(CONFIG_ARM_NVIC) += irq-nvic.o