Repository navigation
arm64: dts: apple: t8122/t6030/t6032: give the scaler and JPEG DARTs their power domains - #1673
Merged
Merged
Conversation
…their power domains The M3, M3 Pro and M3 Ultra JPEG engines are enabled, and their DARTs with them, but only the engines name their power domains. A DART probes as a device of its own, so when iBoot leaves the JPEG block off the probe's first register read takes an SError and the boot panics. This is the T8132 failure fixed in #1668, on the other SoCs whose JPEG DARTs were enabled at the same time. Give each JPEG DART its engine's domain, as the T6031, T8112 and T8132 DARTs have. Do the same for the scaler DARTs on these SoCs: they are still disabled, but they would fail the same way once enabled. DTBs for all other boards are unchanged. Fixes: fd4b396 ("media: apple: jpeg: add the M1 Max/Ultra, M3 and M4 engines") Reported-by: Bartosz Nitka <niteria@gmail.com> Link: #1668 Assisted-by: LLM Signed-off-by: Ryan Murray <ryan@aurorasilicon.org>
DjDeveloperr
approved these changes
Nov 12, 2026
DjDeveloperr
left a comment
Contributor
There was a problem hiding this comment.
Reviewed at 4ead3cb. Every added DART domain matches its consumer engine's primary domain: T8122 and T6030 dart_scaler→ps_msr and dart_jpeg0/1→ps_jpg; T6032 die0 scaler00/10→ps_msr0/ps_msr1, jpeg00/10→ps_jpg; die1 scaler20/30→ps_msr0_die1/ps_msr1_die1, jpeg20/30→ps_jpg_die1. The engines' extra ps_msr*_ase_core domains stay engine-only, as in #1668. The DTB before/after comparison (only the 10 T8122/T6030/T6032 boards change) fits. LGTM.
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.
#1617 enabled the JPEG engines and their DARTs on T8122 (M3), T6030 (M3 Pro) and T6032 (M3 Ultra). The engines name
ps_jpg, but the DARTs name no power domain. A DART probes on its own, so if iBoot leaves the JPEG block off, the first register read takes an SError and the boot panics. This is the same failure #1668 fixed on T8132.This gives each of those DARTs its engine's domain, matching the T6031, T8112 and T8132 DARTs:
The scaler DARTs are still disabled. They get their domains now so they won't fail the same way once they're enabled.
The other scaler and JPEG DARTs touched by #1616/#1617 already have their engine's domain: T8103, T6001/T6002 (both dies), T6031, and T8132 after #1668.
DTB check: I built all 137 Apple DTBs before and after with the in-tree dtc. Only the 10 T8122/T6030/T6032 board DTBs change. In the preprocessed source, the only difference is the added
power-domainslines. The other 127 are byte-identical, including t6000-j316s, t8112-j413, t6040-j616s(-tether) and t8140-j700.This builds on Bartosz Nitka's (@niteria) J713 diagnosis and fix in #1668.
🤖 Generated with Claude Code