[PATCH v3] pinctrl: stm32: program the EXTI mux from .alloc instead of .activate

Sebastian Andrzej Siewior bigeasy at linutronix.de
Thu Aug 27 08:10:56 PDT 2026


On 2026-08-04 22:14:03 [+0800], Ju Nan wrote:
…
> Nothing requires the mux to be reprogrammed at interrupt startup time:
> the domain has no .deactivate, .free() only releases the irqmux_map bit
> without touching the registers, and the resume path reprograms the mux
> itself in stm32_pinctrl_restore_gpio_regs().

The deactivate was last removed in commit db0f032512443 ("pinctrl:
stm32: check for IRQ MUX validity during alloc()")

…
> While moving the code, release the mux reservation when the hwspinlock
> cannot be taken, which the .activate callback had no way of doing.

It makes sense.
Acked-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>

> Reported-by: Uwe Kleine-König <u.kleine-koenig at pengutronix.de>
> Closes: https://lore.kernel.org/all/20220202174430.pf37tt6lua2op3gc@pengutronix.de/
> Signed-off-by: Ju Nan <junan76 at 163.com>

Sebastian



More information about the linux-arm-kernel mailing list