[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260122-ul-driver-i2c-j722s-v3-0-4ec3478f3866@ti.com>
Date: Thu, 22 Jan 2026 22:49:12 +0530
From: Aniket Limaye <a-limaye@...com>
To: Vignesh Raghavendra <vigneshr@...com>, <u-kumar1@...com>, Nishanth Menon
<nm@...com>, Tero Kristo <kristo@...nel.org>, Santosh Shilimkar
<ssantosh@...nel.org>, Thomas Gleixner <tglx@...nel.org>, Rob Herring
<robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>, Conor Dooley
<conor+dt@...nel.org>
CC: <j-mcarthur@...com>, <linux-arm-kernel@...ts.infradead.org>,
<linux-kernel@...r.kernel.org>, <devicetree@...r.kernel.org>, Aniket Limaye
<a-limaye@...com>
Subject: [PATCH v3 0/2] ti-sci-intr: Support level+pulse interrupt sources
together
The interrupt router does not support interrupt type conversion and
forwards both level and pulse interrupts to the parent (GIC) unchanged.
Hence update the INTR bindings and driver such that
1. If "ti,intr-trigger-type" is absent, parse the interrupt-type
declared by the source, per-line, and use that to allocate interrupt
from its interrupt-parent.
2. Else, the global setting specified for the property is used for all
output lines. This maintains compatibility with existing platform
DTs with no changes.
This change is needed because:
main_i2c4 on J722S is a level type interrupt source while the rest of
the interrupt sources for Main GPIOMUX INTR router are pulse interrupts.
main_i2c4 on J722S is not present in it's dts yet and will be added
through another patch series after this one gets merged.
Testing:
- Enable I2C4 (additional DT patch) on j722s-evm and run i2cdetect [0].
- Add testcode to ignore the NACK interrupt, which results in an irq
storm -> showing that GIC is actually receiving level interrupt from
the INTR [1].
[0]: https://gist.github.com/aniket-l/b5825cd8f2c1d11da4580e011c656ed7#file-j722s-evm-i2c4-working-logs-txt
[1]: https://gist.github.com/aniket-l/b5825cd8f2c1d11da4580e011c656ed7#file-j722s-evm-i2c4-irqstorm-logs-txt
Signed-off-by: Aniket Limaye <a-limaye@...com>
---
Changes in v3:
- Avoid new redundant value IRQ_TYPE_DEFAULT for "ti,intr-trigger-type"
when "#interrupt-cells"==2. Instead, make this property optional and
check for its absence to use the per-line interrupt-type setting.
- Link to v2: https://lore.kernel.org/r/20260120-ul-driver-i2c-j722s-v2-0-832097c6b64f@ti.com
Changes in v2:
- Use correct Patch Subject prefix
- Reword Commit msgs to better describe the patches
- Fix function argument alignment as per coding style
- Fix variable declaration ordering as per coding style
- Link to v1: https://lore.kernel.org/r/20260116-ul-driver-i2c-j722s-v1-0-c28e8ba38a9e@ti.com
---
Aniket Limaye (2):
dt-bindings: interrupt-controller: ti,sci-intr: Per-line interrupt-types
irqchip/ti-sci-intr: Allow parsing interrupt-types per-line
.../bindings/interrupt-controller/ti,sci-intr.yaml | 44 ++++++++++++++++---
drivers/irqchip/irq-ti-sci-intr.c | 49 ++++++++++++++++------
2 files changed, 74 insertions(+), 19 deletions(-)
---
base-commit: a66191c590b3b58eaff05d2277971f854772bd5b
change-id: 20260116-ul-driver-i2c-j722s-48f223899dbd
Best regards,
--
Aniket Limaye <a-limaye@...com>
Powered by blists - more mailing lists