Apple SoC DT update for 7.2

Add minimal device trees for all t8122 / base M3 based devices and some
 required new compatibles to the dt-bindings. These are enough to boot
 Linux on these devices to a simple serial console but future work is
 required to make these machines useful for end users.
 
 Signed-off-by: Sven Peter <sven@kernel.org>
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQS3vz815OHsEaWy0u9EEX0kKnUe6QUCaiFSMAAKCRBEEX0kKnUe
 6ULzAQDG1d3BZ6IKYZRZkCNuQUecKZY/NA/6TdzU1I8eQ3nW7gEAsYeh/OSPD5/+
 ZehIZZ7sIqowWzcmGAAXNDJvZBJKCw8=
 =mqxb
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmooOGQACgkQmmx57+YA
 GNnHnxAAvKzB3bciQatigK6ggr53jjWm3XKzWlzE9ICGWiQk7uNcXQ3xsVVekOcg
 vAR1pEoVbi1ofNvptdiEIOvUULCB/0s/6aso7lqhMLC2M+CRCKPnvIOQvAh91pdJ
 ZvuHlptrK3guFLunGiDjWrahjwY7oLs0DOBXsLJq9BIsHJKtAlNzSMAIVJJAMd23
 sVm6lq/kfFEa46YFLQYkZAKaW/DrhxFLQR092qMvoquFZwMxKm5y9ajt0h5LXLPb
 jPKRarCK0BJ+NwyRkIRHM2bYQxQrmBEhlJ/XetDtuA6o6fJce1rDZS2i3IywDVzP
 tvt8UPticpO6J5YbF1YHG2iMQkqPnquYl28RaPq8PPjWoJJ57phfhiffJZ7ZSusH
 mOis0++87Fe9uVKcvBiTCfjZibbFOAVgU5yu2M+GrSs6rl+OnbUqGOY7QNnMmDER
 autZuhuWNbTnNIuXa7s4j8GlS6YNoHIvlkTF20v2ABJeJc9zcaMJwgQOVNDShqhu
 HKml8AgdPIylSSHInZ9nkGjjfmUczTxtCMA3Pkp2Qi+SF41ry9dJP0oncX3kWSdV
 rRYAMDe5VQSI7aHKxHUuFxii6FG4mdEWeDjvjw/LGELenp52gSC5SCDY3/mycGop
 S+XMKxN6EO9+p8SrYBpmFVVJskSWIP+d5P+R4RVmfNZiHDA6h+s=
 =thB1
 -----END PGP SIGNATURE-----

Merge tag 'apple-soc-dt-7.2' of https://git.kernel.org/pub/scm/linux/kernel/git/sven/linux into soc/dt

Apple SoC DT update for 7.2

Add minimal device trees for all t8122 / base M3 based devices and some
required new compatibles to the dt-bindings. These are enough to boot
Linux on these devices to a simple serial console but future work is
required to make these machines useful for end users.

Signed-off-by: Sven Peter <sven@kernel.org>

* tag 'apple-soc-dt-7.2' of https://git.kernel.org/pub/scm/linux/kernel/git/sven/linux:
  arm64: dts: apple: Initial t8122 (M3) device trees
  dt-bindings: arm: apple: Add M3 based devices
  dt-bindings: pwm: apple,s5l-fpwm: Add t8122 compatible
  dt-bindings: power: apple,pmgr-pwrstate: Add t8122 compatible
  dt-bindings: arm: apple: apple,pmgr: Add t8122 compatible

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann 2026-06-09 17:59:29 +02:00
commit b55ed73106
14 changed files with 1848 additions and 2 deletions

View File

@ -96,6 +96,13 @@ description: |
- MacBook Pro (13-inch, M2, 2022)
- Mac mini (M2, 2023)
Devices based on the "M3" SoC:
- MacBook Air (13-inch, M3, 2024)
- MacBook Air (15-inch, M3, 2024)
- MacBook Pro (14-inch, M3, 2023)
- iMac (24-inch, M3, 2023)
Devices based on the "M1 Pro", "M1 Max" and "M1 Ultra" SoCs:
- MacBook Pro (14-inch, M1 Pro, 2021)
@ -297,6 +304,17 @@ properties:
- const: apple,t8112
- const: apple,arm-platform
- description: Apple M3 SoC based platforms
items:
- enum:
- apple,j433 # iMac (24-inch, 2x USB-C, M3, 2023)
- apple,j434 # iMac (24-inch, 4x USB-C, M3, 2023)
- apple,j504 # MacBook Pro (14-inch, M3, 2023)
- apple,j613 # MacBook Air (13-inch, M3, 2024)
- apple,j615 # MacBook Air (15-inch, M3, 2024)
- const: apple,t8122
- const: apple,arm-platform
- description: Apple M1 Pro SoC based platforms
items:
- enum:

View File

@ -36,7 +36,9 @@ properties:
- const: syscon
- const: simple-mfd
- items:
- const: apple,t6020-pmgr
- enum:
- apple,t6020-pmgr
- apple,t8122-pmgr
- const: apple,t8103-pmgr
- const: syscon
- const: simple-mfd

View File

@ -43,7 +43,9 @@ properties:
- apple,t6000-pmgr-pwrstate
- const: apple,pmgr-pwrstate
- items:
- const: apple,t6020-pmgr-pwrstate
- enum:
- apple,t6020-pmgr-pwrstate
- apple,t8122-pmgr-pwrstate
- const: apple,t8103-pmgr-pwrstate
reg:

View File

@ -18,6 +18,7 @@ properties:
- enum:
- apple,t8103-fpwm
- apple,t8112-fpwm
- apple,t8122-fpwm
- apple,t6000-fpwm
- apple,t6020-fpwm
- const: apple,s5l-fpwm

View File

@ -91,3 +91,8 @@ dtb-$(CONFIG_ARCH_APPLE) += t8112-j413.dtb
dtb-$(CONFIG_ARCH_APPLE) += t8112-j415.dtb
dtb-$(CONFIG_ARCH_APPLE) += t8112-j473.dtb
dtb-$(CONFIG_ARCH_APPLE) += t8112-j493.dtb
dtb-$(CONFIG_ARCH_APPLE) += t8122-j433.dtb
dtb-$(CONFIG_ARCH_APPLE) += t8122-j434.dtb
dtb-$(CONFIG_ARCH_APPLE) += t8122-j504.dtb
dtb-$(CONFIG_ARCH_APPLE) += t8122-j613.dtb
dtb-$(CONFIG_ARCH_APPLE) += t8122-j615.dtb

View File

@ -0,0 +1,19 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
* Apple iMac (24-inch, 2x USB-C, M3, 2023)
*
* target-type: J433
*
* Copyright The Asahi Linux Contributors
*/
/dts-v1/;
#include "t8122.dtsi"
#include "t8122-usbpd-i2c.dtsi"
#include "t8122-jxxx.dtsi"
/ {
compatible = "apple,j433", "apple,t8122", "apple,arm-platform";
model = "Apple iMac (24-inch, 2x USB-C, M3, 2023)";
};

View File

@ -0,0 +1,19 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
* Apple iMac (24-inch, 4x USB-C, M3, 2023)
*
* target-type: J434
*
* Copyright The Asahi Linux Contributors
*/
/dts-v1/;
#include "t8122.dtsi"
#include "t8122-usbpd-i2c.dtsi"
#include "t8122-jxxx.dtsi"
/ {
compatible = "apple,j434", "apple,t8122", "apple,arm-platform";
model = "Apple iMac (24-inch, 4x USB-C, M3, 2023)";
};

View File

@ -0,0 +1,37 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
* Apple MacBook Pro (14-inch, M3, 2023)
*
* target-type: J504
*
* Copyright The Asahi Linux Contributors
*/
/dts-v1/;
#include "t8122.dtsi"
#include "t8122-usbpd-i2c.dtsi"
#include "t8122-jxxx.dtsi"
#include <dt-bindings/leds/common.h>
/ {
compatible = "apple,j504", "apple,t8122", "apple,arm-platform";
model = "Apple MacBook Pro (14-inch, M3, 2023)";
led-controller {
compatible = "pwm-leds";
led-0 {
pwms = <&fpwm1 0 40000>;
label = "kbd_backlight";
function = LED_FUNCTION_KBD_BACKLIGHT;
color = <LED_COLOR_ID_WHITE>;
max-brightness = <255>;
default-state = "keep";
};
};
};
&fpwm1 {
status = "okay";
};

View File

@ -0,0 +1,35 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
* Apple MacBook Air (13-inch, M3, 2024)
*
* target-type: J613
*
* Copyright The Asahi Linux Contributors
*/
/dts-v1/;
#include "t8122.dtsi"
#include "t8122-jxxx.dtsi"
#include <dt-bindings/leds/common.h>
/ {
compatible = "apple,j613", "apple,t8122", "apple,arm-platform";
model = "Apple MacBook Air (13-inch, M3, 2024)";
led-controller {
compatible = "pwm-leds";
led-0 {
pwms = <&fpwm1 0 40000>;
label = "kbd_backlight";
function = LED_FUNCTION_KBD_BACKLIGHT;
color = <LED_COLOR_ID_WHITE>;
max-brightness = <255>;
default-state = "keep";
};
};
};
&fpwm1 {
status = "okay";
};

View File

@ -0,0 +1,35 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
* Apple MacBook Air (15-inch, M3, 2024)
*
* target-type: J615
*
* Copyright The Asahi Linux Contributors
*/
/dts-v1/;
#include "t8122.dtsi"
#include "t8122-jxxx.dtsi"
#include <dt-bindings/leds/common.h>
/ {
compatible = "apple,j615", "apple,t8122", "apple,arm-platform";
model = "Apple MacBook Air (15-inch, M3, 2024)";
led-controller {
compatible = "pwm-leds";
led-0 {
pwms = <&fpwm1 0 40000>;
label = "kbd_backlight";
function = LED_FUNCTION_KBD_BACKLIGHT;
color = <LED_COLOR_ID_WHITE>;
max-brightness = <255>;
default-state = "keep";
};
};
};
&fpwm1 {
status = "okay";
};

View File

@ -0,0 +1,48 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
* Apple M3 MacBook Air/Pro and iMac (M3, 2023/2024)
*
* This file contains parts common to all Apple M3 devices using the t8122.
*
* target-type: J433, J434, J504, J613, J615
*
* Copyright The Asahi Linux Contributors
*/
/ {
aliases {
serial0 = &serial0;
};
chosen {
#address-cells = <2>;
#size-cells = <2>;
ranges;
stdout-path = "serial0";
framebuffer0: framebuffer@0 {
compatible = "apple,simple-framebuffer", "simple-framebuffer";
reg = <0 0 0 0>; /* To be filled by loader */
power-domains = <&ps_disp_cpu>, <&ps_dptx_ext_phy>;
/* Format properties will be added by loader */
status = "disabled";
};
};
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
/* To be filled by loader */
};
memory@800000000 {
device_type = "memory";
reg = <0x8 0 0x2 0>; /* To be filled by loader */
};
};
&serial0 {
status = "okay";
};

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,32 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
* Apple M3 MacBook Pro and iMac (M3, 2023) I2C based USB PD controller nodes
*
* This file contains nodes for t8122 devices using I2C based cd321x USB Type-C
* port controllers. The are used in the M3 MacBook Pro and iMacs but not in the
* M3 Macbook Airs.
*
* target-type: J433, J434, J504
*
* Copyright The Asahi Linux Contributors
*/
&i2c0 {
status = "okay";
hpm0: usb-pd@38 {
compatible = "apple,cd321x";
reg = <0x38>;
interrupt-parent = <&pinctrl_ap>;
interrupts = <8 IRQ_TYPE_LEVEL_LOW>;
interrupt-names = "irq";
};
hpm1: usb-pd@3f {
compatible = "apple,cd321x";
reg = <0x3f>;
interrupt-parent = <&pinctrl_ap>;
interrupts = <8 IRQ_TYPE_LEVEL_LOW>;
interrupt-names = "irq";
};
};

View File

