drm_atomic_...set_disables(9)
π drm_atomic_helper_commit_modeset_disables π
okay so we're in the Kernel API Manual bestie, and this page is all about drm_atomic_helper_commit_modeset_disables β the function that's literally the "say bye to the screens" era of a modeset commit. no cap, it's a whole vibe. π
β¨ NAME β¨
drm_atomic_helper_commit_modeset_disables β modeset commit to disable outputs π¦
like, the actual commit step where outputs get shut down. that's the whole thing.
β¨ SYNOPSIS β¨
void drm_atomic_helper_commit_modeset_disables (struct drm_device *dev ,
struct drm_atomic_commit *state );
two args, void return, she is not giving you a status code because she doesn't have one. periodt. π
β¨ ARGUMENTS β¨
devβ the DRM device π like, the actual graphics device we're doing all this to.stateβ the atomic state object being committed β¨ this is the snapshot of everything that's about to happen.
β¨ DESCRIPTION β¨
so what does she do? bestie. she shuts down all the outputs that need to be shut down, and she prepares them (if required) with the new mode. π₯ that's it, that's the function. iconic behavior honestly.
here's the part where you need to pay attention though π β for compatibility with legacy CRTC helpers, this should be called before drm_atomic_helper_commit_planes, which is literally what the default commit function does. so if you're just doing the normal thing, it's already handled, you're fine, go touch grass πΈ.
but! drivers with different needs can group the modeset commits together and do the plane commits at the end. and that's actually useful for drivers doing runtime PM, since plane updates then only happen when the CRTC is actually enabled. it's giving "don't do work you don't have to" energy and we love that for them π
β οΈ lowkey important: the ordering thing is a compatibility note, not a suggestion. legacy CRTC helpers expect the call first. don't come crying to me if you swap it π
β¨ SEE ALSO β¨
okay this list is long long, so buckle up bestie, we're going on a tour of the whole atomic helper family π«Ά
- the Kernel file
./drivers/gpu/drm/drm_atomic_helper.coverview(9) β start here, it's the map πΊοΈ drm_atomic_helper_check_modeset(9)drm_atomic_helper_check_wb_connector_state(9)drm_atomic_helper_check_plane_state(9)drm_atomic_helper_check_crtc_primary_plane(9)drm_atomic_helper_check_planes(9)drm_atomic_helper_check(9)drm_atomic_helper_commit_encoder_bridge_disable(9)drm_atomic_helper_commit_crtc_disable(9)drm_atomic_helper_commit_encoder_bridge_post_disable(9)drm_atomic_helper_update_legacy_modeset_state(9)drm_atomic_helper_calc_timestamping_constants(9)drm_atomic_helper_commit_crtc_set_mode(9)drm_atomic_helper_commit_writebacks(9)drm_atomic_helper_commit_encoder_bridge_pre_enable(9)drm_atomic_helper_commit_crtc_enable(9)drm_atomic_helper_commit_encoder_bridge_enable(9)drm_atomic_helper_commit_modeset_enables(9) β the sequel to this one, the "say hi again" era πdrm_atomic_helper_wait_for_fences(9)drm_atomic_helper_wait_for_vblanks(9)drm_atomic_helper_wait_for_flip_done(9)drm_atomic_helper_commit_tail(9)drm_atomic_helper_commit_tail_rpm(9)drm_atomic_helper_async_check(9)drm_atomic_helper_async_commit(9)drm_atomic_helper_commit(9)- implementing nonblocking commit(9)
drm_atomic_helper_setup_commit(9)drm_atomic_helper_wait_for_dependencies(9)drm_atomic_helper_fake_vblank(9)drm_atomic_helper_commit_hw_done(9)drm_atomic_helper_commit_cleanup_done(9)drm_atomic_helper_prepare_planes(9)drm_atomic_helper_unprepare_planes(9)drm_atomic_helper_commit_planes(9) β the one you call after this one, remember? πdrm_atomic_helper_commit_planes_on_crtc(9)drm_atomic_helper_disable_planes_on_crtc(9)drm_atomic_helper_cleanup_planes(9)drm_atomic_helper_swap_state(9)drm_atomic_helper_update_plane(9)drm_atomic_helper_disable_plane(9)drm_atomic_helper_set_config(9)drm_atomic_helper_disable_all(9)drm_atomic_helper_reset_crtc(9)drm_atomic_helper_shutdown(9)drm_atomic_helper_duplicate_state(9)drm_atomic_helper_suspend(9)drm_atomic_helper_commit_duplicated_state(9)drm_atomic_helper_resume(9)drm_atomic_helper_page_flip(9)drm_atomic_helper_page_flip_target(9)drm_atomic_helper_bridge_propagate_bus_fmt(9)drm_atomic_helper_bridge_get_hdmi_output_bus_fmts(9)
like I said. long long. iykyk π
aaaand that's the page!! π source is ./drivers/gpu/drm, dated October 2026, and it's giving drm_atomic_...set_disables(9) energy all the way through. go forth and disable those modesets responsibly bestie, mwah πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms