arm64: dts: apple: Add J314 and J316 devicetrees
authorHector Martin <marcan@marcan.st>
Fri, 16 Sep 2022 14:25:46 +0000 (16:25 +0200)
committerHector Martin <marcan@marcan.st>
Mon, 24 Oct 2022 04:44:22 +0000 (13:44 +0900)
These are the 14-inch and 16-inch 2021 MacBooks, in both M1 Pro and M1
Max variants (t6000 and t6001).

Signed-off-by: Janne Grunau <j@jannau.net>
Acked-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Hector Martin <marcan@marcan.st>
arch/arm64/boot/dts/apple/Makefile
arch/arm64/boot/dts/apple/t6000-j314s.dts [new file with mode: 0644]
arch/arm64/boot/dts/apple/t6000-j316s.dts [new file with mode: 0644]
arch/arm64/boot/dts/apple/t6001-j314c.dts [new file with mode: 0644]
arch/arm64/boot/dts/apple/t6001-j316c.dts [new file with mode: 0644]
arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi [new file with mode: 0644]

index c0510c2..b021931 100644 (file)
@@ -4,3 +4,7 @@ dtb-$(CONFIG_ARCH_APPLE) += t8103-j293.dtb
 dtb-$(CONFIG_ARCH_APPLE) += t8103-j313.dtb
 dtb-$(CONFIG_ARCH_APPLE) += t8103-j456.dtb
 dtb-$(CONFIG_ARCH_APPLE) += t8103-j457.dtb
