Skip to content

drm/apple: show the notch when the boot loader keeps it - #884

Merged
RyanTheTide merged 1 commit into
aurora-silicon:integration/aurorafrom
jgoyvaerts:m4pro/drm-apple-chosen-show-notch-integration
Nov 3, 2026
Merged

RyanTheTide merged 1 commit into
aurora-silicon:integration/aurorafrom
jgoyvaerts:m4pro/drm-apple-chosen-show-notch-integration

Conversation

@jgoyvaerts

Copy link
Copy Markdown
Contributor

Showing the notch currently takes two switches that have to agree:

  • aura's chosen.asahi,show-notch=1 keeps the notch rows in the boot framebuffer (kboot_show_notch()), and
  • appledrm.show_notch=1 keeps them in the mode.

If only aura's is set, the boot framebuffer covers the full panel and the mode does not, so fbcon/Plymouth shift by the notch height at the handoff (and the desktop loses the rows). aura.conf.example already says "Pair with appledrm.show_notch=1 on Linux".

aura passes its setting on as /chosen/asahi,show-notch = "1". This makes dcp_comp_bind_pipe() read it too, so the boot loader setting alone shows the notch from the first frame to the desktop. The default is unchanged (hidden): no property, or any value other than "1", behaves as before, and the module parameter still turns it on.

dcp_comp_bind_pipe() is the only reader of the notch switch; everything downstream (mode list, scanout offset, panel adj-height-mm, the v26.6 path) follows dcp->notch_height, so nothing else changes.

On the J616s (MacBook Pro M4 Pro, 25G83, classic IOMFB path) the internal panel mode is 3456x2160 without it and 3456x2234 with it (apple,notch-height = 74).

Testing: on integration/aurora 19f71a1, dcp.c builds with W=1 and checkpatch is clean. The J616s daily kernel, 7.3.0-m4.117, carries this commit and boots with chosen.asahi,show-notch=1 set, but it still has appledrm.show_notch=1 too. So a boot with only aura's setting has not been run yet.

Replaces #578, which conflicted after dcp.c lost dcp_show_notch() and t6030_show_notch. Same change, on the current base; #578 is not rewritten.

🤖 Generated with Claude Code

Showing the notch takes two switches today: aura's
chosen.asahi,show-notch=1 keeps the notch rows in the boot framebuffer,
and appledrm.show_notch=1 keeps them in the mode. With only the first,
the boot framebuffer covers the full panel and the mode does not, so
fbcon and Plymouth jump by the notch height at the handoff; with only
the second, it is the other way round.

aura passes the setting on as /chosen/asahi,show-notch = "1". Read it,
so the boot loader setting alone shows the notch from the first frame
to the desktop. The module parameters still turn it on as before.

On the J616s (MacBook Pro M4 Pro) the mode is 3456x2160 without it and
3456x2234 with it (apple,notch-height = 74).

Signed-off-by: Jonathan Goyvaerts <jonathan.goyvaerts@gmail.com>
Assisted-by: LLM
@RyanTheTide

Copy link
Copy Markdown
Contributor

Merged after the J616s one-shot of 7.3.0-aurora-m4t1103a (integration/aurora 19f71a1 + #837 + #879 + this PR), boot c9c549d5.

With appledrm.show_notch=1 still set, the panel mode is 3456x2234, as before. The kernel -p3 log is empty, and SELinux has 0 AVCs.

The new path, with only chosen.asahi,show-notch=1 set, has not been booted here, because the J616s's Stage 2 doesn't set it.

The M1 Pro and the M2 don't carry /chosen/asahi,show-notch either, so nothing changes on them.

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