Skip to content
6 changes: 6 additions & 0 deletions arch/arm64/boot/dts/apple/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -120,3 +120,9 @@ dtb-$(CONFIG_ARCH_APPLE) += t8142-j813.dtb
dtb-$(CONFIG_ARCH_APPLE) += t8152-j873g.dtb

# Explicit cold-ANE lead test; never select as the production board DTB.

dtb-$(CONFIG_ARCH_APPLE) += t6040-j773s.dtb

dtb-$(CONFIG_ARCH_APPLE) += t6041-j614c.dtb

dtb-$(CONFIG_ARCH_APPLE) += t6041-j575c.dtb
40 changes: 40 additions & 0 deletions arch/arm64/boot/dts/apple/t6040-j773s-audio.dtsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/* J773S audio endpoints. Keep the routes and hardware disabled until qualified. */

#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>

/ {
speaker_sdz: regulator-speaker-sdz {
compatible = "regulator-fixed";
regulator-name = "speaker-sdz";
gpios = <&pinctrl_ap 54 GPIO_ACTIVE_HIGH>;
enable-active-high;
status = "disabled";
};
};

&i2c1 {
audio_speaker: codec@38 {
compatible = "ti,sn012776", "ti,tas2764";
reg = <0x38>;
#sound-dai-cells = <0>;
SDZ-supply = <&speaker_sdz>;
apple,sdz-group-fail-closed;
interrupts-extended = <&pinctrl_ap 55 IRQ_TYPE_LEVEL_LOW>;
status = "disabled";
};

};

&i2c2 {
audio_codec_output: codec@4b {
compatible = "cirrus,cs42l84";
reg = <0x4b>;
#sound-dai-cells = <0>;
reset-gpios = <&pinctrl_nub 58 GPIO_ACTIVE_HIGH>;
interrupts-extended = <&pinctrl_ap 106 IRQ_TYPE_LEVEL_LOW>;
status = "disabled";
};

};
58 changes: 58 additions & 0 deletions arch/arm64/boot/dts/apple/t6040-j773s.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
// SPDX-License-Identifier: GPL-2.0+ OR MIT
/* Apple Mac mini (M4 Pro, 2024). Unqualified peripherals remain disabled. */

/dts-v1/;

#include "t6040.dtsi"

/ {
compatible = "apple,j773s", "apple,t6040", "apple,arm-platform";
model = "Apple Mac mini (M4 Pro, 2024)";
chassis-type = "desktop";

aliases {
serial0 = &serial0;
sep = &sep;
pmp = &pmp;
gpu = &gpu;
};

chosen {
#address-cells = <2>;
#size-cells = <2>;
ranges;
stdout-path = "serial0:115200n8";

framebuffer0: framebuffer@0 {
compatible = "apple,simple-framebuffer", "simple-framebuffer";
reg = <0 0 0 0>;
/* The loader supplies this boot's framebuffer allocation. */
status = "disabled";
};
};

reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
/* Runtime firmware reservations are supplied by the loader. */
};

memory@0 {
device_type = "memory";
reg = <0 0 0 0>; /* Filled by the loader. */
};
};

&serial0 {
status = "okay";
};

/* These endpoints belong to the laptop board, not the Mac mini. */
/delete-node/ &battery_monitor;
/delete-node/ &hid_mux;
/delete-node/ &audio_low_power_mic;
/delete-node/ &audio_mic_buffer;
/delete-node/ &audio_listening_client;

#include "t6040-j773s-audio.dtsi"
Loading