* [PATCH v6 0/1] Update correct AST2700 interrupt controller binding
@ 2025-10-30 6:01 Ryan Chen
2025-10-30 6:01 ` [PATCH v6 1/1] dt-bindings: interrupt-controller: aspeed,ast2700: correct #interrupt-cells and interrupts count Ryan Chen
0 siblings, 1 reply; 4+ messages in thread
From: Ryan Chen @ 2025-10-30 6:01 UTC (permalink / raw)
To: ryan_chen, Thomas Gleixner, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Joel Stanley, Andrew Jeffery, jk, Kevin Chen,
linux-kernel, devicetree, linux-arm-kernel, linux-aspeed
Update the AST2700 interrupt controller binding to match the actual
hardware and the irq-aspeed-intc driver behavior.
v6:
- aspeed,ast2700-intc.yaml
update interrupt-cells, interrupts.
v5:
- Adds two new YAML bindings:
- aspeed,ast2700-intc0.yaml
- aspeed,ast2700-intc1.yaml
- irq-aspeed-intc.c
- add aspeed,ast2700-intc0-ic, aspeed,ast2700-intc0-ic compatible.
v4:
- aspeed,ast2700-intc.yaml
- Clarify the relationship between INTC0/INTC1 parent nodes, the
aspeed,ast2700-intc-ic child nodes, and the GIC.
- Add a block diagram and DT examples showing the cascaded wiring
(GIC <- INTC0 <- INTC1 children).
- Mirrors the datasheet-described topology and register map, including
the separation of INTC0/INTC1 regions.
- Lets DT unambiguously express first-level (GIC parent) and cascaded
second-level (INTC0 parent) interrupt controllers via examples that
use `interrupts` for INTC0 children and `interrupts-extended` for
INTC1 children routed into INTC0.
- irq-ast2700-intc.c
- Drop all string decoding and human readable tables.
Debugfs now dumps raw routing/protection registers only.
- Split into a separate source file and made it modular
- If the compatible not match ast2700-intc0/1, bail out return -ENODEV.
v3:
- aspeed,ast2700-intc.yaml
- Clarify the relationship between INTC0/INTC1 parent nodes, the
aspeed,ast2700-intc-ic child nodes, and the GIC.
- Add a block diagram and DT examples showing the cascaded wiring
(GIC <- INTC0 <- INTC1 children).
- Mirrors the datasheet-described topology and register map, including
the separation of INTC0/INTC1 regions and their routing/protection
registers.
- Lets DT unambiguously express first-level (GIC parent) and cascaded
second-level (INTC0 parent) interrupt controllers via examples that
use `interrupts` for INTC0 children and `interrupts-extended` for
INTC1 children routed into INTC0.
- irq-aspeed-intc.c
- separate c file from irq-aspeed-intc.c
- make m
v2:
- fix dt bindingcheck
Ryan Chen (1):
dt-bindings: interrupt-controller: aspeed,ast2700: correct
#interrupt-cells and interrupts count
.../interrupt-controller/aspeed,ast2700-intc.yaml | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
--
2.34.1
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH v6 1/1] dt-bindings: interrupt-controller: aspeed,ast2700: correct #interrupt-cells and interrupts count
2025-10-30 6:01 [PATCH v6 0/1] Update correct AST2700 interrupt controller binding Ryan Chen
@ 2025-10-30 6:01 ` Ryan Chen
2025-11-03 8:17 ` Krzysztof Kozlowski
2025-11-11 21:23 ` [tip: irq/drivers] dt-bindings: interrupt-controller: aspeed,ast2700: Correct " tip-bot2 for Ryan Chen
0 siblings, 2 replies; 4+ messages in thread
From: Ryan Chen @ 2025-10-30 6:01 UTC (permalink / raw)
To: ryan_chen, Thomas Gleixner, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Joel Stanley, Andrew Jeffery, jk, Kevin Chen,
linux-kernel, devicetree, linux-arm-kernel, linux-aspeed
Update the AST2700 interrupt controller binding to match the actual
hardware and the irq-aspeed-intc driver behavior.
- Interrupts:
First-level INTC banks request multiple interrupt lines to the root
GIC, with a maximum of 10 per bank. Second-level INTC banks request
only one interrupt line to their parent INTC-IC. Therefore, set the
interrupts property to allow a minimum of 1 and a maximum of 10
entries.
- #interrupt-cells:
Set '#interrupt-cells' to <1> since the irq-aspeed-intc.c driver does
not support specifying a trigger type; only the interrupt index is used.
Signed-off-by: Ryan Chen <ryan_chen@aspeedtech.com>
---
.../interrupt-controller/aspeed,ast2700-intc.yaml | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/Documentation/devicetree/bindings/interrupt-controller/aspeed,ast2700-intc.yaml b/Documentation/devicetree/bindings/interrupt-controller/aspeed,ast2700-intc.yaml
index 55636d06a674..999df5b905c5 100644
--- a/Documentation/devicetree/bindings/interrupt-controller/aspeed,ast2700-intc.yaml
+++ b/Documentation/devicetree/bindings/interrupt-controller/aspeed,ast2700-intc.yaml
@@ -25,13 +25,14 @@ properties:
interrupt-controller: true
'#interrupt-cells':
- const: 2
+ const: 1
description:
The first cell is the IRQ number, the second cell is the trigger
type as defined in interrupt.txt in this directory.
interrupts:
- maxItems: 6
+ minItems: 1
+ maxItems: 10
description: |
Depend to which INTC0 or INTC1 used.
INTC0 and INTC1 are two kinds of interrupt controller with enable and raw
@@ -74,13 +75,17 @@ examples:
interrupt-controller@12101b00 {
compatible = "aspeed,ast2700-intc-ic";
reg = <0 0x12101b00 0 0x10>;
- #interrupt-cells = <2>;
+ #interrupt-cells = <1>;
interrupt-controller;
interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
+ <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>;
};
};
--
2.34.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v6 1/1] dt-bindings: interrupt-controller: aspeed,ast2700: correct #interrupt-cells and interrupts count
2025-10-30 6:01 ` [PATCH v6 1/1] dt-bindings: interrupt-controller: aspeed,ast2700: correct #interrupt-cells and interrupts count Ryan Chen
@ 2025-11-03 8:17 ` Krzysztof Kozlowski
2025-11-11 21:23 ` [tip: irq/drivers] dt-bindings: interrupt-controller: aspeed,ast2700: Correct " tip-bot2 for Ryan Chen
1 sibling, 0 replies; 4+ messages in thread
From: Krzysztof Kozlowski @ 2025-11-03 8:17 UTC (permalink / raw)
To: Ryan Chen
Cc: Thomas Gleixner, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Joel Stanley, Andrew Jeffery, jk, Kevin Chen, linux-kernel,
devicetree, linux-arm-kernel, linux-aspeed
On Thu, Oct 30, 2025 at 02:01:55PM +0800, Ryan Chen wrote:
> Update the AST2700 interrupt controller binding to match the actual
> hardware and the irq-aspeed-intc driver behavior.
>
> - Interrupts:
> First-level INTC banks request multiple interrupt lines to the root
> GIC, with a maximum of 10 per bank. Second-level INTC banks request
> only one interrupt line to their parent INTC-IC. Therefore, set the
> interrupts property to allow a minimum of 1 and a maximum of 10
> entries.
>
> - #interrupt-cells:
> Set '#interrupt-cells' to <1> since the irq-aspeed-intc.c driver does
> not support specifying a trigger type; only the interrupt index is used.
>
> Signed-off-by: Ryan Chen <ryan_chen@aspeedtech.com>
> ---
> .../interrupt-controller/aspeed,ast2700-intc.yaml | 13 +++++++++----
> 1 file changed, 9 insertions(+), 4 deletions(-)
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 4+ messages in thread
* [tip: irq/drivers] dt-bindings: interrupt-controller: aspeed,ast2700: Correct #interrupt-cells and interrupts count
2025-10-30 6:01 ` [PATCH v6 1/1] dt-bindings: interrupt-controller: aspeed,ast2700: correct #interrupt-cells and interrupts count Ryan Chen
2025-11-03 8:17 ` Krzysztof Kozlowski
@ 2025-11-11 21:23 ` tip-bot2 for Ryan Chen
1 sibling, 0 replies; 4+ messages in thread
From: tip-bot2 for Ryan Chen @ 2025-11-11 21:23 UTC (permalink / raw)
To: linux-tip-commits
Cc: Ryan Chen, Thomas Gleixner, Krzysztof Kozlowski, x86,
linux-kernel
The following commit has been merged into the irq/drivers branch of tip:
Commit-ID: 7083e142256f92d079d2749e002f2f2499e5f63c
Gitweb: https://git.kernel.org/tip/7083e142256f92d079d2749e002f2f2499e5f63c
Author: Ryan Chen <ryan_chen@aspeedtech.com>
AuthorDate: Thu, 30 Oct 2025 14:01:55 +08:00
Committer: Thomas Gleixner <tglx@linutronix.de>
CommitterDate: Tue, 11 Nov 2025 22:20:45 +01:00
dt-bindings: interrupt-controller: aspeed,ast2700: Correct #interrupt-cells and interrupts count
Update the AST2700 interrupt controller binding to match the actual
hardware and the irq-aspeed-intc driver behavior.
- Interrupts:
First-level INTC banks request multiple interrupt lines to the root
GIC, with a maximum of 10 per bank. Second-level INTC banks request
only one interrupt line to their parent INTC-IC. Therefore, set the
interrupts property to allow a minimum of 1 and a maximum of 10
entries.
- #interrupt-cells:
Set '#interrupt-cells' to <1> since the aspeed intc driver does not
support specifying a trigger type; only the interrupt index is used.
Signed-off-by: Ryan Chen <ryan_chen@aspeedtech.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://patch.msgid.link/20251030060155.2342604-2-ryan_chen@aspeedtech.com
---
Documentation/devicetree/bindings/interrupt-controller/aspeed,ast2700-intc.yaml | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/Documentation/devicetree/bindings/interrupt-controller/aspeed,ast2700-intc.yaml b/Documentation/devicetree/bindings/interrupt-controller/aspeed,ast2700-intc.yaml
index 55636d0..999df5b 100644
--- a/Documentation/devicetree/bindings/interrupt-controller/aspeed,ast2700-intc.yaml
+++ b/Documentation/devicetree/bindings/interrupt-controller/aspeed,ast2700-intc.yaml
@@ -25,13 +25,14 @@ properties:
interrupt-controller: true
'#interrupt-cells':
- const: 2
+ const: 1
description:
The first cell is the IRQ number, the second cell is the trigger
type as defined in interrupt.txt in this directory.
interrupts:
- maxItems: 6
+ minItems: 1
+ maxItems: 10
description: |
Depend to which INTC0 or INTC1 used.
INTC0 and INTC1 are two kinds of interrupt controller with enable and raw
@@ -74,13 +75,17 @@ examples:
interrupt-controller@12101b00 {
compatible = "aspeed,ast2700-intc-ic";
reg = <0 0x12101b00 0 0x10>;
- #interrupt-cells = <2>;
+ #interrupt-cells = <1>;
interrupt-controller;
interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
+ <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>;
};
};
^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2025-11-11 21:23 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-30 6:01 [PATCH v6 0/1] Update correct AST2700 interrupt controller binding Ryan Chen
2025-10-30 6:01 ` [PATCH v6 1/1] dt-bindings: interrupt-controller: aspeed,ast2700: correct #interrupt-cells and interrupts count Ryan Chen
2025-11-03 8:17 ` Krzysztof Kozlowski
2025-11-11 21:23 ` [tip: irq/drivers] dt-bindings: interrupt-controller: aspeed,ast2700: Correct " tip-bot2 for Ryan Chen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox