From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail.cyberchaos.dev (mail.cyberchaos.dev [195.39.247.168]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 999F24AF140; Sat, 10 Oct 2026 16:59:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=195.39.247.168 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1791651602; cv=none; b=dveV0yJS/xN1DSIVXSaE6rFkJ4ueOW4SHbFbVePTCdLDUIEpnFezTyp/2rTBI8uSfXBfbioTugrSzl4Tn0LbtA4PclmRAk5o2EY7xIvqFxp2psrfXdBd+hX4o3kL5/H6oYOD25vaVzq8+fTyKaSL97orcLVw9SUtNaPI1/XAdtU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1791651602; c=relaxed/simple; bh=jOUvG6zaewslrkMbcfAGhcNbzYllK0ZTq8XYGK7lc+A=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=VKKM5QjBaLiYNdDbqGAIJuxbNscCz1Jm6hIFKZ+c0M9ZCNWnoZc9J0SnoqFnpE5rJg/X9yjZni9By/IzGI+2kwj9/XG0SPaLBo4hxsz088l2oyGGoRJzj0V46fRSrOLP36FxH1l5NolVBMM5NiSMIotuJ3UcAlcAGKhbHDfBvuQ= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=cyberchaos.dev; spf=pass smtp.mailfrom=cyberchaos.dev; dkim=pass (1024-bit key) header.d=cyberchaos.dev header.i=@cyberchaos.dev header.b=Bn2Uckpe; arc=none smtp.client-ip=195.39.247.168 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=cyberchaos.dev Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=cyberchaos.dev Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=cyberchaos.dev header.i=@cyberchaos.dev header.b="Bn2Uckpe" From: Yureka Lilian DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cyberchaos.dev; s=mail; t=1791651594; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=fYILG6uyc1Cuf3/MimwITOM0njhxyncJQryqFpLdw1M=; b=Bn2UckpeFaCxZcZRMuuLGfUq48F25Nmxd+MlEIW2FsgKhMLkJ8zp4AzvcDpJ+Ur6/qsnvQ D6U5FGHTnrExBGOI9+RmERSAQI9XF87dhbhthP88WQMF6j0QLarBwhRG3CXpryeXSAWRoD n0nYGnbrIuoEjPEhxc+Vwml/BM6Cwyo= Date: Sat, 10 Oct 2026 18:59:31 +0200 Subject: [PATCH 10/10] arm64: dts: apple: Add minimal t604x (M4 Pro/Max) device trees Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20261010-apple-m4-pro-max-initial-devicetrees-v1-10-781fb3f2d9f6@cyberchaos.dev> References: <20261010-apple-m4-pro-max-initial-devicetrees-v1-0-781fb3f2d9f6@cyberchaos.dev> In-Reply-To: <20261010-apple-m4-pro-max-initial-devicetrees-v1-0-781fb3f2d9f6@cyberchaos.dev> To: Sven Peter , Janne Grunau , Neal Gompa , Wim Van Sebroeck , Guenter Roeck , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Thomas Gleixner , Radu Rendec , Lorenzo Pieralisi , Hector Martin , =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= , Sasha Finkelstein , Linus Walleij , Mark Kettenis , Andi Shyti Cc: asahi@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-watchdog@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pwm@vger.kernel.org, linux-gpio@vger.kernel.org, linux-i2c@vger.kernel.org, Yureka Lilian , Florian Klink Added device trees for the following devices: - apple,j614s - MacBook Pro (14-inch, M4 Pro, 2024) - apple,j614c - MacBook Pro (14-inch, M4 Max, 2024) - apple,j616s - MacBook Pro (16-inch, M4 Pro, 2024) - apple,j616c - MacBook Pro (16-inch, M4 Max, 2024) - apple,j773s - Mac mini (M4 Pro, 2024) - apple,j575c - Mac Studio (M4 Max, 2025) Co-authored-by: Florian Klink Signed-off-by: Florian Klink Signed-off-by: Yureka Lilian --- arch/arm64/boot/dts/apple/Makefile | 6 + arch/arm64/boot/dts/apple/t6040-j614s.dts | 24 + arch/arm64/boot/dts/apple/t6040-j616s.dts | 24 + arch/arm64/boot/dts/apple/t6040-j773s.dts | 28 + arch/arm64/boot/dts/apple/t6040.dtsi | 65 + arch/arm64/boot/dts/apple/t6041-j575c.dts | 22 + arch/arm64/boot/dts/apple/t6041-j614c.dts | 18 + arch/arm64/boot/dts/apple/t6041-j616c.dts | 18 + arch/arm64/boot/dts/apple/t6041-pmgr.dtsi | 2297 ++++++++++++++++++++++++ arch/arm64/boot/dts/apple/t6041.dtsi | 713 ++++++++ arch/arm64/boot/dts/apple/t604x-j575-j773.dtsi | 47 + arch/arm64/boot/dts/apple/t604x-j614-j616.dtsi | 65 + 12 files changed, 3327 insertions(+) diff --git a/arch/arm64/boot/dts/apple/Makefile b/arch/arm64/boot/dts/apple/Makefile index 4f31beeb11ac..12fc777405b3 100644 --- a/arch/arm64/boot/dts/apple/Makefile +++ b/arch/arm64/boot/dts/apple/Makefile @@ -94,6 +94,12 @@ dtb-$(CONFIG_ARCH_APPLE) += t6031-j516c.dtb dtb-$(CONFIG_ARCH_APPLE) += t6032-j575d.dtb dtb-$(CONFIG_ARCH_APPLE) += t6034-j514m.dtb dtb-$(CONFIG_ARCH_APPLE) += t6034-j516m.dtb +dtb-$(CONFIG_ARCH_APPLE) += t6040-j773s.dtb +dtb-$(CONFIG_ARCH_APPLE) += t6040-j614s.dtb +dtb-$(CONFIG_ARCH_APPLE) += t6040-j616s.dtb +dtb-$(CONFIG_ARCH_APPLE) += t6041-j575c.dtb +dtb-$(CONFIG_ARCH_APPLE) += t6041-j614c.dtb +dtb-$(CONFIG_ARCH_APPLE) += t6041-j616c.dtb dtb-$(CONFIG_ARCH_APPLE) += t8112-j413.dtb dtb-$(CONFIG_ARCH_APPLE) += t8112-j415.dtb dtb-$(CONFIG_ARCH_APPLE) += t8112-j473.dtb diff --git a/arch/arm64/boot/dts/apple/t6040-j614s.dts b/arch/arm64/boot/dts/apple/t6040-j614s.dts new file mode 100644 index 000000000000..591947269355 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6040-j614s.dts @@ -0,0 +1,24 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* + * Apple MacBook Pro (14-inch, M4 Pro, 2024) + * + * target-type: J614s + * + * Copyright The Asahi Linux Contributors + */ + +/dts-v1/; + +#include "t6040.dtsi" +#include "t604x-j614-j616.dtsi" + +/ { + model = "Apple MacBook Pro (14-inch, M4 Pro, 2024)"; + compatible = "apple,j614s", "apple,t6040", "apple,arm-platform"; +}; + +/* Delete power domains not present on M4 Pro MacBook Pro models */ + +/delete-node/ &ps_dispext2_cpu; +/delete-node/ &ps_dispext2_fe; +/delete-node/ &ps_dispext2_sys; diff --git a/arch/arm64/boot/dts/apple/t6040-j616s.dts b/arch/arm64/boot/dts/apple/t6040-j616s.dts new file mode 100644 index 000000000000..1fcabb44b1f3 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6040-j616s.dts @@ -0,0 +1,24 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* + * Apple MacBook Pro (16-inch, M4 Pro, 2024) + * + * target-type: J616s + * + * Copyright The Asahi Linux Contributors + */ + +/dts-v1/; + +#include "t6040.dtsi" +#include "t604x-j614-j616.dtsi" + +/ { + model = "Apple MacBook Pro (16-inch, M4 Pro, 2024)"; + compatible = "apple,j616s", "apple,t6040", "apple,arm-platform"; +}; + +/* Delete power domains not present on M4 Pro MacBook Pro models */ + +/delete-node/ &ps_dispext2_cpu; +/delete-node/ &ps_dispext2_fe; +/delete-node/ &ps_dispext2_sys; diff --git a/arch/arm64/boot/dts/apple/t6040-j773s.dts b/arch/arm64/boot/dts/apple/t6040-j773s.dts new file mode 100644 index 000000000000..751c29f60d9c --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6040-j773s.dts @@ -0,0 +1,28 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* + * Mac mini (M4 Pro, 2024) + * + * target-type: J773s + * + * Copyright The Asahi Linux Contributors + */ + +/dts-v1/; + +#include "t6040.dtsi" +#include "t604x-j575-j773.dtsi" + +/ { + model = "Apple Mac mini (M4 Pro, 2024)"; + compatible = "apple,j773s", "apple,t6040", "apple,arm-platform"; +}; + +&framebuffer0 { + power-domains = <&ps_dispext0_cpu>; +}; + +/* Delete power domains not present on Mac mini */ + +/delete-node/ &ps_disp_cpu; +/delete-node/ &ps_disp_fe; +/delete-node/ &ps_disp_sys; diff --git a/arch/arm64/boot/dts/apple/t6040.dtsi b/arch/arm64/boot/dts/apple/t6040.dtsi new file mode 100644 index 000000000000..685b8337178c --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6040.dtsi @@ -0,0 +1,65 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* + * Apple T6040 "M4 Pro" SoC + * + * This chip is just a cut down version of t6041, so + * include it and disable the missing parts. + * + * Copyright The Asahi Linux Contributors + */ + +#include "t6041.dtsi" + +/ { + compatible = "apple,t6040", "apple,arm-platform"; +}; + +// Memory channels not present on M4 Pro +/delete-node/ &ps_amcc16; +/delete-node/ &ps_dcs_16; +/delete-node/ &ps_amcc17; +/delete-node/ &ps_dcs_17; +/delete-node/ &ps_amcc18; +/delete-node/ &ps_dcs_18; +/delete-node/ &ps_amcc19; +/delete-node/ &ps_dcs_19; +/delete-node/ &ps_amcc20; +/delete-node/ &ps_dcs_20; +/delete-node/ &ps_amcc21; +/delete-node/ &ps_dcs_21; +/delete-node/ &ps_amcc22; +/delete-node/ &ps_dcs_22; +/delete-node/ &ps_amcc23; +/delete-node/ &ps_dcs_23; +/delete-node/ &ps_amcc24; +/delete-node/ &ps_dcs_24; +/delete-node/ &ps_amcc25; +/delete-node/ &ps_dcs_25; +/delete-node/ &ps_amcc26; +/delete-node/ &ps_dcs_26; +/delete-node/ &ps_amcc27; +/delete-node/ &ps_dcs_27; +/delete-node/ &ps_amcc28; +/delete-node/ &ps_dcs_28; +/delete-node/ &ps_amcc29; +/delete-node/ &ps_dcs_29; +/delete-node/ &ps_amcc30; +/delete-node/ &ps_dcs_30; +/delete-node/ &ps_amcc31; +/delete-node/ &ps_dcs_31; + +/* + * Depending on the model (Mac mini or MacBook), disp or dispext2 is used for + * the third supported monitor + */ +/delete-node/ &ps_dispext3_cpu; +/delete-node/ &ps_dispext3_fe; +/delete-node/ &ps_dispext3_sys; +/delete-node/ &ps_msr1; +/delete-node/ &ps_msr1_ase_core; +/delete-node/ &ps_venc1_dma; +/delete-node/ &ps_venc1_me0; +/delete-node/ &ps_venc1_me1; +/delete-node/ &ps_venc1_pipe4; +/delete-node/ &ps_venc1_pipe5; +/delete-node/ &ps_venc1_sys; diff --git a/arch/arm64/boot/dts/apple/t6041-j575c.dts b/arch/arm64/boot/dts/apple/t6041-j575c.dts new file mode 100644 index 000000000000..0bd50072e463 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6041-j575c.dts @@ -0,0 +1,22 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* + * Mac Studio (M4 Max, 2025) + * + * target-type: J575c + * + * Copyright The Asahi Linux Contributors + */ + +/dts-v1/; + +#include "t6041.dtsi" +#include "t604x-j575-j773.dtsi" + +/ { + model = "Apple Mac Studio (M4 Max, 2025)"; + compatible = "apple,j575c", "apple,t6041", "apple,arm-platform"; +}; + +&framebuffer0 { + power-domains = <&ps_disp_cpu>; +}; diff --git a/arch/arm64/boot/dts/apple/t6041-j614c.dts b/arch/arm64/boot/dts/apple/t6041-j614c.dts new file mode 100644 index 000000000000..2083cf97b091 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6041-j614c.dts @@ -0,0 +1,18 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* + * Apple MacBook Pro (14-inch, M4 Max, 2024) + * + * target-type: J614c + * + * Copyright The Asahi Linux Contributors + */ + +/dts-v1/; + +#include "t6041.dtsi" +#include "t604x-j614-j616.dtsi" + +/ { + model = "Apple MacBook Pro (14-inch, M4 Max, 2024)"; + compatible = "apple,j614c", "apple,t6041", "apple,arm-platform"; +}; diff --git a/arch/arm64/boot/dts/apple/t6041-j616c.dts b/arch/arm64/boot/dts/apple/t6041-j616c.dts new file mode 100644 index 000000000000..7cdd4f097b39 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6041-j616c.dts @@ -0,0 +1,18 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* + * Apple MacBook Pro (16-inch, M4 Max, 2024) + * + * target-type: J616c + * + * Copyright The Asahi Linux Contributors + */ + +/dts-v1/; + +#include "t6041.dtsi" +#include "t604x-j614-j616.dtsi" + +/ { + model = "Apple MacBook Pro (16-inch, M4 Max, 2024)"; + compatible = "apple,j616c", "apple,t6041", "apple,arm-platform"; +}; diff --git a/arch/arm64/boot/dts/apple/t6041-pmgr.dtsi b/arch/arm64/boot/dts/apple/t6041-pmgr.dtsi new file mode 100644 index 000000000000..7da82f8a036b --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6041-pmgr.dtsi @@ -0,0 +1,2297 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* + * PMGR Power domains for Apple T604x "M4 Pro/Max" SoC + * + * Copyright The Asahi Linux Contributors + */ + +&pmgr_gfx { + ps_gpx: power-controller@0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x0 4>; + label = "gpx"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_afr: power-controller@100 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x100 4>; + label = "afr"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_gfx: power-controller@110 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x110 4>; + label = "gfx"; + #power-domain-cells = <0>; + power-domains = <&ps_afr>; + #reset-cells = <0>; + }; +}; + +&pmgr { + ps_ispsens0: power-controller@0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x0 4>; + label = "ispsens0"; + #power-domain-cells = <0>; + #reset-cells = <0>; + }; + + ps_apcie_gp: power-controller@100 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x100 4>; + label = "apcie_gp"; + #power-domain-cells = <0>; + #reset-cells = <0>; + }; + + ps_apcie_st0: power-controller@108 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x108 4>; + label = "apcie_st0"; + #power-domain-cells = <0>; + #reset-cells = <0>; + }; + + ps_apcie_st1: power-controller@110 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x110 4>; + label = "apcie_st1"; + #power-domain-cells = <0>; + #reset-cells = <0>; + }; + + ps_fab3_soc: power-controller@118 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x118 4>; + label = "fab3_soc"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_sio: power-controller@120 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x120 4>; + label = "sio"; + #power-domain-cells = <0>; + power-domains = <&ps_fab3_soc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_fab4_soc: power-controller@128 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x128 4>; + label = "fab4_soc"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_sio_cpu: power-controller@130 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x130 4>; + label = "sio_cpu"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_fpwm0: power-controller@138 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x138 4>; + label = "fpwm0"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + }; + + ps_fpwm1: power-controller@140 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x140 4>; + label = "fpwm1"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + }; + + ps_fpwm2: power-controller@148 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x148 4>; + label = "fpwm2"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + }; + + ps_i2c0: power-controller@150 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x150 4>; + label = "i2c0"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + }; + + ps_i2c1: power-controller@158 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x158 4>; + label = "i2c1"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + }; + + ps_i2c2: power-controller@160 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x160 4>; + label = "i2c2"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + }; + + ps_i2c3: power-controller@168 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x168 4>; + label = "i2c3"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + }; + + ps_i2c4: power-controller@170 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x170 4>; + label = "i2c4"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + }; + + ps_i2c5: power-controller@178 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x178 4>; + label = "i2c5"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + }; + + ps_i2c6: power-controller@180 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x180 4>; + label = "i2c6"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + }; + + ps_i2c7: power-controller@188 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x188 4>; + label = "i2c7"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + }; + + ps_i2c8: power-controller@190 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x190 4>; + label = "i2c8"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + }; + + ps_spi_p: power-controller@198 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x198 4>; + label = "spi_p"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + }; + + ps_uart_p: power-controller@1a0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1a0 4>; + label = "uart_p"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + }; + + ps_dpa_p: power-controller@1a8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1a8 4>; + label = "dpa_p"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_aes: power-controller@1b0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1b0 4>; + label = "aes"; + #power-domain-cells = <0>; + power-domains = <&ps_sio>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_spi0: power-controller@1b8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1b8 4>; + label = "spi0"; + #power-domain-cells = <0>; + power-domains = <&ps_spi_p>; + #reset-cells = <0>; + }; + + ps_spi1: power-controller@1c0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1c0 4>; + label = "spi1"; + #power-domain-cells = <0>; + power-domains = <&ps_spi_p>; + #reset-cells = <0>; + }; + + ps_spi2: power-controller@1c8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1c8 4>; + label = "spi2"; + #power-domain-cells = <0>; + power-domains = <&ps_spi_p>; + #reset-cells = <0>; + }; + + ps_spi3: power-controller@1d0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1d0 4>; + label = "spi3"; + #power-domain-cells = <0>; + power-domains = <&ps_spi_p>; + #reset-cells = <0>; + }; + + ps_spi4: power-controller@1d8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1d8 4>; + label = "spi4"; + #power-domain-cells = <0>; + power-domains = <&ps_spi_p>; + #reset-cells = <0>; + }; + + ps_spi5: power-controller@1e0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1e0 4>; + label = "spi5"; + #power-domain-cells = <0>; + power-domains = <&ps_spi_p>; + #reset-cells = <0>; + }; + + ps_qspi: power-controller@1e8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1e8 4>; + label = "qspi"; + #power-domain-cells = <0>; + power-domains = <&ps_spi_p>; + #reset-cells = <0>; + }; + + ps_uart_n: power-controller@1f0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1f0 4>; + label = "uart_n"; + #power-domain-cells = <0>; + power-domains = <&ps_uart_p>; + #reset-cells = <0>; + }; + + ps_uart0: power-controller@1f8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1f8 4>; + label = "uart0"; + #power-domain-cells = <0>; + power-domains = <&ps_uart_p>; + #reset-cells = <0>; + }; + + ps_uart1: power-controller@200 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x200 4>; + label = "uart1"; + #power-domain-cells = <0>; + power-domains = <&ps_uart_p>; + #reset-cells = <0>; + }; + + ps_uart2: power-controller@208 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x208 4>; + label = "uart2"; + #power-domain-cells = <0>; + power-domains = <&ps_uart_p>; + #reset-cells = <0>; + }; + + ps_uart3: power-controller@210 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x210 4>; + label = "uart3"; + #power-domain-cells = <0>; + power-domains = <&ps_uart_p>; + #reset-cells = <0>; + }; + + ps_uart4: power-controller@218 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x218 4>; + label = "uart4"; + #power-domain-cells = <0>; + power-domains = <&ps_uart_p>; + #reset-cells = <0>; + }; + + ps_uart5: power-controller@220 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x220 4>; + label = "uart5"; + #power-domain-cells = <0>; + power-domains = <&ps_uart_p>; + #reset-cells = <0>; + }; + + ps_uart6: power-controller@228 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x228 4>; + label = "uart6"; + #power-domain-cells = <0>; + power-domains = <&ps_uart_p>; + #reset-cells = <0>; + }; + + ps_dpa0: power-controller@230 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x230 4>; + label = "dpa0"; + #power-domain-cells = <0>; + power-domains = <&ps_dpa_p>; + #reset-cells = <0>; + }; + + ps_dpa1: power-controller@238 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x238 4>; + label = "dpa1"; + #power-domain-cells = <0>; + power-domains = <&ps_dpa_p>; + #reset-cells = <0>; + }; + + ps_dpa2: power-controller@240 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x240 4>; + label = "dpa2"; + #power-domain-cells = <0>; + power-domains = <&ps_dpa_p>; + #reset-cells = <0>; + }; + + ps_dpa3: power-controller@248 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x248 4>; + label = "dpa3"; + #power-domain-cells = <0>; + power-domains = <&ps_dpa_p>; + #reset-cells = <0>; + }; + + ps_dpa4: power-controller@250 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x250 4>; + label = "dpa4"; + #power-domain-cells = <0>; + power-domains = <&ps_dpa_p>; + #reset-cells = <0>; + }; + + ps_disp_sys: power-controller@258 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x258 4>; + label = "disp_sys"; + #power-domain-cells = <0>; + power-domains = <&ps_fab6_soc>; + #reset-cells = <0>; + }; + + ps_amcc4: power-controller@260 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x260 4>; + label = "amcc4"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc5: power-controller@268 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x268 4>; + label = "amcc5"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc6: power-controller@270 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x270 4>; + label = "amcc6"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc7: power-controller@278 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x278 4>; + label = "amcc7"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc12: power-controller@280 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x280 4>; + label = "amcc12"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc13: power-controller@288 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x288 4>; + label = "amcc13"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc14: power-controller@290 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x290 4>; + label = "amcc14"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc15: power-controller@298 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x298 4>; + label = "amcc15"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc20: power-controller@2a0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2a0 4>; + label = "amcc20"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc21: power-controller@2a8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2a8 4>; + label = "amcc21"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc22: power-controller@2b0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2b0 4>; + label = "amcc22"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc23: power-controller@2b8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2b8 4>; + label = "amcc23"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc28: power-controller@2c0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2c0 4>; + label = "amcc28"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc29: power-controller@2c8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2c8 4>; + label = "amcc29"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc30: power-controller@2d0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2d0 4>; + label = "amcc30"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc31: power-controller@2d8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2d8 4>; + label = "amcc31"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_04: power-controller@2e0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2e0 4>; + label = "dcs_04"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc4>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_05: power-controller@2e8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2e8 4>; + label = "dcs_05"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc5>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_06: power-controller@2f0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2f0 4>; + label = "dcs_06"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc6>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_07: power-controller@2f8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2f8 4>; + label = "dcs_07"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc7>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_12: power-controller@300 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x300 4>; + label = "dcs_12"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc12>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_13: power-controller@308 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x308 4>; + label = "dcs_13"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc13>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_14: power-controller@310 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x310 4>; + label = "dcs_14"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc14>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_15: power-controller@318 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x318 4>; + label = "dcs_15"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc15>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_20: power-controller@320 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x320 4>; + label = "dcs_20"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc20>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_21: power-controller@328 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x328 4>; + label = "dcs_21"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc21>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_22: power-controller@330 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x330 4>; + label = "dcs_22"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc22>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_23: power-controller@338 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x338 4>; + label = "dcs_23"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc23>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_28: power-controller@340 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x340 4>; + label = "dcs_28"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc28>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_29: power-controller@348 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x348 4>; + label = "dcs_29"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc29>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_30: power-controller@350 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x350 4>; + label = "dcs_30"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc30>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_31: power-controller@358 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x358 4>; + label = "dcs_31"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc31>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_disp_fe: power-controller@368 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x368 4>; + label = "disp_fe"; + #power-domain-cells = <0>; + power-domains = <&ps_disp_sys>; + #reset-cells = <0>; + apple,min-state = <4>; + }; + + ps_ans: power-controller@370 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x370 4>; + label = "ans"; + #power-domain-cells = <0>; + power-domains = <&ps_fab3_soc>; + #reset-cells = <0>; + }; + + ps_isp_sys: power-controller@378 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x378 4>; + label = "isp_sys"; + #power-domain-cells = <0>; + power-domains = <&ps_fab6_soc>; + #reset-cells = <0>; + }; + + ps_apcie_sys_st0: power-controller@380 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x380 4>; + label = "apcie_sys_st0"; + #power-domain-cells = <0>; + power-domains = <&ps_ans>, <&ps_apcie_st0>; + #reset-cells = <0>; + }; + + ps_apcie_sys_st1: power-controller@388 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x388 4>; + label = "apcie_sys_st1"; + #power-domain-cells = <0>; + power-domains = <&ps_ans>, <&ps_apcie_st1>; + #reset-cells = <0>; + }; + + ps_apcie_sys_gp: power-controller@390 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x390 4>; + label = "apcie_sys_gp"; + #power-domain-cells = <0>; + power-domains = <&ps_fab3_soc>, <&ps_apcie_gp>; + #reset-cells = <0>; + }; + + ps_apcie_phy_sw: power-controller@398 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x398 4>; + label = "apcie_phy_sw"; + #power-domain-cells = <0>; + power-domains = <&ps_apcie_sys_st0>, <&ps_apcie_sys_st1>; + #reset-cells = <0>; + }; + + ps_jpg: power-controller@3a0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3a0 4>; + label = "jpg"; + #power-domain-cells = <0>; + power-domains = <&ps_fab4_soc>; + #reset-cells = <0>; + }; + + ps_prores: power-controller@3a8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3a8 4>; + label = "prores"; + #power-domain-cells = <0>; + power-domains = <&ps_fab6_soc>; + #reset-cells = <0>; + }; + + ps_msr1: power-controller@3b0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3b0 4>; + label = "msr1"; + #power-domain-cells = <0>; + power-domains = <&ps_fab6_soc>; + #reset-cells = <0>; + }; + + ps_msr1_ase_core: power-controller@3b8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3b8 4>; + label = "msr1_ase_core"; + #power-domain-cells = <0>; + power-domains = <&ps_msr1>; + #reset-cells = <0>; + }; + + ps_ane_sys: power-controller@3c0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3c0 4>; + label = "ane_sys"; + #power-domain-cells = <0>; + power-domains = <&ps_fab5_soc>, <&ps_fab4_soc>; + #reset-cells = <0>; + }; + + ps_sep: power-controller@c00 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xc00 4>; + label = "sep"; + #power-domain-cells = <0>; + power-domains = <&ps_fab3_soc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_isp_cpu: power-controller@4000 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x4000 4>; + label = "isp_cpu"; + #power-domain-cells = <0>; + power-domains = <&ps_isp_sys>; + #reset-cells = <0>; + }; + + ps_isp_fe: power-controller@4008 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x4008 4>; + label = "isp_fe"; + #power-domain-cells = <0>; + power-domains = <&ps_isp_sys>; + #reset-cells = <0>; + }; + + ps_ane_mpm: power-controller@c000 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xc000 4>; + label = "ane_mpm"; + #power-domain-cells = <0>; + power-domains = <&ps_ane_sys>; + #reset-cells = <0>; + }; + + ps_ane_cpu: power-controller@c008 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xc008 4>; + label = "ane_cpu"; + #power-domain-cells = <0>; + power-domains = <&ps_ane_sys>; + #reset-cells = <0>; + }; + + ps_ane_td: power-controller@c010 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xc010 4>; + label = "ane_td"; + #power-domain-cells = <0>; + power-domains = <&ps_ane_sys>; + #reset-cells = <0>; + }; + + ps_ane_base: power-controller@c018 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xc018 4>; + label = "ane_base"; + #power-domain-cells = <0>; + power-domains = <&ps_ane_td>; + #reset-cells = <0>; + }; + + ps_disp_cpu: power-controller@10000 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x10000 4>; + label = "disp_cpu"; + #power-domain-cells = <0>; + power-domains = <&ps_disp_fe>; + #reset-cells = <0>; + + status = "disabled"; /* Locked, don't touch */ + }; +}; + +&pmgr1 { + ps_pms: power-controller@100 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x100 4>; + label = "pms"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dwi: power-controller@108 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x108 4>; + label = "dwi"; + #power-domain-cells = <0>; + #reset-cells = <0>; + }; + + ps_afi: power-controller@110 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x110 4>; + label = "afi"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_aic: power-controller@118 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x118 4>; + label = "aic"; + #power-domain-cells = <0>; + power-domains = <&ps_pms>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_pmc: power-controller@120 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x120 4>; + label = "pmc"; + #power-domain-cells = <0>; + power-domains = <&ps_pms>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_pms_c1ppt: power-controller@128 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x128 4>; + label = "pms_c1ppt"; + #power-domain-cells = <0>; + power-domains = <&ps_pms>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_soc_dpe: power-controller@130 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x130 4>; + label = "soc_dpe"; + #power-domain-cells = <0>; + power-domains = <&ps_pms>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_pmgr_soc_ocla: power-controller@138 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x138 4>; + label = "pmgr_soc_ocla"; + #power-domain-cells = <0>; + #reset-cells = <0>; + }; + + ps_pms_fpwm0: power-controller@140 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x140 4>; + label = "pms_fpwm0"; + #power-domain-cells = <0>; + power-domains = <&ps_pms>; + #reset-cells = <0>; + }; + + ps_pms_fpwm1: power-controller@148 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x148 4>; + label = "pms_fpwm1"; + #power-domain-cells = <0>; + power-domains = <&ps_pms>; + #reset-cells = <0>; + }; + + ps_pms_fpwm2: power-controller@150 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x150 4>; + label = "pms_fpwm2"; + #power-domain-cells = <0>; + power-domains = <&ps_pms>; + #reset-cells = <0>; + }; + + ps_pms_fpwm3: power-controller@158 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x158 4>; + label = "pms_fpwm3"; + #power-domain-cells = <0>; + power-domains = <&ps_pms>; + #reset-cells = <0>; + }; + + ps_pms_fpwm4: power-controller@160 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x160 4>; + label = "pms_fpwm4"; + #power-domain-cells = <0>; + power-domains = <&ps_pms>; + #reset-cells = <0>; + }; + + ps_fab0_soc: power-controller@168 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x168 4>; + label = "fab0_soc"; + #power-domain-cells = <0>; + power-domains = <&ps_afi>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_avd_sys: power-controller@170 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x170 4>; + label = "avd_sys"; + #power-domain-cells = <0>; + power-domains = <&ps_fab0_soc>; + #reset-cells = <0>; + }; + + ps_afc: power-controller@178 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x178 4>; + label = "afc"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc0: power-controller@180 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x180 4>; + label = "amcc0"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_00: power-controller@188 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x188 4>; + label = "dcs_00"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_rom: power-controller@190 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x190 4>; + label = "rom"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc0>; + #reset-cells = <0>; + }; + + ps_amcc1: power-controller@198 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x198 4>; + label = "amcc1"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_01: power-controller@1a0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1a0 4>; + label = "dcs_01"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc1>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc2: power-controller@1a8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1a8 4>; + label = "amcc2"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_02: power-controller@1b0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1b0 4>; + label = "dcs_02"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc2>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc3: power-controller@1b8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1b8 4>; + label = "amcc3"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_03: power-controller@1c0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1c0 4>; + label = "dcs_03"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc3>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc8: power-controller@1c8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1c8 4>; + label = "amcc8"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_08: power-controller@1d0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1d0 4>; + label = "dcs_08"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc8>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc9: power-controller@1d8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1d8 4>; + label = "amcc9"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_09: power-controller@1e0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1e0 4>; + label = "dcs_09"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc9>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc10: power-controller@1e8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1e8 4>; + label = "amcc10"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_10: power-controller@1f0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1f0 4>; + label = "dcs_10"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc10>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc11: power-controller@1f8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x1f8 4>; + label = "amcc11"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_11: power-controller@200 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x200 4>; + label = "dcs_11"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc11>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc16: power-controller@208 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x208 4>; + label = "amcc16"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_16: power-controller@210 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x210 4>; + label = "dcs_16"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc16>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc17: power-controller@218 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x218 4>; + label = "amcc17"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_17: power-controller@220 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x220 4>; + label = "dcs_17"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc17>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc18: power-controller@228 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x228 4>; + label = "amcc18"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_18: power-controller@230 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x230 4>; + label = "dcs_18"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc18>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc19: power-controller@238 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x238 4>; + label = "amcc19"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_19: power-controller@240 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x240 4>; + label = "dcs_19"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc19>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc24: power-controller@248 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x248 4>; + label = "amcc24"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_24: power-controller@250 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x250 4>; + label = "dcs_24"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc24>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc25: power-controller@258 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x258 4>; + label = "amcc25"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_25: power-controller@260 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x260 4>; + label = "dcs_25"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc25>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_amcc26: power-controller@268 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x268 4>; + label = "amcc26"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dcs_26: power-controller@270 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x270 4>; + label = "dcs_26"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc26>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_venc0_sys: power-controller@278 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x278 4>; + label = "venc0_sys"; + #power-domain-cells = <0>; + power-domains = <&ps_fab0_soc>; + #reset-cells = <0>; + }; + + ps_amcc27: power-controller@280 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x280 4>; + label = "amcc27"; + #power-domain-cells = <0>; + power-domains = <&ps_afc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_fab_gw_0: power-controller@288 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x288 4>; + label = "fab_gw_0"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_fab_gw_1: power-controller@290 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x290 4>; + label = "fab_gw_1"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_fab_afr: power-controller@298 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x298 4>; + label = "fab_afr"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_venc1_sys: power-controller@2a0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2a0 4>; + label = "venc1_sys"; + #power-domain-cells = <0>; + power-domains = <&ps_fab0_soc>; + #reset-cells = <0>; + }; + + ps_venc1_dma: power-controller@2a8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2a8 4>; + label = "venc1_dma"; + #power-domain-cells = <0>; + power-domains = <&ps_venc1_sys>; + #reset-cells = <0>; + }; + + ps_venc1_pipe4: power-controller@2b0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2b0 4>; + label = "venc1_pipe4"; + #power-domain-cells = <0>; + power-domains = <&ps_venc1_dma>; + #reset-cells = <0>; + }; + + ps_venc1_pipe5: power-controller@2b8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2b8 4>; + label = "venc1_pipe5"; + #power-domain-cells = <0>; + power-domains = <&ps_venc1_dma>; + #reset-cells = <0>; + }; + + ps_venc1_me0: power-controller@2c0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2c0 4>; + label = "venc1_me0"; + #power-domain-cells = <0>; + power-domains = <&ps_venc1_dma>; + #reset-cells = <0>; + }; + + ps_venc1_me1: power-controller@2c8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2c8 4>; + label = "venc1_me1"; + #power-domain-cells = <0>; + power-domains = <&ps_venc1_me0>; + #reset-cells = <0>; + }; + + ps_fab1_soc: power-controller@2d0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2d0 4>; + label = "fab1_soc"; + #power-domain-cells = <0>; + power-domains = <&ps_afi>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dispext3_sys: power-controller@2d8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2d8 4>; + label = "dispext3_sys"; + #power-domain-cells = <0>; + power-domains = <&ps_fab1_soc>; + #reset-cells = <0>; + }; + + ps_dispext3_fe: power-controller@2e0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2e0 4>; + label = "dispext3_fe"; + #power-domain-cells = <0>; + power-domains = <&ps_dispext3_sys>; + #reset-cells = <0>; + }; + + ps_dispext3_cpu: power-controller@2e8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x2e8 4>; + label = "dispext3_cpu"; + #power-domain-cells = <0>; + power-domains = <&ps_dispext3_fe>; + #reset-cells = <0>; + + status = "disabled"; /* Locked, don't touch */ + }; + + ps_scodec: power-controller@328 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x328 4>; + label = "scodec"; + #power-domain-cells = <0>; + power-domains = <&ps_fab1_soc>; + #reset-cells = <0>; + }; + + ps_scodec_streaming: power-controller@330 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x330 4>; + label = "scodec_streaming"; + #power-domain-cells = <0>; + power-domains = <&ps_scodec>; + #reset-cells = <0>; + }; + + ps_fab2_soc: power-controller@338 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x338 4>; + label = "fab2_soc"; + #power-domain-cells = <0>; + power-domains = <&ps_afi>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dispext0_sys: power-controller@340 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x340 4>; + label = "dispext0_sys"; + #power-domain-cells = <0>; + power-domains = <&ps_fab2_soc>; + #reset-cells = <0>; + }; + + ps_dispext0_fe: power-controller@348 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x348 4>; + label = "dispext0_fe"; + #power-domain-cells = <0>; + power-domains = <&ps_dispext0_sys>; + #reset-cells = <0>; + }; + + ps_dispext0_cpu: power-controller@350 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x350 4>; + label = "dispext0_cpu"; + #power-domain-cells = <0>; + power-domains = <&ps_dispext0_fe>; + #reset-cells = <0>; + + status = "disabled"; /* Locked, don't touch */ + }; + + ps_atc0_common: power-controller@390 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x390 4>; + label = "atc0_common"; + #power-domain-cells = <0>; + power-domains = <&ps_fab2_soc>; + #reset-cells = <0>; + }; + + ps_atc0_cio: power-controller@398 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x398 4>; + label = "atc0_cio"; + #power-domain-cells = <0>; + power-domains = <&ps_atc0_common>; + #reset-cells = <0>; + }; + + ps_atc0_pcie: power-controller@3a0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3a0 4>; + label = "atc0_pcie"; + #power-domain-cells = <0>; + power-domains = <&ps_atc0_common>; + #reset-cells = <0>; + }; + + ps_atc0_cio_pcie: power-controller@3a8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3a8 4>; + label = "atc0_cio_pcie"; + #power-domain-cells = <0>; + power-domains = <&ps_atc0_cio>; + #reset-cells = <0>; + }; + + ps_atc0_cio_usb: power-controller@3b0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3b0 4>; + label = "atc0_cio_usb"; + #power-domain-cells = <0>; + power-domains = <&ps_atc0_cio>; + #reset-cells = <0>; + }; + + ps_atc1_common: power-controller@3b8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3b8 4>; + label = "atc1_common"; + #power-domain-cells = <0>; + power-domains = <&ps_fab2_soc>; + #reset-cells = <0>; + }; + + ps_atc1_cio: power-controller@3c0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3c0 4>; + label = "atc1_cio"; + #power-domain-cells = <0>; + power-domains = <&ps_atc1_common>; + #reset-cells = <0>; + }; + + ps_atc1_pcie: power-controller@3c8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3c8 4>; + label = "atc1_pcie"; + #power-domain-cells = <0>; + power-domains = <&ps_atc1_common>; + #reset-cells = <0>; + }; + + ps_atc1_cio_pcie: power-controller@3d0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3d0 4>; + label = "atc1_cio_pcie"; + #power-domain-cells = <0>; + power-domains = <&ps_atc1_cio>; + #reset-cells = <0>; + }; + + ps_atc1_cio_usb: power-controller@3d8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3d8 4>; + label = "atc1_cio_usb"; + #power-domain-cells = <0>; + power-domains = <&ps_atc1_cio>; + #reset-cells = <0>; + }; + + ps_atc2_common: power-controller@3e0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3e0 4>; + label = "atc2_common"; + #power-domain-cells = <0>; + power-domains = <&ps_fab2_soc>; + #reset-cells = <0>; + }; + + ps_atc2_cio: power-controller@3e8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3e8 4>; + label = "atc2_cio"; + #power-domain-cells = <0>; + power-domains = <&ps_atc2_common>; + #reset-cells = <0>; + }; + + ps_atc2_pcie: power-controller@3f0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3f0 4>; + label = "atc2_pcie"; + #power-domain-cells = <0>; + power-domains = <&ps_atc2_common>; + #reset-cells = <0>; + }; + + ps_atc2_cio_pcie: power-controller@3f8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x3f8 4>; + label = "atc2_cio_pcie"; + #power-domain-cells = <0>; + power-domains = <&ps_atc2_cio>; + #reset-cells = <0>; + }; + + ps_atc2_cio_usb: power-controller@400 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x400 4>; + label = "atc2_cio_usb"; + #power-domain-cells = <0>; + power-domains = <&ps_atc2_cio>; + #reset-cells = <0>; + }; + + ps_atc3_common: power-controller@408 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x408 4>; + label = "atc3_common"; + #power-domain-cells = <0>; + power-domains = <&ps_fab2_soc>; + #reset-cells = <0>; + }; + + ps_pmp: power-controller@410 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x410 4>; + label = "pmp"; + #power-domain-cells = <0>; + power-domains = <&ps_pms>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_pms_sram: power-controller@418 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x418 4>; + label = "pms_sram"; + #power-domain-cells = <0>; + power-domains = <&ps_pms>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_atc3_cio: power-controller@420 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x420 4>; + label = "atc3_cio"; + #power-domain-cells = <0>; + power-domains = <&ps_atc3_common>; + #reset-cells = <0>; + }; + + ps_atc3_pcie: power-controller@428 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x428 4>; + label = "atc3_pcie"; + #power-domain-cells = <0>; + power-domains = <&ps_atc3_common>; + #reset-cells = <0>; + }; + + ps_atc3_cio_pcie: power-controller@430 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x430 4>; + label = "atc3_cio_pcie"; + #power-domain-cells = <0>; + power-domains = <&ps_atc3_cio>; + #reset-cells = <0>; + }; + + ps_atc3_cio_usb: power-controller@438 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x438 4>; + label = "atc3_cio_usb"; + #power-domain-cells = <0>; + power-domains = <&ps_atc3_cio>; + #reset-cells = <0>; + }; + + ps_fab5_soc: power-controller@440 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x440 4>; + label = "fab5_soc"; + #power-domain-cells = <0>; + power-domains = <&ps_afi>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_sbr: power-controller@448 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x448 4>; + label = "sbr"; + #power-domain-cells = <0>; + power-domains = <&ps_fab5_soc>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_gpio: power-controller@450 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x450 4>; + label = "gpio"; + #power-domain-cells = <0>; + power-domains = <&ps_sbr>; + #reset-cells = <0>; + }; + + ps_msg: power-controller@458 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x458 4>; + label = "msg"; + #power-domain-cells = <0>; + power-domains = <&ps_sbr>; + #reset-cells = <0>; + }; + + ps_ap_tmm: power-controller@468 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x468 4>; + label = "ap_tmm"; + #power-domain-cells = <0>; + power-domains = <&ps_sbr>; + #reset-cells = <0>; + }; + + ps_msr0: power-controller@470 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x470 4>; + label = "msr0"; + #power-domain-cells = <0>; + power-domains = <&ps_fab5_soc>; + #reset-cells = <0>; + }; + + ps_msr0_ase_core: power-controller@478 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x478 4>; + label = "msr0_ase_core"; + #power-domain-cells = <0>; + power-domains = <&ps_msr0>; + #reset-cells = <0>; + }; + + ps_fab6_soc: power-controller@480 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x480 4>; + label = "fab6_soc"; + #power-domain-cells = <0>; + power-domains = <&ps_afi>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_fab7_soc: power-controller@488 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x488 4>; + label = "fab7_soc"; + #power-domain-cells = <0>; + power-domains = <&ps_afi>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_dispext1_sys: power-controller@490 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x490 4>; + label = "dispext1_sys"; + #power-domain-cells = <0>; + power-domains = <&ps_fab7_soc>; + #reset-cells = <0>; + }; + + ps_dispext1_fe: power-controller@498 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x498 4>; + label = "dispext1_fe"; + #power-domain-cells = <0>; + power-domains = <&ps_dispext1_sys>; + #reset-cells = <0>; + }; + + ps_dispext1_cpu: power-controller@4a0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x4a0 4>; + label = "dispext1_cpu"; + #power-domain-cells = <0>; + power-domains = <&ps_dispext1_fe>; + #reset-cells = <0>; + + status = "disabled"; /* Locked, don't touch */ + }; + + ps_dispext2_sys: power-controller@4e0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x4e0 4>; + label = "dispext2_sys"; + #power-domain-cells = <0>; + power-domains = <&ps_fab7_soc>; + #reset-cells = <0>; + }; + + ps_dispext2_fe: power-controller@4e8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x4e8 4>; + label = "dispext2_fe"; + #power-domain-cells = <0>; + power-domains = <&ps_dispext2_sys>; + #reset-cells = <0>; + }; + + ps_dispext2_cpu: power-controller@4f0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x4f0 4>; + label = "dispext2_cpu"; + #power-domain-cells = <0>; + power-domains = <&ps_dispext2_fe>; + #reset-cells = <0>; + + status = "disabled"; /* Locked, don't touch */ + }; + + ps_dcs_27: power-controller@530 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x530 4>; + label = "dcs_27"; + #power-domain-cells = <0>; + power-domains = <&ps_amcc27>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_venc0_dma: power-controller@8000 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x8000 4>; + label = "venc0_dma"; + #power-domain-cells = <0>; + power-domains = <&ps_venc0_sys>; + #reset-cells = <0>; + }; + + ps_venc0_pipe4: power-controller@8008 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x8008 4>; + label = "venc0_pipe4"; + #power-domain-cells = <0>; + power-domains = <&ps_venc0_dma>; + #reset-cells = <0>; + }; + + ps_venc0_pipe5: power-controller@8010 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x8010 4>; + label = "venc0_pipe5"; + #power-domain-cells = <0>; + power-domains = <&ps_venc0_dma>; + #reset-cells = <0>; + }; + + ps_venc0_me0: power-controller@8018 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x8018 4>; + label = "venc0_me0"; + #power-domain-cells = <0>; + power-domains = <&ps_venc0_dma>; + #reset-cells = <0>; + }; + + ps_venc0_me1: power-controller@8020 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x8020 4>; + label = "venc0_me1"; + #power-domain-cells = <0>; + power-domains = <&ps_venc0_me0>; + #reset-cells = <0>; + }; +}; + +&pmgr_mini { + ps_debug_gated: power-controller@0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x0 4>; + label = "debug_gated"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_nub_spmi_ahb: power-controller@58 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x58 4>; + label = "nub_spmi_ahb"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_nub_spmi0: power-controller@60 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x60 4>; + label = "nub_spmi0"; + #power-domain-cells = <0>; + power-domains = <&ps_nub_spmi_ahb>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_nub_spmi_a0: power-controller@68 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x68 4>; + label = "nub_spmi_a0"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_nub_spmi_a1: power-controller@70 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x70 4>; + label = "nub_spmi_a1"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_nub_spmi_a2: power-controller@78 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x78 4>; + label = "nub_spmi_a2"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_nub_spi0: power-controller@80 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x80 4>; + label = "nub_spi0"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_nub_aon: power-controller@88 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x88 4>; + label = "nub_aon"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_nub_gpio: power-controller@90 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x90 4>; + label = "nub_gpio"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_nub_ocla: power-controller@98 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x98 4>; + label = "nub_ocla"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_atc0_common_dp: power-controller@a0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xa0 4>; + label = "atc0_common_dp"; + #power-domain-cells = <0>; + #reset-cells = <0>; + }; + + ps_atc1_common_dp: power-controller@a8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xa8 4>; + label = "atc1_common_dp"; + #power-domain-cells = <0>; + #reset-cells = <0>; + }; + + ps_atc2_common_dp: power-controller@b0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xb0 4>; + label = "atc2_common_dp"; + #power-domain-cells = <0>; + #reset-cells = <0>; + }; + + ps_atc3_common_dp: power-controller@b8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xb8 4>; + label = "atc3_common_dp"; + #power-domain-cells = <0>; + #reset-cells = <0>; + }; + + ps_nub_spmi1: power-controller@c0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xc0 4>; + label = "nub_spmi1"; + #power-domain-cells = <0>; + power-domains = <&ps_nub_spmi_ahb>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_atc0_usb_aon: power-controller@c8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xc8 4>; + label = "atc0_usb_aon"; + #power-domain-cells = <0>; + #reset-cells = <0>; + }; + + ps_atc1_usb_aon: power-controller@d0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xd0 4>; + label = "atc1_usb_aon"; + #power-domain-cells = <0>; + #reset-cells = <0>; + }; + + ps_atc2_usb_aon: power-controller@d8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xd8 4>; + label = "atc2_usb_aon"; + #power-domain-cells = <0>; + #reset-cells = <0>; + }; + + ps_atc3_usb_aon: power-controller@e0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xe0 4>; + label = "atc3_usb_aon"; + #power-domain-cells = <0>; + #reset-cells = <0>; + }; + + ps_nub_spmi2: power-controller@e8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xe8 4>; + label = "nub_spmi2"; + #power-domain-cells = <0>; + power-domains = <&ps_nub_spmi_ahb>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_nub_spmi3: power-controller@f0 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xf0 4>; + label = "nub_spmi3"; + #power-domain-cells = <0>; + power-domains = <&ps_nub_spmi_ahb>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_nub_spmi4: power-controller@f8 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0xf8 4>; + label = "nub_spmi4"; + #power-domain-cells = <0>; + power-domains = <&ps_nub_spmi_ahb>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_nub_fabric: power-controller@100 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x100 4>; + label = "nub_fabric"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_nub_sram: power-controller@108 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x108 4>; + label = "nub_sram"; + #power-domain-cells = <0>; + power-domains = <&ps_nub_fabric>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_debug_switch: power-controller@110 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x110 4>; + label = "debug_switch"; + #power-domain-cells = <0>; + #reset-cells = <0>; + apple,always-on; + }; + + ps_atc0_usb: power-controller@118 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x118 4>; + label = "atc0_usb"; + #power-domain-cells = <0>; + power-domains = <&ps_atc0_common>, <&ps_atc0_usb_aon>; + #reset-cells = <0>; + }; + + ps_atc1_usb: power-controller@120 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x120 4>; + label = "atc1_usb"; + #power-domain-cells = <0>; + power-domains = <&ps_atc1_common>, <&ps_atc1_usb_aon>; + #reset-cells = <0>; + }; + + ps_atc2_usb: power-controller@140 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x140 4>; + label = "atc2_usb"; + #power-domain-cells = <0>; + power-domains = <&ps_atc2_common>, <&ps_atc2_usb_aon>; + #reset-cells = <0>; + }; + + ps_atc3_usb: power-controller@148 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x148 4>; + label = "atc3_usb"; + #power-domain-cells = <0>; + power-domains = <&ps_atc3_common>, <&ps_atc3_usb_aon>; + #reset-cells = <0>; + }; + + ps_atc0_phymxwrap: power-controller@150 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x150 4>; + label = "atc0_phymxwrap"; + #power-domain-cells = <0>; + power-domains = <&ps_atc0_common>, <&ps_atc0_usb_aon>; + #reset-cells = <0>; + }; + + ps_atc1_phymxwrap: power-controller@158 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x158 4>; + label = "atc1_phymxwrap"; + #power-domain-cells = <0>; + power-domains = <&ps_atc1_common>, <&ps_atc1_usb_aon>; + #reset-cells = <0>; + }; + + ps_atc2_phymxwrap: power-controller@160 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x160 4>; + label = "atc2_phymxwrap"; + #power-domain-cells = <0>; + power-domains = <&ps_atc2_common>, <&ps_atc2_usb_aon>; + #reset-cells = <0>; + }; + + ps_atc3_phymxwrap: power-controller@168 { + compatible = "apple,t6041-pmgr-pwrstate", "apple,t8103-pmgr-pwrstate"; + reg = <0x168 4>; + label = "atc3_phymxwrap"; + #power-domain-cells = <0>; + power-domains = <&ps_atc3_common>, <&ps_atc3_usb_aon>; + #reset-cells = <0>; + }; +}; diff --git a/arch/arm64/boot/dts/apple/t6041.dtsi b/arch/arm64/boot/dts/apple/t6041.dtsi new file mode 100644 index 000000000000..258048167df6 --- /dev/null +++ b/arch/arm64/boot/dts/apple/t6041.dtsi @@ -0,0 +1,713 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* + * Apple T6041 "M4 Max" SoC + * + * Copyright The Asahi Linux Contributors + */ + +#include +#include + +/ { + compatible = "apple,t6041", "apple,arm-platform"; + + #address-cells = <2>; + #size-cells = <2>; + + aliases { + }; + + clkref: clock-ref { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <24000000>; + clock-output-names = "clkref"; + }; + + 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_p00>; + }; + + core1 { + cpu = <&cpu_p01>; + }; + + core2 { + cpu = <&cpu_p02>; + }; + + core3 { + cpu = <&cpu_p03>; + }; + + core4 { + cpu = <&cpu_p04>; + }; + + core5 { + cpu = <&cpu_p05>; + }; + }; + + cluster2 { + core0 { + cpu = <&cpu_p10>; + }; + + core1 { + cpu = <&cpu_p11>; + }; + + core2 { + cpu = <&cpu_p12>; + }; + + core3 { + cpu = <&cpu_p13>; + }; + + core4 { + cpu = <&cpu_p14>; + }; + + core5 { + cpu = <&cpu_p15>; + }; + }; + }; + + cpu_e0: cpu@0 { + device_type = "cpu"; + compatible = "apple,brava-e"; + reg = <0x0 0x0>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <10000>; + i-cache-size = <20000>; + next-level-cache = <&l2_cache_0>; + }; + + cpu_e1: cpu@1 { + device_type = "cpu"; + compatible = "apple,brava-e"; + reg = <0x0 0x1>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <10000>; + i-cache-size = <20000>; + next-level-cache = <&l2_cache_0>; + }; + + cpu_e2: cpu@2 { + device_type = "cpu"; + compatible = "apple,brava-e"; + reg = <0x0 0x2>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <10000>; + i-cache-size = <20000>; + next-level-cache = <&l2_cache_0>; + }; + + cpu_e3: cpu@3 { + device_type = "cpu"; + compatible = "apple,brava-e"; + reg = <0x0 0x3>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <10000>; + i-cache-size = <20000>; + next-level-cache = <&l2_cache_0>; + }; + + cpu_p00: cpu@10100 { + device_type = "cpu"; + compatible = "apple,brava-p"; + reg = <0x0 0x10100>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <20000>; + i-cache-size = <30000>; + next-level-cache = <&l2_cache_1>; + }; + + cpu_p01: cpu@10101 { + device_type = "cpu"; + compatible = "apple,brava-p"; + reg = <0x0 0x10101>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <20000>; + i-cache-size = <30000>; + next-level-cache = <&l2_cache_1>; + }; + + cpu_p02: cpu@10102 { + device_type = "cpu"; + compatible = "apple,brava-p"; + reg = <0x0 0x10102>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <20000>; + i-cache-size = <30000>; + next-level-cache = <&l2_cache_1>; + }; + + cpu_p03: cpu@10103 { + device_type = "cpu"; + compatible = "apple,brava-p"; + reg = <0x0 0x10103>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <20000>; + i-cache-size = <30000>; + next-level-cache = <&l2_cache_1>; + }; + + cpu_p04: cpu@10104 { + device_type = "cpu"; + compatible = "apple,brava-p"; + reg = <0x0 0x10104>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <20000>; + i-cache-size = <30000>; + next-level-cache = <&l2_cache_1>; + }; + + cpu_p05: cpu@10105 { + device_type = "cpu"; + compatible = "apple,brava-p"; + reg = <0x0 0x10105>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <20000>; + i-cache-size = <30000>; + next-level-cache = <&l2_cache_1>; + }; + + cpu_p10: cpu@10200 { + device_type = "cpu"; + compatible = "apple,brava-p"; + reg = <0x0 0x10200>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <20000>; + i-cache-size = <30000>; + next-level-cache = <&l2_cache_2>; + }; + + cpu_p11: cpu@10201 { + device_type = "cpu"; + compatible = "apple,brava-p"; + reg = <0x0 0x10201>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <20000>; + i-cache-size = <30000>; + next-level-cache = <&l2_cache_2>; + }; + + cpu_p12: cpu@10202 { + device_type = "cpu"; + compatible = "apple,brava-p"; + reg = <0x0 0x10202>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <20000>; + i-cache-size = <30000>; + next-level-cache = <&l2_cache_2>; + }; + + cpu_p13: cpu@10203 { + device_type = "cpu"; + compatible = "apple,brava-p"; + reg = <0x0 0x10203>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <20000>; + i-cache-size = <30000>; + next-level-cache = <&l2_cache_2>; + }; + + cpu_p14: cpu@10204 { + device_type = "cpu"; + compatible = "apple,brava-p"; + reg = <0x0 0x10204>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <20000>; + i-cache-size = <30000>; + next-level-cache = <&l2_cache_2>; + }; + + cpu_p15: cpu@10205 { + device_type = "cpu"; + compatible = "apple,brava-p"; + reg = <0x0 0x10205>; + cpu-release-addr = <0 0>; /* To be filled by loader */ + enable-method = "spin-table"; + + d-cache-size = <20000>; + i-cache-size = <30000>; + next-level-cache = <&l2_cache_2>; + }; + + l2_cache_0: l2-cache-0 { + compatible = "cache"; + cache-level = <2>; + cache-size = <0x400000>; + cache-unified; + }; + + l2_cache_1: l2-cache-1 { + compatible = "cache"; + cache-level = <2>; + cache-size = <0x1000000>; + cache-unified; + }; + + l2_cache_2: l2-cache-2 { + compatible = "cache"; + cache-level = <2>; + cache-size = <0x1000000>; + cache-unified; + }; + }; + + soc { + compatible = "simple-bus"; + ranges; + #address-cells = <2>; + nonposted-mmio; + #size-cells = <2>; + + pmgr_gfx: power-management@288e80000 { + compatible = "apple,t6041-pmgr", "apple,t8103-pmgr", + "syscon", "simple-mfd"; + reg = <0x2 0x88e80000 0 0x4000>; + #address-cells = <1>; + #size-cells = <1>; + }; + + i2c0: i2c@429010000 { + compatible = "apple,t6041-i2c", "apple,t8103-i2c"; + reg = <0x4 0x29010000 0x0 0x4000>; + + #address-cells = <0x1>; + clocks = <&clkref>; + interrupt-parent = <&aic>; + interrupts = ; + pinctrl-0 = <&i2c0_pins>; + pinctrl-names = "default"; + power-domains = <&ps_i2c0>; + #size-cells = <0x0>; + + status = "disabled"; + }; + + i2c1: i2c@429014000 { + compatible = "apple,t6041-i2c", "apple,t8103-i2c"; + reg = <0x4 0x29014000 0x0 0x4000>; + + #address-cells = <0x1>; + clocks = <&clkref>; + interrupt-parent = <&aic>; + interrupts = ; + pinctrl-0 = <&i2c1_pins>; + pinctrl-names = "default"; + power-domains = <&ps_i2c1>; + #size-cells = <0x0>; + + status = "disabled"; + }; + + i2c2: i2c@429018000 { + compatible = "apple,t6041-i2c", "apple,t8103-i2c"; + reg = <0x4 0x29018000 0x0 0x4000>; + + #address-cells = <0x1>; + clocks = <&clkref>; + interrupt-parent = <&aic>; + interrupts = ; + pinctrl-0 = <&i2c2_pins>; + pinctrl-names = "default"; + power-domains = <&ps_i2c2>; + #size-cells = <0x0>; + + status = "disabled"; + }; + + i2c3: i2c@42901c000 { + compatible = "apple,t6041-i2c", "apple,t8103-i2c"; + reg = <0x4 0x2901c000 0x0 0x4000>; + + #address-cells = <0x1>; + clocks = <&clkref>; + interrupt-parent = <&aic>; + interrupts = ; + pinctrl-0 = <&i2c3_pins>; + pinctrl-names = "default"; + power-domains = <&ps_i2c3>; + #size-cells = <0x0>; + + status = "disabled"; + }; + + i2c4: i2c@429020000 { + compatible = "apple,t6041-i2c", "apple,t8103-i2c"; + reg = <0x4 0x29020000 0x0 0x4000>; + + #address-cells = <0x1>; + clocks = <&clkref>; + interrupt-parent = <&aic>; + interrupts = ; + pinctrl-0 = <&i2c4_pins>; + pinctrl-names = "default"; + power-domains = <&ps_i2c4>; + #size-cells = <0x0>; + + status = "disabled"; + }; + + i2c5: i2c@429024000 { + compatible = "apple,t6041-i2c", "apple,t8103-i2c"; + reg = <0x4 0x29024000 0x0 0x4000>; + + #address-cells = <0x1>; + clocks = <&clkref>; + interrupt-parent = <&aic>; + interrupts = ; + pinctrl-0 = <&i2c5_pins>; + pinctrl-names = "default"; + power-domains = <&ps_i2c5>; + #size-cells = <0x0>; + + status = "disabled"; + }; + + i2c6: i2c@429028000 { + compatible = "apple,t6041-i2c", "apple,t8103-i2c"; + reg = <0x4 0x29028000 0x0 0x4000>; + + #address-cells = <0x1>; + clocks = <&clkref>; + interrupt-parent = <&aic>; + interrupts = ; + pinctrl-0 = <&i2c6_pins>; + pinctrl-names = "default"; + power-domains = <&ps_i2c6>; + #size-cells = <0x0>; + + status = "disabled"; + }; + + i2c7: i2c@42902c000 { + compatible = "apple,t6041-i2c", "apple,t8103-i2c"; + reg = <0x4 0x2902c000 0x0 0x4000>; + + #address-cells = <0x1>; + clocks = <&clkref>; + interrupt-parent = <&aic>; + interrupts = ; + pinctrl-0 = <&i2c7_pins>; + pinctrl-names = "default"; + power-domains = <&ps_i2c7>; + #size-cells = <0x0>; + + status = "disabled"; + }; + + i2c8: i2c@429030000 { + compatible = "apple,t6041-i2c", "apple,t8103-i2c"; + reg = <0x4 0x29030000 0x0 0x4000>; + + #address-cells = <0x1>; + clocks = <&clkref>; + interrupt-parent = <&aic>; + interrupts = ; + pinctrl-0 = <&i2c8_pins>; + pinctrl-names = "default"; + power-domains = <&ps_i2c8>; + #size-cells = <0x0>; + + status = "disabled"; + }; + + fpwm0: pwm@429040000 { + compatible = "apple,t6041-fpwm", "apple,s5l-fpwm"; + reg = <0x4 0x29040000 0x0 0x4000>; + + clocks = <&clkref>; + power-domains = <&ps_fpwm0>; + #pwm-cells = <2>; + + status = "disabled"; + }; + + serial0: serial@429200000 { + compatible = "apple,s5l-uart"; + reg = <0x4 0x29200000 0x0 0x1000>; + /* + * TODO: figure out the clocking properly, there may + * be a third selectable clock. + */ + clocks = <&clkref>, <&clkref>; + clock-names = "uart", "clk_uart_baud0"; + interrupt-parent = <&aic>; + interrupts = ; + power-domains = <&ps_uart0>; + reg-io-width = <4>; + + status = "disabled"; + }; + + pmgr: power-management@502280000 { + compatible = "apple,t6041-pmgr", "apple,t8103-pmgr", + "syscon", "simple-mfd"; + reg = <0x5 0x2280000 0 0x14000>; + #address-cells = <1>; + #size-cells = <1>; + }; + + aic: interrupt-controller@502400000 { + compatible = "apple,t6041-aic3", "apple,t8122-aic3"; + reg = <0x5 0x2400000 0x0 0x184000>, + <0x5 0x2440000 0x0 0x4>; + reg-names = "core", "event"; + #interrupt-cells = <3>; + interrupt-controller; + power-domains = <&ps_aic>; + + affinities { + e-core-pmu-affinity { + cpus = <&cpu_e0 &cpu_e1 + &cpu_e2 &cpu_e3>; + apple,fiq-index = ; + }; + + p-core-pmu-affinity { + cpus = <&cpu_p00 &cpu_p01 &cpu_p02 + &cpu_p03 &cpu_p04 &cpu_p05 + &cpu_p10 &cpu_p11 &cpu_p12 + &cpu_p13 &cpu_p14 &cpu_p15>; + apple,fiq-index = ; + }; + }; + }; + + pmgr1: power-management@502800000 { + compatible = "apple,t6041-pmgr", "apple,t8103-pmgr", + "syscon", "simple-mfd"; + reg = <0x5 0x2800000 0 0xc000>; + #address-cells = <1>; + #size-cells = <1>; + }; + + pinctrl_nub: pinctrl@5081e4000 { + compatible = "apple,t6041-pinctrl", + "apple,t8103-pinctrl"; + reg = <0x5 0x081e4000 0x0 0x4000>; + power-domains = <&ps_nub_gpio>; + + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pinctrl_nub 0 0 61>; + + #interrupt-cells = <2>; + interrupt-controller; + interrupt-parent = <&aic>; + interrupts = , + , + , + , + , + , + ; + + apple,npins = <61>; + }; + + pmgr_mini: power-management@508300000 { + compatible = "apple,t6041-pmgr", "apple,t8103-pmgr", + "syscon", "simple-mfd"; + reg = <0x5 0x8300000 0 0x4000>; + #address-cells = <1>; + #size-cells = <1>; + }; + + wdt: watchdog@50836c000 { + compatible = "apple,t6041-wdt", "apple,t8103-wdt"; + reg = <0x5 0x0836c000 0x0 0x4000>; + clocks = <&clkref>; + interrupt-parent = <&aic>; + interrupts = ; + }; + + pinctrl_smc: pinctrl@50c824000 { + compatible = "apple,t6041-pinctrl", + "apple,t8103-pinctrl"; + reg = <0x5 0x0c824000 0x0 0x4000>; + + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pinctrl_smc 0 0 24>; + + #interrupt-cells = <2>; + interrupt-controller; + interrupt-parent = <&aic>; + interrupts = , + , + , + , + , + , + ; + + apple,npins = <24>; + }; + + pinctrl_aop: pinctrl@510824000 { + compatible = "apple,t6041-pinctrl", + "apple,t8103-pinctrl"; + reg = <0x5 0x10824000 0x0 0x4000>; + + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pinctrl_aop 0 0 85>; + + #interrupt-cells = <2>; + interrupt-controller; + interrupt-parent = <&aic>; + interrupts = , + , + , + , + , + , + ; + + apple,npins = <85>; + }; + + pinctrl_ap: pinctrl@51c000000 { + compatible = "apple,t6041-pinctrl", + "apple,t8103-pinctrl"; + reg = <0x5 0x1c000000 0x0 0x100000>; + power-domains = <&ps_gpio>; + + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pinctrl_ap 0 0 200>; + + #interrupt-cells = <2>; + interrupt-controller; + interrupt-parent = <&aic>; + interrupts = , + , + , + , + , + , + ; + + apple,npins = <200>; + + i2c0_pins: i2c0-pins { + pinmux = , + ; + }; + + i2c1_pins: i2c1-pins { + pinmux = , + ; + }; + + i2c2_pins: i2c2-pins { + pinmux = , + ; + }; + + i2c3_pins: i2c3-pins { + pinmux = , + ; + }; + + i2c4_pins: i2c4-pins { + pinmux = , + ; + }; + + i2c5_pins: i2c5-pins { + pinmux = , + ; + }; + + i2c6_pins: i2c6-pins { + pinmux = , + ; + }; + + i2c7_pins: i2c7-pins { + pinmux = , + ; + }; + + i2c8_pins: i2c8-pins { + pinmux = , + ; + }; + }; + }; + + timer { + compatible = "arm,armv8-timer"; + interrupt-parent = <&aic>; + interrupts = , + , + , + ; + interrupt-names = "phys", "virt", "hyp-phys", "hyp-virt"; + }; +}; + +#include "t6041-pmgr.dtsi" diff --git a/arch/arm64/boot/dts/apple/t604x-j575-j773.dtsi b/arch/arm64/boot/dts/apple/t604x-j575-j773.dtsi new file mode 100644 index 000000000000..57573550cfbb --- /dev/null +++ b/arch/arm64/boot/dts/apple/t604x-j575-j773.dtsi @@ -0,0 +1,47 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* + * This file contains the parts common to the M4 Pro Mac mini (J773s) + * and M4 Max Mac Studio (J575c). + * + * target-type: J575c / J773s + * + * Copyright The Asahi Linux Contributors + */ + +/ { + chassis-type = "desktop"; + + aliases { + serial0 = &serial0; + }; + + chosen { + ranges; + #address-cells = <2>; + #size-cells = <2>; + + stdout-path = "serial0"; + + framebuffer0: framebuffer@0 { + compatible = "apple,simple-framebuffer", + "simple-framebuffer"; + reg = <0 0 0 0>; /* To be filled by loader */ + /* Format properties will be added by loader */ + + status = "disabled"; + }; + }; + + memory@10000000000 { + device_type = "memory"; + reg = <0x100 0 0x2 0>; /* To be filled by loader */ + }; +}; + +&serial0 { + status = "okay"; +}; + +/delete-node/ &ps_isp_cpu; +/delete-node/ &ps_isp_fe; +/delete-node/ &ps_isp_sys; diff --git a/arch/arm64/boot/dts/apple/t604x-j614-j616.dtsi b/arch/arm64/boot/dts/apple/t604x-j614-j616.dtsi new file mode 100644 index 000000000000..a64797518eae --- /dev/null +++ b/arch/arm64/boot/dts/apple/t604x-j614-j616.dtsi @@ -0,0 +1,65 @@ +// SPDX-License-Identifier: GPL-2.0+ OR MIT +/* + * MacBook Pro (14/16-inch, 2024) + * + * This file contains the parts common to J614 and J616 devices with both + * M4 Pro and M4 Max. + * + * target-type: J614s / J614c / J616s / J616c + * + * Copyright The Asahi Linux Contributors + */ + +#include + +/ { + chassis-type = "laptop"; + + aliases { + serial0 = &serial0; + }; + + chosen { + ranges; + #address-cells = <2>; + #size-cells = <2>; + + 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_fe>; + /* Format properties will be added by loader */ + + status = "disabled"; + }; + }; + + led-controller { + compatible = "pwm-leds"; + + led-0 { + color = ; + default-state = "keep"; + function = LED_FUNCTION_KBD_BACKLIGHT; + label = "kbd_backlight"; + max-brightness = <255>; + pwms = <&fpwm0 0 40000>; + }; + }; + + memory@10000000000 { + device_type = "memory"; + reg = <0x100 0 0x2 0>; /* To be filled by loader */ + }; +}; + +&fpwm0 { + status = "okay"; +}; + +&serial0 { + status = "okay"; +}; -- 2.55.0