[PATCH 1/2] dt-bindings: interrupt-controller: apple,aic2: Add AICv3
Mark Kettenis
mark.kettenis at xs4all.nl
Sun Jan 25 03:35:48 PST 2026
> From: Janne Grunau <j at jannau.net>
> Date: Sun, 25 Jan 2026 12:08:45 +0100
Hi Janne,
>
> AIC version 3 as found on the Apple M3 (t8122) is very similar to AICv2
> in its base functionality. It can use the same device tree bindings as
> AICv2 so add it to the AICv2 bindings.
> This interrupt controller is used on all Apple SoCs starting with M3 up
> to at least M5.
> The only apparent difference is the increased IRQ config offset. Apple's
> device tree codes this new offset as property of the "aic" node but the
> value stayed constant for all SoCs with "aic,3". Since the SoC specific
> compatible "apple,t8122-aic3" will be used in the driver this offset can
> remain a driver implementation detail.
>
> Signed-off-by: Janne Grunau <j at jannau.net>
> ---
> .../bindings/interrupt-controller/apple,aic2.yaml | 29 +++++++++++++++-------
> 1 file changed, 20 insertions(+), 9 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/interrupt-controller/apple,aic2.yaml b/Documentation/devicetree/bindings/interrupt-controller/apple,aic2.yaml
> index ee5a0dfff437816056bda0de5523bf38be4f49ba..933e134d82bb599a68707ba34e04ea55d61050b9 100644
> --- a/Documentation/devicetree/bindings/interrupt-controller/apple,aic2.yaml
> +++ b/Documentation/devicetree/bindings/interrupt-controller/apple,aic2.yaml
> @@ -4,10 +4,10 @@
> $id: http://devicetree.org/schemas/interrupt-controller/apple,aic2.yaml#
> $schema: http://devicetree.org/meta-schemas/core.yaml#
>
> -title: Apple Interrupt Controller 2
> +title: Apple Interrupt Controller 2 and 3
>
> maintainers:
> - - Hector Martin <marcan at marcan.st>
> + - Janne Grunau <j at jannau.net>
>
> description: |
> The Apple Interrupt Controller 2 is a simple interrupt controller present on
> @@ -28,14 +28,23 @@ description: |
> which do not go through a discrete interrupt controller. It also handles
> FIQ-based Fast IPIs.
>
> + The Apple Interrupt Controller 3 is in its base functionality very similar to
> + the Apple Interrupt Controller 2 and uses the same device tree bindings. It is
> + found on Apple ARM SoCs platforms starting with t8122 (M3).
> +
> properties:
> compatible:
> - items:
> - - enum:
> - - apple,t8112-aic
> - - apple,t6000-aic
> - - apple,t6020-aic
> - - const: apple,aic2
> + oneOf:
> + - items:
> + - enum:
> + - apple,t8112-aic
> + - apple,t6000-aic
> + - apple,t6020-aic
> + - const: apple,aic2
> + - items:
> + - enum:
> + - apple,t6030-aic3
> + - const: apple,t8122-aic3
I think this is missing a
- const: apple,t8122-aic3
otherwise, the non-{Pro/Ultra/Max} M3 can't have the simple
compatible = "apple,t8122-aic3"
>
> interrupt-controller: true
>
> @@ -117,7 +126,9 @@ allOf:
> properties:
> compatible:
> contains:
> - const: apple,t8112-aic
> + enum:
> + - apple,t8112-aic
> + - apple,t8122-aic3
> then:
> properties:
> '#interrupt-cells':
>
> --
> 2.52.0
>
>
>
More information about the linux-arm-kernel
mailing list