drm_crtc_helper_set_mode(9)
β¨ drm_crtc_helper_set_mode(9) β¨
okay so bestie, welcome to the kernel API manual π today's main character is drm_crtc_helper_set_mode, and she is lowkey the internal helper that sets a mode. like, that's literally her whole job description in NAME, no cap.
πΈ SYNOPSIS πΈ
bool drm_crtc_helper_set_mode (struct drm_crtc *crtc , struct
drm_display_mode *mode , int x , int y , struct drm_framebuffer *old_fb
);
she returns a bool, babes. remember that, it comes back at RETURN π
π ARGUMENTS π
crtcβ the CRTC we're programming π that's the thing getting told what to do.modeβ the mode to use. the vibe we're setting. slay.xβ horizontal offset into the surface. horizontal, bestie. side to side.yβ vertical offset into the surface. up and down, you got it π¦old_fbβ the old framebuffer, and it's here for cleanup. so like, she's the ex we're politely packing up π
π DESCRIPTION π
so the whole point: try to set mode on crtc. fr fr, that's it. but it's giving thoughtful, because she gives crtc and its associated connectors a chance to fixup or reject the mode prior to trying to set it π₯ vibe check first, then mode set. iconic behaviour honestly.
she's an internal helper β so not your everyday public API, she's backstage crew π§ drivers could e.g. use her to update properties that require the entire output pipe to be disabled and re-enabled in a new configuration. the way that whole pipe has to fully go down and come back up π
what kind of properties? bestie I got you:
- changing whether audio is enabled on a
hdmilink π - changing panel fitter attributes
- changing dither attributes
and she's not a solo act either β she's also called by the drm_crtc_helper_set_config helper function to drive the mode setting sequence. so she's out here doing collabs π
β RETURN β
True if the mode was set successfully, false otherwise. that's the whole tea. true = slay, false = not slay π
π SEE ALSO π
- Kernel file
./drivers/gpu/drm/drm_crtc_helper.coverview(9) drm_helper_encoder_in_use(9)drm_helper_crtc_in_use(9)drm_helper_disable_unused_functions(9)drm_crtc_helper_atomic_check(9)drm_crtc_helper_set_config(9)drm_helper_connector_dpms(9)drm_helper_resume_force_mode(9)drm_helper_force_disable_all(9)
literally the whole friend group, go read them all π«Ά
heads up bestie: she's an internal helper, so she's not out here for everyone to just call β she's the one the config path leans on π
that's the page!! π it lives in ./drivers/gpu/drm, dated October 2026, and it's part of the Kernel API Manual β mwah, go set some modes, ily πβ¨
π¦ 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