[PATCH v3 0/8] irqchip/stm32-exti: split MCU and MPU code, allow module build
From: Antonio Borneo <antonio.borneo@foss.st.com>
Date: 2024-06-20 08:32:35
Also in:
lkml
The file 'irq-stm32-exti.c' contains two drivers: - EXTI for ARMv7m STM32 MCUs; - EXTI for ARMv7a & ARMv8a STM32MPxxx MPUs. The current arrangement causes some issue: - the growing code for MPUs uses precious space on memory constraint MCUs devices; - the driver for MPU cannot be built as module; - there are risks to break one of the two drivers while working on the other. Since there are only 4 minor functions shared among the two drivers: - stm32_exti_set_type(); - stm32_chip_resume(); - stm32_chip_suspend(); - stm32_exti_chip_init(); this series splits the file in two independent files, each containing a single driver. To guarantee bisect-ability, the series first introduces some hook in Kconfig, then splits the file and at the end enables module build on MPU while cleaning-up Kconfig. The symbols in the MPU file are renamed to better match the new name of the driver. The patches are created with 'git format-patch -C' to correctly show the deleted parts and the tiny modifications between the original monolithic file and the two extracted ones. The series is rebased on irq/core branch of tip as it depends on a previous series already queued for v6.10 merge window. v1 -> v2 - fix module dependency from IRQ_DOMAIN_HIERARCHY, detected by kernel test robot [off-list ref] v2 -> v3 - rebase on v6.10-rc1, fixing one conflict Antonio Borneo (8): irqchip/stm32-exti: add CONFIG_STM32MP_EXTI ARM: stm32: use different EXTI driver on ARMv7m and ARMv7a arm64: Kconfig: select STM32MP_EXTI on STM32 platforms irqchip/stm32-exti: split MCU and MPU code irqchip/stm32mp-exti: rename internal symbols irqchip/stm32mp-exti: allow build as module ARM: stm32: allow build irq-stm32mp-exti driver as module arm64: Kconfig: allow build irq-stm32mp-exti driver as module arch/arm/mach-stm32/Kconfig | 2 +- arch/arm64/Kconfig.platforms | 1 - drivers/irqchip/Kconfig | 9 + drivers/irqchip/Makefile | 1 + drivers/irqchip/irq-stm32-exti.c | 670 +------------------------- drivers/irqchip/irq-stm32mp-exti.c | 737 +++++++++++++++++++++++++++++ 6 files changed, 752 insertions(+), 668 deletions(-) create mode 100644 drivers/irqchip/irq-stm32mp-exti.c base-commit: 1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0 -- 2.34.1