amdgpu_dm_cr..._cursor_mode(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… amdgpu_dm_cr..._cursor_mode(9) β€” a Kernel API Manual moment

okay so bestie, this is a page straight out of the Kernel API Manual (yes, that's the manual name, we're being fancy today πŸŽ€), and the star of the show is amdgpu_dm_crtc_get_cursor_mode. Cursor drama incoming, iykyk.


✨ NAME ✨

amdgpu_dm_crtc_get_cursor_mode β€” literally just figuring out which cursor mode the crtc needs, no cap πŸ’…


🌸 SYNOPSIS 🌸

int amdgpu_dm_crtc_get_cursor_mode (struct amdgpu_device *adev , struct
drm_atomic_commit *state , struct dm_crtc_state *dm_crtc_state , enum
amdgpu_dm_cursor_mode *cursor_mode );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • adev β€” the amdgpu device itself, main character energy πŸ’–
  • state β€” the DRM atomic state
  • dm_crtc_state β€” the amdgpu state for the CRTC that's holding the cursor (yes, the cursor lives there, we checked 🫢)
  • cursor_mode β€” this one's the output: it returns the required cursor mode on dm_crtc_state

πŸ‘‘ DESCRIPTION πŸ‘‘

So what this bad boy actually does: it gets whether the cursor should be enabled in native mode or overlay mode on the dm_crtc_state. Two modes, one vibe check, and it picks. 🌈

Here's the tea though β€” the cursor should be enabled in overlay mode if there exists an underlying plane (one the cursor may be blended on top of, bestie) that is any of these:

  • YUV formatted 😳
  • scaled differently from the cursor
  • has a color pipeline active

Any one of those and it's overlay mode, periodt.

⚠️ little heads up: since zpos info is required, drm_atomic_normalize_zpos must be called before you call this function. Not optional, not a suggestion, it's giving prerequisite πŸ’€

⭐ RETURN ⭐

0 on success πŸ’– β€” or an error code if getting the cursor plane state failed 😭 (rude of it, honestly).


πŸ”₯ SEE ALSO πŸ”₯


mmm okay that's the whole page, you ate that bestie πŸ’œ this iconic little number came from ./drivers/gpu/drm/amd/display/..., dated October 2026, and titled amdgpu_dm_cr..._cursor_mode(9) β€” literally the manual's own signature sign-off, slay βœ¨πŸŽ€

πŸ“¦ where this page comes from