+dtb-$(CONFIG_ARCH_APPLE) += t6000-j314s.dtb
+dtb-$(CONFIG_ARCH_APPLE) += t6001-j314c.dtb
+dtb-$(CONFIG_ARCH_APPLE) += t6000-j316s.dtb
+dtb-$(CONFIG_ARCH_APPLE) += t6001-j316c.dtb
diff --git a/arch/arm64/boot/dts/apple/t6000-j314s.dts b/arch/arm64/boot/dts/apple/t6000-j314s.dts
new file mode 100644 (file)
index 0000000..c9e1928
--- /dev/null
@@ -0,0 +1,18 @@
+// SPDX-License-Identifier: GPL-2.0+ OR MIT
+/*
+ * MacBook Pro (14-inch, M1 Pro, 2021)
+ *
+ * target-type: J314s
+ *
+ * Copyright The Asahi Linux Contributors
+ */
+
+/dts-v1/;
+
+#include "t6000.dtsi"
+#include "t600x-j314-j316.dtsi"
+
+/ {
+       compatible = "apple,j314s", "apple,t6000", "apple,arm-platform";
+       model = "Apple MacBook Pro (14-inch, M1 Pro, 2021)";
+};
diff --git a/arch/arm64/boot/dts/apple/t6000-j316s.dts b/arch/arm64/boot/dts/apple/t6000-j316s.dts
new file mode 100644 (file)
index 0000000..ff1803c
--- /dev/null
@@ -0,0 +1,18 @@
+// SPDX-License-Identifier: GPL-2.0+ OR MIT
+/*
+ * MacBook Pro (16-inch, M1 Pro, 2021)
+ *
+ * target-type: J316s
+ *
+ * Copyright The Asahi Linux Contributors
+ */
+
+/dts-v1/;
+
+#include "t6000.dtsi"
+#include "t600x-j314-j316.dtsi"
+
+/ {
+       compatible = "apple,j316s", "apple,t6000", "apple,arm-platform";
+       model = "Apple MacBook Pro (16-inch, M1 Pro, 2021)";
+};
diff --git a/arch/arm64/boot/dts/apple/t6001-j314c.dts b/arch/arm64/boot/dts/apple/t6001-j314c.dts
new file mode 100644 (file)
index 0000000..1761d15
--- /dev/null
@@ -0,0 +1,18 @@
+// SPDX-License-Identifier: GPL-2.0+ OR MIT
+/*
+ * MacBook Pro (14-inch, M1 Max, 2021)
+ *
+ * target-type: J314c
+ *
+ * Copyright The Asahi Linux Contributors
+ */
+
+/dts-v1/;
+
+#include "t6001.dtsi"
+#include "t600x-j314-j316.dtsi"
+
+/ {
+       compatible = "apple,j314c", "apple,t6001", "apple,arm-platform";
+       model = "Apple MacBook Pro (14-inch, M1 Max, 2021)";
+};
diff --git a/arch/arm64/boot/dts/apple/t6001-j316c.dts b/arch/arm64/boot/dts/apple/t6001-j316c.dts
new file mode 100644 (file)
index 0000000..750e9be
--- /dev/null
@@ -0,0 +1,18 @@
+// SPDX-License-Identifier: GPL-2.0+ OR MIT
+/*
+ * MacBook Pro (16-inch, M1 Max, 2021)
+ *
+ * target-type: J316c
+ *
+ * Copyright The Asahi Linux Contributors
+ */
+
+/dts-v1/;
+
+#include "t6001.dtsi"
+#include "t600x-j314-j316.dtsi"
+
+/ {
+       compatible = "apple,j316c", "apple,t6001", "apple,arm-platform";
+       model = "Apple MacBook Pro (16-inch, M1 Max, 2021)";
+};
diff --git a/arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi b/arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi
new file mode 100644 (file)
index 0000000..8079200
--- /dev/null
@@ -0,0 +1,110 @@
+// SPDX-License-Identifier: GPL-2.0+ OR MIT
+/*
+ * MacBook Pro (14/16-inch, 2021)
+ *
+ * This file contains the parts common to J314 and J316 devices with both t6000 and t6001.
+ *
+ * target-type: J314s / J314c / J316s / J316c
+ *
+ * Copyright The Asahi Linux Contributors
+ */
+
+/ {
+       aliases {
+               serial0 = &serial0;
+               wifi0 = &wifi0;
+       };
+
+       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 */
+                       /* 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";
+};
+
+/* USB Type C */
+&i2c0 {
+       hpm0: usb-pd@38 {
+               compatible = "apple,cd321x";
+               reg = <0x38>;
+               interrupt-parent = <&pinctrl_ap>;
+               interrupts = <174 IRQ_TYPE_LEVEL_LOW>;
+               interrupt-names = "irq";
+       };
+
+       hpm1: usb-pd@3f {
+               compatible = "apple,cd321x";
+               reg = <0x3f>;
+               interrupt-parent = <&pinctrl_ap>;
+               interrupts = <174 IRQ_TYPE_LEVEL_LOW>;
+               interrupt-names = "irq";
+       };
+
+       hpm2: usb-pd@3b {
+               compatible = "apple,cd321x";
+               reg = <0x3b>;
+               interrupt-parent = <&pinctrl_ap>;
+               interrupts = <174 IRQ_TYPE_LEVEL_LOW>;
+               interrupt-names = "irq";
+       };
+
+       /* MagSafe port */
+       hpm5: usb-pd@3a {
+               compatible = "apple,cd321x";
+               reg = <0x3a>;
+               interrupt-parent = <&pinctrl_ap>;
+               interrupts = <174 IRQ_TYPE_LEVEL_LOW>;
+               interrupt-names = "irq";
+       };
+};
+
+/* PCIe devices */
+&port00 {
+       /* WLAN */
+       bus-range = <1 1>;
+       wifi0: wifi@0,0 {
+               reg = <0x10000 0x0 0x0 0x0 0x0>;
+               /* To be filled by the loader */
+               local-mac-address = [00 10 18 00 00 10];
+       };
+};
+
+&port01 {
+       /* SD card reader */
+       bus-range = <2 2>;
+       sdhci0: mmc@0,0 {
+               compatible = "pci17a0,9755";
+               reg = <0x20000 0x0 0x0 0x0 0x0>;
+               cd-inverted;
+               wp-inverted;
+       };
+};
+
+&pcie0_dart_2 {
+       status = "disabled";
+};
+
+&pcie0_dart_3 {
+       status = "disabled";
+};
+
+/delete-node/ &port02;
+/delete-node/ &port03;