@ -0,0 +1,444 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
* Apple T8122 "M3" SoC
*
* Other names: H15G
*
* Copyright The Asahi Linux Contributors
*/
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/apple-aic.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/pinctrl/apple.h>
#include <dt-bindings/phy/phy.h>
#include <dt-bindings/spmi/spmi.h>
/ {
compatible = "apple,t8122", "apple,arm-platform";
#address-cells = <2>;
#size-cells = <2>;
cpus {
#address-cells = <2>;
#size-cells = <0>;
cpu-map {
cluster0 {
core0 {
cpu = <&cpu_e0>;
};
core1 {
cpu = <&cpu_e1>;
};
core2 {
cpu = <&cpu_e2>;
};
core3 {
cpu = <&cpu_e3>;
};
};
cluster1 {
core0 {
cpu = <&cpu_p0>;
};
core1 {
cpu = <&cpu_p1>;
};
core2 {
cpu = <&cpu_p2>;
};
core3 {
cpu = <&cpu_p3>;
};
};
};
cpu_e0: cpu@0 {
compatible = "apple,sawtooth";
device_type = "cpu";
reg = <0x0 0x0>;
enable-method = "spin-table";
cpu-release-addr = <0 0>; /* To be filled by loader */
next-level-cache = <&l2_cache_0>;
i-cache-size = <0x20000>;
d-cache-size = <0x10000>;
};
cpu_e1: cpu@1 {
compatible = "apple,sawtooth";
device_type = "cpu";
reg = <0x0 0x1>;
enable-method = "spin-table";
cpu-release-addr = <0 0>; /* To be filled by loader */
next-level-cache = <&l2_cache_0>;
i-cache-size = <0x20000>;
d-cache-size = <0x10000>;
};
cpu_e2: cpu@2 {
compatible = "apple,sawtooth";
device_type = "cpu";
reg = <0x0 0x2>;
enable-method = "spin-table";
cpu-release-addr = <0 0>; /* To be filled by loader */
next-level-cache = <&l2_cache_0>;
i-cache-size = <0x20000>;
d-cache-size = <0x10000>;
};
cpu_e3: cpu@3 {
compatible = "apple,sawtooth";
device_type = "cpu";
reg = <0x0 0x3>;
enable-method = "spin-table";
cpu-release-addr = <0 0>; /* To be filled by loader */
next-level-cache = <&l2_cache_0>;
i-cache-size = <0x20000>;
d-cache-size = <0x10000>;
};
cpu_p0: cpu@10100 {
compatible = "apple,everest";
device_type = "cpu";
reg = <0x0 0x10100>;
enable-method = "spin-table";
cpu-release-addr = <0 0>; /* To be filled by loader */
next-level-cache = <&l2_cache_1>;
i-cache-size = <0x30000>;
d-cache-size = <0x20000>;
};
cpu_p1: cpu@10101 {
compatible = "apple,everest";
device_type = "cpu";
reg = <0x0 0x10101>;
enable-method = "spin-table";
cpu-release-addr = <0 0>; /* To be filled by loader */
next-level-cache = <&l2_cache_1>;
i-cache-size = <0x30000>;
d-cache-size = <0x20000>;
};
cpu_p2: cpu@10102 {
compatible = "apple,everest";
device_type = "cpu";
reg = <0x0 0x10102>;
enable-method = "spin-table";
cpu-release-addr = <0 0>; /* To be filled by loader */
next-level-cache = <&l2_cache_1>;
i-cache-size = <0x30000>;
d-cache-size = <0x20000>;
};
cpu_p3: cpu@10103 {
compatible = "apple,everest";
device_type = "cpu";
reg = <0x0 0x10103>;
enable-method = "spin-table";
cpu-release-addr = <0 0>; /* To be filled by loader */
next-level-cache = <&l2_cache_1>;
i-cache-size = <0x30000>;
d-cache-size = <0x20000>;
};
l2_cache_0: l2-cache-0 {
compatible = "cache";
cache-level = <2>;
cache-unified;
cache-size = <0x400000>;
};
l2_cache_1: l2-cache-1 {
compatible = "cache";
cache-level = <2>;
cache-unified;
cache-size = <0x1000000>;
};
};
timer {
compatible = "arm,armv8-timer";
interrupt-parent = <&aic>;
interrupt-names = "phys", "virt", "hyp-phys", "hyp-virt";
interrupts = <AIC_FIQ AIC_TMR_GUEST_PHYS IRQ_TYPE_LEVEL_HIGH>,
<AIC_FIQ AIC_TMR_GUEST_VIRT IRQ_TYPE_LEVEL_HIGH>,
<AIC_FIQ AIC_TMR_HV_PHYS IRQ_TYPE_LEVEL_HIGH>,
<AIC_FIQ AIC_TMR_HV_VIRT IRQ_TYPE_LEVEL_HIGH>;
};
clkref: clock-ref {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <24000000>;
clock-output-names = "clkref";
};
soc {
compatible = "simple-bus";
#address-cells = <2>;
#size-cells = <2>;
ranges;
nonposted-mmio;
/* Required to get >32-bit DMA via DARTs */
dma-ranges = <0 0 0 0 0xffffffff 0xffffc000>;
i2c0: i2c@235010000 {
compatible = "apple,t8122-i2c", "apple,t8103-i2c";
reg = <0x2 0x35010000 0x0 0x4000>;
clocks = <&clkref>;
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ 761 IRQ_TYPE_LEVEL_HIGH>;
pinctrl-0 = <&i2c0_pins>;
pinctrl-names = "default";
#address-cells = <0x1>;
#size-cells = <0x0>;
power-domains = <&ps_i2c0>;
status = "disabled";
};
i2c1: i2c@235014000 {
compatible = "apple,t8122-i2c", "apple,t8103-i2c";
reg = <0x2 0x35014000 0x0 0x4000>;
clocks = <&clkref>;
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ 762 IRQ_TYPE_LEVEL_HIGH>;
pinctrl-0 = <&i2c1_pins>;
pinctrl-names = "default";
#address-cells = <0x1>;
#size-cells = <0x0>;
power-domains = <&ps_i2c1>;
status = "disabled";
};
i2c2: i2c@235018000 {
compatible = "apple,t8122-i2c", "apple,t8103-i2c";
reg = <0x2 0x35018000 0x0 0x4000>;
clocks = <&clkref>;
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ 763 IRQ_TYPE_LEVEL_HIGH>;
pinctrl-0 = <&i2c2_pins>;
pinctrl-names = "default";
#address-cells = <0x1>;
#size-cells = <0x0>;
power-domains = <&ps_i2c2>;
status = "disabled";
};
i2c3: i2c@23501c000 {
compatible = "apple,t8122-i2c", "apple,t8103-i2c";
reg = <0x2 0x3501c000 0x0 0x4000>;
clocks = <&clkref>;
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ 764 IRQ_TYPE_LEVEL_HIGH>;
pinctrl-0 = <&i2c3_pins>;
pinctrl-names = "default";
#address-cells = <0x1>;
#size-cells = <0x0>;
power-domains = <&ps_i2c3>;
status = "disabled";
};
i2c4: i2c@235020000 {
compatible = "apple,t8122-i2c", "apple,t8103-i2c";
reg = <0x2 0x35020000 0x0 0x4000>;
clocks = <&clkref>;
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ 765 IRQ_TYPE_LEVEL_HIGH>;
pinctrl-0 = <&i2c4_pins>;
pinctrl-names = "default";
#address-cells = <0x1>;
#size-cells = <0x0>;
power-domains = <&ps_i2c4>;
status = "disabled";
};
fpwm1: pwm@2a1044000 {
compatible = "apple,t8122-fpwm", "apple,s5l-fpwm";
reg = <0x2 0xa1044000 0x0 0x4000>;
power-domains = <&ps_fpwm1>;
clocks = <&clkref>;
#pwm-cells = <2>;
status = "disabled";
};
serial0: serial@2a1200000 {
compatible = "apple,s5l-uart";
reg = <0x2 0xa1200000 0x0 0x1000>;
reg-io-width = <4>;
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ 757 IRQ_TYPE_LEVEL_HIGH>;
/*
* TODO: figure out the clocking properly, there may
* be a third selectable clock.
*/
clocks = <&clkref>, <&clkref>;
clock-names = "uart", "clk_uart_baud0";
power-domains = <&ps_uart0>;
status = "disabled";
};
aic: interrupt-controller@2d1000000 {
compatible = "apple,t8122-aic3";
#interrupt-cells = <3>;
interrupt-controller;
reg = <0x2 0xd1000000 0x0 0x184000>,
<0x2 0xd1040000 0x0 0x4>;
reg-names = "core", "event";
power-domains = <&ps_aic>;
affinities {
e-core-pmu-affinity {
apple,fiq-index = <AIC_CPU_PMU_E>;
cpus = <&cpu_e0 &cpu_e1 &cpu_e2 &cpu_e3>;
};
p-core-pmu-affinity {
apple,fiq-index = <AIC_CPU_PMU_P>;
cpus = <&cpu_p0 &cpu_p1 &cpu_p2 &cpu_p3>;
};
};
};
pmgr: power-management@2d0700000 {
compatible = "apple,t8122-pmgr", "apple,t8103-pmgr", "syscon", "simple-mfd";
#address-cells = <1>;
#size-cells = <1>;
reg = <0x2 0xd0700000 0 0x14000>;
/* child nodes are added in t8122-pmgr.dtsi */
};
pinctrl_ap: pinctrl@2c7100000 {
compatible = "apple,t8122-pinctrl", "apple,t8103-pinctrl";
reg = <0x2 0xc7100000 0x0 0x100000>;
power-domains = <&ps_gpio>;
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&pinctrl_ap 0 0 224>;
apple,npins = <224>;
interrupt-controller;
#interrupt-cells = <2>;
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ 241 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 242 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 243 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 244 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 245 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 246 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 247 IRQ_TYPE_LEVEL_HIGH>;
i2c0_pins: i2c0-pins {
pinmux = <APPLE_PINMUX(145, 1)>,
<APPLE_PINMUX(144, 1)>;
};
i2c1_pins: i2c1-pins {
pinmux = <APPLE_PINMUX(147, 1)>,
<APPLE_PINMUX(146, 1)>;
};
i2c2_pins: i2c2-pins {
pinmux = <APPLE_PINMUX(56, 1)>,
<APPLE_PINMUX(55, 1)>;
};
i2c3_pins: i2c3-pins {
pinmux = <APPLE_PINMUX(54, 1)>,
<APPLE_PINMUX(53, 1)>;
};
i2c4_pins: i2c4-pins {
pinmux = <APPLE_PINMUX(149, 1)>,
<APPLE_PINMUX(148, 1)>;
};
};
pinctrl_nub: pinctrl@2e41f0000 {
compatible = "apple,t8122-pinctrl", "apple,t8103-pinctrl";
reg = <0x2 0xe41f0000 0x0 0x4000>;
power-domains = <&ps_nub_gpio>;
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&pinctrl_nub 0 0 32>;
apple,npins = <32>;
interrupt-controller;
#interrupt-cells = <2>;
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ 424 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 425 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 426 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 427 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 428 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 429 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 430 IRQ_TYPE_LEVEL_HIGH>;
};
pmgr_mini: power-management@2e4280000 {
compatible = "apple,t8122-pmgr", "apple,t8103-pmgr", "syscon", "simple-mfd";
#address-cells = <1>;
#size-cells = <1>;
reg = <0x2 0xe4280000 0 0x4000>;
/* child nodes are added in t8122-pmgr.dtsi */
};
wdt: watchdog@2e42b0000 {
compatible = "apple,t8122-wdt", "apple,t8103-wdt";
reg = <0x2 0xe42b0000 0x0 0x4000>;
clocks = <&clkref>;
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ 432 IRQ_TYPE_LEVEL_HIGH>;
};
pinctrl_smc: pinctrl@2ec820000 {
compatible = "apple,t8122-pinctrl", "apple,t8103-pinctrl";
reg = <0x2 0xec820000 0x0 0x4000>;
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&pinctrl_smc 0 0 18>;
apple,npins = <18>;
interrupt-controller;
#interrupt-cells = <2>;
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ 493 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 494 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 495 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 496 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 497 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 498 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 499 IRQ_TYPE_LEVEL_HIGH>;
};
pinctrl_aop: pinctrl@2f4824000 {
compatible = "apple,t8122-pinctrl", "apple,t8103-pinctrl";
reg = <0x2 0xf4824000 0x0 0x4000>;
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&pinctrl_aop 0 0 54>;
apple,npins = <54>;
interrupt-controller;
#interrupt-cells = <2>;
interrupt-parent = <&aic>;
interrupts = <AIC_IRQ 346 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 347 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 348 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 349 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 350 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 351 IRQ_TYPE_LEVEL_HIGH>,
<AIC_IRQ 352 IRQ_TYPE_LEVEL_HIGH>;
};
};
};
#include "t8122-pmgr.dtsi"