[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260125114857.GA1667597@robin.jannau.net>
Date: Sun, 25 Jan 2026 12:48:57 +0100
From: Janne Grunau <j@...nau.net>
To: Mark Kettenis <mark.kettenis@...all.nl>
Cc: sven@...nel.org, neal@...pa.dev, tglx@...utronix.de, robh@...nel.org,
krzk+dt@...nel.org, conor+dt@...nel.org, asahi@...ts.linux.dev,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
devicetree@...r.kernel.org
Subject: Re: [PATCH 1/2] dt-bindings: interrupt-controller: apple,aic2: Add
AICv3
On Sun, Jan 25, 2026 at 12:35:48PM +0100, Mark Kettenis wrote:
> > From: Janne Grunau <j@...nau.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@...nau.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@...can.st>
> > + - Janne Grunau <j@...nau.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"
indeed, I forgot to copy my t8122 device tree over when I ran dtbs_check
before submission. Fixed locally and I added a apple,t8122-aic3 example
which tests the #interrupt-cells 3 case
Thanks
Janne
Powered by blists - more mailing lists