[PATCH v2 00/11] irqchip/stm32-exti: add irq map in DT and STM32MP25 support

Antonio Borneo antonio.borneo at foss.st.com
Mon Apr 15 06:49:15 PDT 2024


This series adds support for STM32MP25 to stm32-exti driver.
The STM32MP25 includes two instances of the EXTI irq controller,
each mapping their EXTI events to different GIC irq sets.

In the current driver code, the mapping between events and irqs
would require adding to the driver two new compatibles and two
new mapping tables for this new SoC. This way of working starts
showing it's limits; it doesn't scale and is not flexible.

This series uses the optional DT property interrupts-extended to
provide the mapping between EXTI events and GIC irqs, thus moving
in the DT the description of the HW connections between the EXTI
and the GIC.
Being the DT property interrupts-extended optional, it guarantees
the backward compatibility with the existing DT for STM32MP1xx.
Nevertheless the series updates and uniforms the existing DT by
adding to them the property interrupts-extended too.

At last, this series enables GPIO irqs on STM32MP25 by using the
new exti node as interrupt parent of the pinctrl nodes.


V1 -> V2
- Switch away from the clever abuse of interrupt-map to a more
  humble use of interrupts-extended.
- Drop the addition of the v2m child node in GIC, as it is not
  anymore required in this series.
- Drop Fixes tag on trivial whitespace cleanup.
- Fix S-O-B chain.
- Move the variable's declarations in the condition block where
  they are used.
- When appropriate, change/use uniformly in the commit messages
  the terms s/exti/EXTI/ and s/interrupt/event/ .


Antonio Borneo (11):
  irqchip/stm32-exti: Fix minor indentation issue
  dt-bindings: interrupt-controller: stm32-exti: Add irq mapping to
    parent
  irqchip/stm32-exti: Map interrupts through interrupts-extended
  irqchip/stm32-exti: Convert driver to standard PM
  irqchip/stm32-exti: Skip secure events
  irqchip/stm32-exti: Mark events reserved with RIF configuration check
  arm64: Kconfig.platforms: Enable STM32_EXTI for ARCH_STM32
  ARM: dts: stm32: List exti parent interrupts on stm32mp151
  ARM: dts: stm32: List exti parent interrupts on stm32mp131
  arm64: dts: st: Add exti1 and exti2 nodes on stm32mp251
  arm64: dts: st: Add interrupt parent to pinctrl on stm32mp251

 .../interrupt-controller/st,stm32-exti.yaml   |  17 +-
 arch/arm/boot/dts/st/stm32mp131.dtsi          |  74 +++++++-
 arch/arm/boot/dts/st/stm32mp151.dtsi          |  75 ++++++++
 arch/arm64/Kconfig.platforms                  |   1 +
 arch/arm64/boot/dts/st/stm32mp251.dtsi        | 176 ++++++++++++++++++
 drivers/irqchip/irq-stm32-exti.c              | 139 +++++++++-----
 6 files changed, 438 insertions(+), 44 deletions(-)


base-commit: 4cece764965020c22cff7665b18a012006359095
-- 
2.34.1




More information about the linux-arm-kernel mailing list