Repository navigation
arm64: dts: apple: t8142-j704: enable the MacBook Pro (14-inch, M5) - #1231
Merged
RyanTheTide merged 8 commits intoNov 9, 2026
Merged
Conversation
The J704 entry names the board only by its code. It is the MacBook Pro (14-inch, M5, 2025), as its device tree's model now says. Signed-off-by: Dmitriy <noc@pimk.in> Assisted-by: LLM
The M5 (T8142) watchdog is the T8103 one, as on the other recent SoCs. The J704 and J813 device trees use apple,t8142-wdt. Signed-off-by: Dmitriy <noc@pimk.in> Assisted-by: LLM
The M5 (T8142) QSPI controller is the T8140 one, as on T6050 and T8152. The J704 and J813 device trees use apple,t8142-qspi. Signed-off-by: Dmitriy <noc@pimk.in> Assisted-by: LLM
The M5 (T8142) PMP takes the T8140 firmware interface, so it falls back to apple,t8140-pmp-v2. The J704 and J813 device trees use that pair. Signed-off-by: Dmitriy <noc@pimk.in> Assisted-by: LLM
The M5 (T8142) display subsystem takes the same description as the T8140 one. The J704 and J813 device trees use apple,t8142-display-subsystem with apple,display-subsystem. Signed-off-by: Dmitriy <noc@pimk.in> Assisted-by: LLM
The MTP DART's second register region is its DAPF (ADT dart-mtp instance DAPF). The DART binding requires reg-names once a second region is listed. Signed-off-by: Dmitriy <noc@pimk.in> Assisted-by: LLM
The J704 board file includes the disabled T8142 inventory. Enable what runs on this machine and describe the board's own devices from its Apple Device Tree: - The ten CPUs with cpufreq and the PMC voters: E-cluster states up to 3048 MHz and P-cluster states up to 4608 MHz. - AIC, the timer, the Samsung UART as the console (serial0, 115200 baud) and the dockchannel UART (serial1). - PMGR power domains, the PMP and the SMC: battery, AC, fan and temperatures, the power button and lid, reboot and the RTC through the PMU's rtc_scrpad offset. - The keyboard and trackpad on the MTP, with the trackpad firmware name and the keyboard backlight at half brightness. - The three Type-C ports: ATC0 and ATC1 on nub SPMI A0, ATC3 on nub SPMI A1. ATC2 drives the HDMI port and is left out. - The AVD video decoder. - The internal DCP and the 14.2" mini-LED panel, disabled: the loader enables them for a display session it hands over. On macOS 27.0 firmware the panel stays on the boot framebuffer until the DCP driver runs that firmware. The inventory's DARTs are used through their labels. Each USB DART node lists both of its instances in reg; the board keeps instance 0 there and adds instance 1 as its own node, as on the J813. Signed-off-by: Dmitriy <noc@pimk.in> Assisted-by: LLM
…eader Describe the internal ANS2 NVMe SSD as on J813. This machine's ANS firmware ends the nvme register block at 0x10000 (ADT ans reg[9]) and keeps the linear submission queue doorbells in the NVMMU block, which the driver detects from the window size. Describe the internal PCIe as J813 describes its N1: the boot loader trains the links and Linux drives the root ports as a generic ECAM host. Port 0 carries the BCM4388 Wi-Fi/Bluetooth, port 2 the GL9755 SD card reader. Both ports' MSI maps share one AIC range, so one apple,t8142-pcie-msi controller lists both. The ports use the inventory's pcie0 and pcie2 DARTs, stream 0. Signed-off-by: Dmitriy <noc@pimk.in> Assisted-by: LLM
RyanTheTide
merged commit Nov 9, 2026
8f48481
into
aurora-silicon:integration/aurora
1 of 2 checks passed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The J704 board file now includes the disabled T8142 inventory from #1153. This enables what runs on the J704 and adds the board's own devices from its ADT:
The inventory's DARTs are used through their labels. The USB DART nodes list both instances in
reg; the board keeps instance 0 there and adds instance 1 as its own node, as the J813 does. The binding entry gets the machine's name, matching the new model string. The wdt, qspi, PMP and display-subsystem bindings get their T8142 compatibles, which the J813 already uses, and the inventory's MTP DART getsreg-namesfor its DAPF region (ADTdart-mtpinstances DART, DAPF).Not working yet: on the macOS 27.0 firmware the internal panel stays on the boot framebuffer; the DCP needs the firmware-27 path (#1012 / #1135).
Tested on: J704 (macOS 27.0 stub), 2026-11-08,
7.3.0-j704en= integration/aurora bdd4621 + this PR. All ten CPUs with schedutil (E up to 3048 MHz, P up to 4608 MHz); booted from NVMe, 2.0 GB/s direct read; the internal keyboard in the U-Boot console and then in Linux (Retaining the live coprocessor bypass,adopted the running RTKit session), trackpad; Wi-Fi (brcmfmac 23.10.1039), Bluetooth and the GL9755 on the bus; the three dwc3 bound and a USB device working; PMP, battery, AC, temperatures, fan, RTC, power button and lid; s2idle, woken by the keyboard, with Wi-Fi, Bluetooth, NVMe and input back. The boot chain was aura with a change that trains the root ports the DT describes and U-Boot handing the MTP over live (mtp-live-v1).scripts/dtc/apple-dt-check.shagainst bdd4621: 1 new warning, 8 removed (the J813's). The new one is thedisp0_piodmaalias, which the J813 has too; aura looks the node up by that name. The changed bindings passdt_binding_check.Prepared with Claude Opus 5.5; tested by me on the hardware.