drm_atomic_h...r_crtc_reset(9)
π drm_atomic_helper_crtc_reset(9) π
okay so bestie, welcome to the Kernel API Manual β¨ β this one's about a little function that resets your CRTC's atomic state, and honestly? it's giving "glow-up in one call." π¦
πΈ NAME πΈ
drm_atomic_helper_crtc_reset β the default &drm_crtc_funcs.reset hook for CRTCs. periodt. π
β¨ SYNOPSIS β¨
void drm_atomic_helper_crtc_reset (struct drm_crtc *crtc );
like, that's it. one argument. no drama. π
π ARGUMENTS π
crtcβ the drm CRTC. that's the whole vibe check for this parameter, she's just a CRTC π
π₯ DESCRIPTION π₯
So what does she do? π She resets the atomic state for crtc β and the way she does it is lowkey iconic: she frees the state pointer first (and yes, bestie, that pointer might literally be NULL, like, for example at driver load time π β she handles it, no cap) and then she allocates a new empty state object. β¨
free the old, allocate the fresh, out with the old energy, in with the new. main character behavior fr fr. π«Ά
β οΈ reminder that this is the default reset hook for CRTCs β &drm_crtc_funcs.reset β so if you're writing a driver, this is the one you get handed unless you go out of your way to do something else.
π SEE ALSO π
okay this list is LONG but every single one of these matters, so buckle in bestie π β also shoutout to the kernel file ./drivers/gpu/drm/drm_atomic_state_helper.c, that's where the magic lives π
atomic state reset and initialization(9)__drm_atomic_helper_crtc_state_init(9)__drm_atomic_helper_crtc_reset(9)drm_atomic_helper_crtc_create_state(9)__drm_atomic_helper_crtc_duplicate_state(9)drm_atomic_helper_crtc_duplicate_state(9)__drm_atomic_helper_crtc_destroy_state(9)drm_atomic_helper_crtc_destroy_state(9)__drm_atomic_helper_plane_state_init(9)__drm_atomic_helper_plane_reset(9)drm_atomic_helper_plane_reset(9)drm_atomic_helper_plane_create_state(9)__drm_atomic_helper_plane_duplicate_state(9)drm_atomic_helper_plane_duplicate_state(9)__drm_atomic_helper_plane_destroy_state(9)drm_atomic_helper_plane_destroy_state(9)__drm_atomic_helper_connector_state_init(9)__drm_atomic_helper_connector_reset(9)drm_atomic_helper_connector_reset(9)drm_atomic_helper_connector_create_state(9)drm_atomic_helper_connector_tv_margins_reset(9)drm_atomic_helper_connector_tv_reset(9)drm_atomic_helper_connector_tv_check(9)__drm_atomic_helper_connector_duplicate_state(9)drm_atomic_helper_connector_duplicate_state(9)__drm_atomic_helper_connector_destroy_state(9)drm_atomic_helper_connector_destroy_state(9)__drm_atomic_helper_private_obj_create_state(9)__drm_atomic_helper_private_obj_duplicate_state(9)__drm_atomic_helper_bridge_duplicate_state(9)drm_atomic_helper_bridge_duplicate_state(9)drm_atomic_helper_bridge_destroy_state(9)__drm_atomic_helper_bridge_state_init(9)drm_atomic_helper_bridge_create_state(9)
k that's the whole page bestie, go reset some state, slay π β¨
signed off from ./drivers/gpu/drm β dated October 2026 ππ¦ iykyk π
π¦ 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