STRUCT DRM_MODE_SET(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct drm_mode_set(9) πŸ’…

okay so bestie, this is struct drm_mode_set(9) from the Kernel API Manual, and it is literally the blueprint for new values in a CRTC config change. no cap, let's get into it 🫢


πŸ¦‹ NAME πŸ¦‹

struct drm_mode_set β€” new values for a CRTC config change ✨


🌸 SYNOPSIS 🌸

       struct drm_mode_set {
           struct drm_framebuffer *fb;
           struct drm_crtc *crtc;
           struct drm_display_mode *mode;
           uint32_t x;
           uint32_t y;
           struct drm_connector **connectors;
           size_t num_connectors;
        };

πŸŽ€ Members πŸŽ€

  • fb β€” the framebuffer to use for the new config. it's giving "here's the canvas, bestie" 🎨
  • crtc β€” the CRTC whose configuration we're about to change. main character energy, fr fr πŸ‘‘
  • mode β€” the mode timings to use. the whole vibe check for the display ⏱️
  • x β€” position of this CRTC relative to fb. yes, the x-coordinate, we love a coordinate πŸ’…
  • y β€” position of this CRTC relative to fb. and the y-coordinate too, because we're thorough like that 🧚
  • connectors β€” array of connectors to drive with this CRTC if possible. lowkey flexible, highkey useful πŸ”Œ
  • num_connectors β€” size of the connectors array. literally the count, keeping things accountable πŸ“

🌈 Description 🌈

so this struct represents a modeset configuration for the legacy SETCRTC ioctl, and it's also used internally. it's giving old-school but still showing up to the group chat 😭

atomic drivers instead use drm_atomic_commit. periodt, that's the atomic route πŸ’«

lowkey legacy alert: this is the legacy SETCRTC ioctl situation. atomic drivers are over here using drm_atomic_commit instead. know the difference, bestie πŸ’€

πŸ‘€ SEE ALSO πŸ‘€

Kernel file ./include/drm/drm_crtc.h β€” and these iconic little references:


and that's the page, bestie πŸ’– signed off from ./include/drm, dated October 2026, in the Kernel API Manual β€” struct drm_mode_set(9) out! πŸŽ€βœ¨

πŸ“¦ where this page comes from