Skip to content

arm64: dts: apple: t8132-j773g: Keep the PMC power state on - #1181

Merged
RyanTheTide merged 1 commit into
aurora-silicon:integration/aurorafrom
techmore:j773g/ps-pmc-always-on
Nov 9, 2026
Merged

RyanTheTide merged 1 commit into
aurora-silicon:integration/aurorafrom
techmore:j773g/ps-pmc-always-on

Conversation

@techmore

@techmore techmore commented Nov 7, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Keep the J773g PMC power state on while the retained PMP firmware and its Linux consumers are active. This is the one-line DT shape used by the successful J773g bring-up and independently matches Pavel Shago's earlier J773g work.

Results

  • pass — observed bring-up stack: with apple,always-on on ps_pmc, the retained PMP, PMC, CLPC, static voter, AGX request, GPU compute, and HDMI path remained operational on one J773g.
  • fail — observed without the property: the PMP firmware crashed in repeated boots; two fuller PMC/CLPC configurations also stopped the board. The matched v38/v40 comparison changed this property and changed the result from crash to pass.
  • not tested — exact PR head: this tree's own J773g DT at the posted head has not been booted. The observations came from a content-equivalent property in the bring-up DT.
  • not tested — alternatives: disabling ps_pmc, marking it firmware-owned, and the independently reported HDMI-unplug trigger were not tested by us.
  • not tested — J713: this patch changes only the J773g board DT.

The observed result is that the property prevents the crash on the bring-up stack. The proposed power-off mechanism remains an inference because the transition itself was not captured.

Validation

  • pass — checkpatch: strict --no-signoff, 0 errors, 0 warnings, 0 checks.
  • pass — DT build and binding: the J773g DTB and the relevant PMGR binding check completed.
  • pass — warning delta: W=1 and dtbs_check had no new findings versus the same base; existing Apple DT/dtschema findings were unchanged.
  • not tested — runtime at this head: required before this draft is marked ready.

The content is unchanged by the trailer-only compliance rewrite, so no rebuild was needed. This PR stays draft until an exact-head J773g boot is recorded.

No serial number, network address, raw device-tree/ADT dump, per-unit firmware image, calibration data, or core dump is included.

The human submitter, Sean Dolbec, added his own DCO sign-off to each commit on 2026-11-08.

@techmore

techmore commented Nov 8, 2026

Copy link
Copy Markdown
Contributor Author

Per Documentation/process/coding-assistants.rst, this draft branch deliberately carries no Signed-off-by added by an AI agent. After reviewing the final commits, the human submitter will run agents/sean-signoff.sh himself to add his own DCO certification and push the human-signed commits before the PR leaves draft.

@techmore
techmore force-pushed the j773g/ps-pmc-always-on branch 2 times, most recently from e50b1d8 to f947fb2 Compare November 8, 2026 08:23
@techmore

techmore commented Nov 8, 2026

Copy link
Copy Markdown
Contributor Author

Update: Sean Dolbec, the human submitter, added his DCO sign-off to the current commit(s) on 2026-11-08; the earlier unsigned status is superseded.

@techmore
techmore force-pushed the j773g/ps-pmc-always-on branch from f947fb2 to 7335414 Compare November 8, 2026 09:32
Once the PMP runs on the M4 Mac mini (J773g), its firmware accesses the
PMC block at 0x382800000. Linux treats its PMGR power state, ps_pmc, as
an ordinary domain without consumers. J713 disables the domain in its
board PMGR policy; J773g has no such policy yet.

Mark ps_pmc always-on for J773g. Linux then keeps the domain on.

Pavel Shago's J773g tree ended up with the same property in his commit of
2026-10-19, which predates ours. He sets it for all T8132 boards and
reports a DCP SError on HDMI unplug. His observation and explanation
have not been reproduced here.

On one J773g (10-core GPU, system firmware 27.0, OS firmware 26.6.2),
using a custom m1n1 stage 2 (build/commit unavailable) and Omarchy
(Arch, release unavailable), v38 and v40 differed by this property:
v38 had a PMP firmware crash and v40 logged PMP started without it.
Across several configurations, 12 logs without the property showed the
crash and 11 with it showed PMP started without the crash. Two further
boots with PMC enabled left the board dead about 22 s after entry; no
kernel log was kept for v34/v35. Attribution to ps_pmc rests on v42/v43
passing with the property, not a matched pair. v41 also changed the PMP
register window and still crashed without the property.

The driver never logged that an always-on domain was off at boot, which
supports an inference that ps_pmc was on at handoff. These boots used
pd_ignore_unused and clk_ignore_unused. A power-off was not observed;
whether Linux turns the domain off without the property and causes the
firmware fault remains inferred, not observed.

These boots used our own J773g device tree on an older kernel. This
tree's t8132-j773g.dts with this patch has not been booted on hardware.

Link: shgpavel/linux-asahi@172d11a

Assisted-by: LLM checkpatch
Signed-off-by: Sean Dolbec <sdolbec1@gmail.com>
@techmore
techmore force-pushed the j773g/ps-pmc-always-on branch from 7335414 to b6425fc Compare November 8, 2026 09:59
@techmore
techmore marked this pull request as ready for review November 8, 2026 10:18
@chatgpt-codex-connector

Copy link
Copy Markdown
Codex Review Summary: ❌ Failed

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ❌ Failed 2026-11-08T10:18:47.295875Z
We couldn’t complete this review. Comment @codex review to try again.
b6425fc Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@RyanTheTide
RyanTheTide merged commit 46c01bc into aurora-silicon:integration/aurora Nov 9, 2026
2 checks passed
@techmore
techmore deleted the j773g/ps-pmc-always-on branch November 11, 2026 17:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants