drm_atomic_h...anes_on_crtc(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… NAME πŸ’…

Okay so bestie, meet drm_atomic_helper_disable_planes_on_crtc(9) β€” the Kernel API Manual's very own helper to disable a CRTC's planes. That's it, that's the whole vibe. ✨


πŸ¦‹ SYNOPSIS πŸ¦‹

void drm_atomic_helper_disable_planes_on_crtc (struct drm_crtc_state
*old_crtc_state , bool atomic );

Lowkey just two little arguments and she's off to turn everything off πŸ‘‘


πŸŽ€ ARGUMENTS πŸŽ€

  • old_crtc_state β€” an atomic state object carrying the old CRTC state. She's looking at where you've been, not where you're going πŸ’œ
  • atomic β€” if it's set, she synchronizes with the CRTC's atomic_begin/flush hooks. So it's the "yes queen, do the whole ritual" switch 🌸

✨ DESCRIPTION ✨

So what does she actually do? She disables all the planes associated with the given CRTC. Every single one. Not a crumb left. πŸ“

The manual says you can use this for instance in the CRTC helper atomic_disable callback to disable all planes β€” that's the canonical use case, iykyk.

Now here's the cute little sequencing detail: if the atomic parameter is set, the function calls the CRTC's atomic_begin hook before disabling the planes, and the atomic_flush hook after. Order matters, bestie, she's nothing if not choreographed 🧚

⚠️ And now the serious bit, no cap: it is a bug to call this function without having implemented the drm_plane_helper_funcs.atomic_disable plane hook. Like, actual bug. Not the fun kind. Do not test her. πŸ’€

πŸ”₯ SEE ALSO πŸ”₯

The whole friend group, in original order β€” every last one of them 🫢


And that's the whole page, bestie 🌈 Hope you slay your modeset πŸŽ€

Source: ./drivers/gpu/drm β€” dated October 2026 β€” and the page header was drm_atomic_h...anes_on_crtc(9), in case you were wondering where we came in πŸ’–

πŸ“¦ where this page comes from