Re: [PATCH 10/10] arm64: dts: apple: Add minimal t8132 (M4) device trees

Sven Peter <[email protected]> Tue, 14 Jul 2026 21:47:59 +0200
Newsgroups dev.linux.lists.asahi,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-gpio,org.kernel.vger.linux-i2c,org.kernel.vger.linux-kernel,org.kernel.vger.linux-pwm,org.kernel.vger.linux-watchdog
Message-ID <[email protected]>

On 7/5/26 15:17, Yureka Lilian wrote:
> Added device trees for the following devices:
> - apple,j604 - MacBook Pro (14-inch, M4, 2024)
> - apple,j623 - iMac (24-inch, 2x USB-C, M4, 2024)
> - apple,j624 - iMac (24-inch, 4x USB-C, M4, 2024)
> - apple,j713 - MacBook Air (13-inch, M4, 2025)
> - apple,j715 - MacBook Air (15-inch, M4, 2025)
> - apple,j773g - Mac mini (M4, 2024)
>
> The device trees have a minimal set of devices limited to CPU cores,
> interrupt controller, power states, watchdog, serial, pin controller,
> i2c and framebuffer.
> The device trees for the notebooks add a PWM controller for the keyboard
> LED illumination.
>
> Using the macOS 26.6b3 iBoot/firmware, the Mac mini reliably boots on a
> single core using the stock kernel.
> Booting with smp requires avoiding the wfi and wfit instructions
> in the idle loop and `delay()` respectively, since those instructions
> cause a loss of architectural state on the secondary cores, and even
> then boot is unreliable.
>
> Signed-off-by: Yureka Lilian <[email protected]>
> ---
>   arch/arm64/boot/dts/apple/Makefile        |    6 +
>   arch/arm64/boot/dts/apple/t8132-j604.dts  |   35 +
>   arch/arm64/boot/dts/apple/t8132-j623.dts  |   18 +
>   arch/arm64/boot/dts/apple/t8132-j624.dts  |   18 +
>   arch/arm64/boot/dts/apple/t8132-j713.dts  |   35 +
>   arch/arm64/boot/dts/apple/t8132-j715.dts  |   35 +
>   arch/arm64/boot/dts/apple/t8132-j773g.dts |   25 +
>   arch/arm64/boot/dts/apple/t8132-jxxx.dtsi |   48 ++
>   arch/arm64/boot/dts/apple/t8132-pmgr.dtsi | 1125 +++++++++++++++++++++++++++++
>   arch/arm64/boot/dts/apple/t8132.dtsi      |  440 +++++++++++
>   10 files changed, 1785 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/apple/Makefile b/arch/arm64/boot/dts/apple/Makefile
> index 6fc3349a5842..181bd0e28965 100644
> --- a/arch/arm64/boot/dts/apple/Makefile
> +++ b/arch/arm64/boot/dts/apple/Makefile
> @@ -1,4 +1,10 @@
>   # SPDX-License-Identifier: GPL-2.0
> +dtb-$(CONFIG_ARCH_APPLE) += t8132-j604.dtb
> +dtb-$(CONFIG_ARCH_APPLE) += t8132-j623.dtb
> +dtb-$(CONFIG_ARCH_APPLE) += t8132-j624.dtb
> +dtb-$(CONFIG_ARCH_APPLE) += t8132-j713.dtb
> +dtb-$(CONFIG_ARCH_APPLE) += t8132-j715.dtb
> +dtb-$(CONFIG_ARCH_APPLE) += t8132-j773g.dtb
Please put these at the correct position in the Makefile and not at the 
very top.

>   dtb-$(CONFIG_ARCH_APPLE) += s5l8960x-j71.dtb
>   dtb-$(CONFIG_ARCH_APPLE) += s5l8960x-j73.dtb
>   dtb-$(CONFIG_ARCH_APPLE) += s5l8960x-j85m.dtb
> diff --git a/arch/arm64/boot/dts/apple/t8132-j604.dts b/arch/arm64/boot/dts/apple/t8132-j604.dts
> new file mode 100644
> index 000000000000..c4be915cb33a
> --- /dev/null
> +++ b/arch/arm64/boot/dts/apple/t8132-j604.dts
> @@ -0,0 +1,35 @@
> +// SPDX-License-Identifier: GPL-2.0+ OR MIT
> +/*
> + * Apple MacBook Pro (14-inch, M4, 2024)
> + *
> + * target-type: J604
> + *

[...]

> +
> +		pmgr: power-management@380700000 {
> +			compatible = "apple,t8132-pmgr", "apple,t8103-pmgr", "syscon", "simple-mfd";
> +			#address-cells = <1>;
> +			#size-cells = <1>;
> +			reg = <0x3 0x80700000 0 0x14000>;
> +			/* child nodes are added in t8132-pmgr.dtsi */
> +		};
> +
> +		aic: interrupt-controller@381180000 {
> +			compatible = "apple,t8132-aic3", "apple,t8122-aic3";
> +			#interrupt-cells = <3>;
> +			interrupt-controller;
> +			reg = <0x00000003 0x81000000 0x00000000 0x1cc000>,

You have 381180000 in the node name but 381000000 here, I guess the node 
name is a copy paste error. W=1 flags this fwiw.


Sven