PCI: microchip: Enable building driver as a module
authorDaire McNamara <daire.mcnamara@microchip.com>
Fri, 28 Jul 2023 13:13:56 +0000 (14:13 +0100)
committerLorenzo Pieralisi <lpieralisi@kernel.org>
Tue, 8 Aug 2023 10:55:55 +0000 (12:55 +0200)
commit2e245bc8a2abf61e0adbac99c9f89fa537f67ecd
tree70468a96828a24dd8eef5b752cc012f3a5581c11
parent6d473a5a26136edf55c435a1c433e52910e03926
PCI: microchip: Enable building driver as a module

Enable building driver as a module. The expected use case is the
driver is built as a module, is installed when needed, and cannot be
removed once installed since it is not possible to clean-up
the irq_chip data structures on removal, as described in:

https://lore.kernel.org/linux-pci/87y1wgbah8.wl-maz@kernel.org/

The driver has .suppress_bind_attrs set to true for the same
reasons (ie prevent unbinding, that would leave the kernel
with stale IRQ configuration that cannot be cleaned up).

Link: https://lore.kernel.org/linux-pci/87y1wgbah8.wl-maz@kernel.org/
Link: https://lore.kernel.org/r/20230728131401.1615724-3-daire.mcnamara@microchip.com
Suggested-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Daire McNamara <daire.mcnamara@microchip.com>
Signed-off-by: Lorenzo Pieralisi <lpieralisi@kernel.org>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
drivers/pci/controller/Kconfig
drivers/pci/controller/pcie-microchip-host.c