mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 0/3] pinctrl: s32cc: add GPIO external interrupt (EIRQ) support
@ 2026-10-08  7:14 Khristine Andreea Barbulescu
  2026-10-08  7:14 ` [PATCH 1/3] dt-bindings: pinctrl: s32g2-siul2: describe EIRQ input mux registers Khristine Andreea Barbulescu
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Khristine Andreea Barbulescu @ 2026-10-08  7:14 UTC (permalink / raw)
  To: Linus Walleij, Bartosz Golaszewski, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chester Lin, Matthias Brugger,
	Ghennadi Procopciuc, Larisa Grigore, Lee Jones, Shawn Guo,
	Sascha Hauer, Fabio Estevam, Dong Aisheng, Jacky Bai,
	Greg Kroah-Hartman, Rafael J. Wysocki, Srinivas Kandagatla
  Cc: Alberto Ruiz, Christophe Lizzi, devicetree, Enric Balletbo,
	Eric Chanudet, imx, linux-arm-kernel, linux-gpio, linux-kernel,
	NXP S32 Linux Team, Pengutronix Kernel Team, Vincent Guittot

This patch series adds support for using SIUL2 GPIOs as external
interrupts (EIRQ) via the pin controller's IRQ domain.

A GPIO wired to an EIRQ line can be used as an edge-triggered interrupt
source. All EIRQ lines share a single parent interrupt, which is
demultiplexed to the owning GPIO in a chained handler.

Each EIRQ line is selected by one pad through the IMCR input-mux SSS
field. Since several pads share the same SSS field, only one pad can
drive a given EIRQ line at a time, so the driver enforces one owner per
EIRQ line.

This series builds on top of the SIUL2 GPIO support
and has two dependencies:

- GPIO commit 94cb9e8f2707 ("pinctrl: s32cc: implement GPIO functionality")
which is pending a rebase to be applied on the GPIO tree, as referenced
in the following commit 04b3818c3bbc
("Revert "pinctrl: s32cc: implement GPIO functionality"") [1]

- align reg_mask_xlate callback with commit 6c53312b7e2d
("gpio: regmap: Add gpio_regmap_operation to extend reg_mask_xlate callback")

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=04b3818c3bbc3f68b6e856f87dca752af2cc34ee

Khristine Andreea Barbulescu (3):
  dt-bindings: pinctrl: s32g2-siul2: describe EIRQ input mux registers
  pinctrl: s32cc: add GPIO external interrupt (EIRQ) support
  arm64: dts: s32g: map SIUL2 EIRQ register window in pinctrl node

 .../pinctrl/nxp,s32g2-siul2-pinctrl.yaml      |   9 +-
 arch/arm64/boot/dts/freescale/s32g2.dtsi      |   2 +
 arch/arm64/boot/dts/freescale/s32g3.dtsi      |   2 +
 drivers/pinctrl/nxp/pinctrl-s32.h             |  32 ++
 drivers/pinctrl/nxp/pinctrl-s32cc.c           | 406 ++++++++++++++++++
 drivers/pinctrl/nxp/pinctrl-s32g2.c           |  72 ++++
 6 files changed, 521 insertions(+), 2 deletions(-)

-- 
2.34.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-10-08  7:21 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-08  7:14 [PATCH 0/3] pinctrl: s32cc: add GPIO external interrupt (EIRQ) support Khristine Andreea Barbulescu
2026-10-08  7:14 ` [PATCH 1/3] dt-bindings: pinctrl: s32g2-siul2: describe EIRQ input mux registers Khristine Andreea Barbulescu
2026-10-08  7:20   ` Conor Dooley
2026-10-08  7:14 ` [PATCH 2/3] pinctrl: s32cc: add GPIO external interrupt (EIRQ) support Khristine Andreea Barbulescu
2026-10-08  7:14 ` [PATCH 3/3] arm64: dts: s32g: map SIUL2 EIRQ register window in pinctrl node Khristine Andreea Barbulescu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®