drm_self_re..._alter_state(9)
β¨ NAME β¨
drm_self_refresh_helper_alter_state β bestie, this one alters the atomic state for SR exit π
(also yes, the manual is named drm_self_re..._alter_state(9) because the full name simply would not fit and the kernel is dramatic like that)
πΈ SYNOPSIS πΈ
void drm_self_refresh_helper_alter_state (struct drm_atomic_commit
*state );
π ARGUMENTS π
stateβ the state currently being checked π like, the atomic commit state we're looking at right now, that's the one
π¦ DESCRIPTION π¦
okay so picture this: this function gets called at the end of atomic check. It goes through the state, looks for flags that are incompatible with self refresh exit, and changes them. That's the whole vibe check right there.
And yeah, ngl, it's a bit disingenuous π β like, userspace is expecting one thing and we're giving it another. Kinda shady! But the reason is legit: to keep self refresh entirely hidden from userspace, this is required. No cap, it's literally mandatory. Periodt.
Then at the end, we queue up the self refresh entry work so we can enter PSR after the desired delay β¨ (PSR = panel self refresh, iykyk, and it enters after the delay you wanted, not before, we're not animals)
π friendly reminder from the manpage: this function will change your flags. That's not a bug, that's the assignment. It's giving "trust me bestie" energy.
π SEE ALSO π
overview(9)β the Kernel file./drivers/gpu/drm/drm_self_refresh_helper.coverview, start here π«Άdrm_self_refresh_helper_update_avg_times(9)drm_self_refresh_helper_init(9)drm_self_refresh_helper_cleanup(9)
π okay that's the whole page bestie, go forth and alter those states π
This icon of a manpage lives in ./drivers/gpu/drm and was stamped October 2026 β yeah, the future, main character energy fr fr πβ¨
π¦ 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