arm: dts: apple: Update Apple M1 device trees

This synchronizes the device trees with those that are in the
process of being upstreamed into Linux. This is mostly the
current state of the device trees on the asahilinux branch
with a few extra bits used by OpenBSD. This includes device
trees for machines that were still missing.

There are still some differences that will hopefully be resolved
soon.

Signed-off-by: Mark Kettenis <kettenis@openbsd.org>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
diff --git a/arch/arm/dts/t8103-j274.dts b/arch/arm/dts/t8103-j274.dts
index aef1ae2..9bc592b 100644
--- a/arch/arm/dts/t8103-j274.dts
+++ b/arch/arm/dts/t8103-j274.dts
@@ -10,126 +10,120 @@
 /dts-v1/;
 
 #include "t8103.dtsi"
+#include "t8103-jxxx.dtsi"
 
 / {
 	compatible = "apple,j274", "apple,t8103", "apple,arm-platform";
 	model = "Apple Mac mini (M1, 2020)";
 
 	aliases {
-		serial0 = &serial0;
-		ethernet0 = &eth0;
-		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@800000000 {
-		device_type = "memory";
-		reg = <0x8 0 0x2 0>; /* To be filled by loader */
+		ethernet0 = &ethernet0;
 	};
 };
 
-&serial0 {
-	status = "okay";
+&wifi0 {
+	brcm,board-type = "apple,atlantisb";
 };
 
-&pcie0_dart_0 {
-	status = "okay";
-};
+/*
+ * Provide labels for the USB type C ports.
+ */
 
-&pcie0_dart_1 {
-	status = "okay";
+&typec0 {
+	label = "USB-C Back-left";
 };
 
-&pcie0_dart_2 {
-	status = "okay";
+&typec1 {
+	label = "USB-C Back-right";
 };
 
-&pcie0 {
-	status = "okay";
+/*
+ * Force the bus number assignments so that we can declare some of the
+ * on-board devices and properties that are populated by the bootloader
+ * (such as MAC addresses).
+ */
 
-	pci0: pci@0,0 {
-		device_type = "pci";
-		reg = <0x0 0x0 0x0 0x0 0x0>;
-		pwren-gpios = <&smc 13 0>;
-		reset-gpios = <&pinctrl_ap 152 0>;
-		max-link-speed = <2>;
+&port01 {
+	bus-range = <2 2>;
+};
 
-		#address-cells = <3>;
-		#size-cells = <2>;
-		ranges;
+&port02 {
+	bus-range = <3 3>;
+	ethernet0: ethernet@0,0 {
+		reg = <0x30000 0x0 0x0 0x0 0x0>;
+		/* To be filled by the loader */
+		local-mac-address = [00 10 18 00 00 00];
 	};
+};
 
-	pci1: pci@1,0 {
-		device_type = "pci";
-		reg = <0x800 0x0 0x0 0x0 0x0>;
-		reset-gpios = <&pinctrl_ap 153 0>;
-		max-link-speed = <2>;
+&i2c1 {
+	clock-frequency = <50000>;
 
-		#address-cells = <3>;
-		#size-cells = <2>;
-		ranges;
+	speaker_amp: codec@31 {
+		compatible = "ti,tas5770l", "ti,tas2770";
+		reg = <0x31>;
+		reset-gpios = <&pinctrl_ap 181 GPIO_ACTIVE_HIGH>;
+		#sound-dai-cells = <0>;
 	};
+};
 
-	pci2: pci@2,0 {
-		device_type = "pci";
-		reg = <0x1000 0x0 0x0 0x0 0x0>;
-		reset-gpios = <&pinctrl_ap 33 0>;
-		max-link-speed = <1>;
+&i2c2 {
+	status = "okay";
 
-		#address-cells = <3>;
-		#size-cells = <2>;
-		ranges;
-	};
-};
+	clock-frequency = <50000>;
 
-&pci0 {
-	wifi0: network@0,0 {
-		reg = <0x10000 0x0 0x0 0x0 0x0>;
-		local-mac-address = [00 00 00 00 00 00];
+	jack_codec: codec@48 {
+		compatible = "cirrus,cs42l83", "cirrus,cs42l42";
+		reg = <0x48>;
+		reset-gpios = <&pinctrl_nub 11 GPIO_ACTIVE_HIGH>;
+		interrupt-parent = <&pinctrl_ap>;
+		interrupts = <183 IRQ_TYPE_LEVEL_LOW>;
+		#sound-dai-cells = <0>;
+		cirrus,ts-inv = <1>;
 	};
 };
 
-&pci2 {
-	eth0: ethernet@0,0 {
-		reg = <0x30000 0x0 0x0 0x0 0x0>;
-		local-mac-address = [00 00 00 00 00 00];
-	};
-};
+/ {
+	sound {
+		compatible = "simple-audio-card";
+		simple-audio-card,name = "Mac mini integrated audio";
+		#address-cells = <1>;
+		#size-cells = <0>;
 
-&dwc3_0_dart_0 {
-	status = "okay";
-};
+		simple-audio-card,dai-link@0 {
+			reg = <0>;
+			format = "left_j";
+			tdm-slot-width = <32>;
+			mclk-fs = <64>;
 
-&dwc3_0_dart_1 {
-	status = "okay";
-};
+			link0_cpu: cpu {
+				sound-dai = <&mca 0>;
+				bitclock-master;
+				frame-master;
+			};
 
-&dwc3_0 {
-	status = "okay";
-};
+			link0_codec: codec {
+				sound-dai = <&speaker_amp>;
+			};
+		};
 
-&dwc3_1_dart_0 {
-	status = "okay";
-};
+		simple-audio-card,dai-link@1 {
+			bitclock-inversion;
+			frame-inversion;
+			reg = <1>;
+			format = "i2s";
+			mclk-fs = <64>;
+			tdm-slot-width = <32>;
 
-&dwc3_1_dart_1 {
-	status = "okay";
-};
+			link1_cpu: cpu {
+				sound-dai = <&mca 2>;
+				bitclock-master;
+				frame-master;
+			};
 
-&dwc3_1 {
-	status = "okay";
+			link1_codec: codec {
+				sound-dai = <&jack_codec>;
+			};
+		};
+	};
 };