STRUCT DRM_DP_MST_TOPOLOGY_STATE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct drm_dp_mst_topology_state β€” DisplayPort MST topology atomic state ✨

okay so bestie, we're in the Kernel API Manual and this page is literally all about struct drm_dp_mst_topology_state, the DisplayPort MST topology atomic state. buckle up πŸ’–


🌸 NAME 🌸

struct drm_dp_mst_topology_state β€” DisplayPort MST topology atomic state, no cap 🫢


πŸ¦‹ SYNOPSIS πŸ¦‹

here's the struct in all its glory, copy it exactly bestie:

struct drm_dp_mst_topology_state {
    struct drm_private_state base;
    struct drm_dp_mst_topology_mgr *mgr;
    u32 pending_crtc_mask;
    struct drm_crtc_commit **commit_deps;
    size_t num_commit_deps;
    u32 payload_mask;
    struct list_head payloads;
    u8 total_avail_slots;
    u8 start_slot;
    fixed20_12 pbn_div;
 };

πŸ’… MEMBERS πŸ’…

every field, one by one, we're not skipping a single one πŸ‘‘

  • base β€” the base private state for atomic. it's giving foundation, it's giving main character energy 🌟
  • mgr β€” the topology manager. the boss of this whole situation πŸ”₯
  • pending_crtc_mask β€” a bitmask of all the CRTCs this topology state touches. drivers are allowed to modify this to add extra dependencies if they need to, so like… go off, add your deps πŸ’«
  • commit_deps β€” a list of all the CRTC commits affecting this topology. lowkey important caveat: this field isn't populated until drm_dp_mst_atomic_wait_for_dependencies gets called. so don't come for it before then, it's not ready 😭
  • num_commit_deps β€” the number of CRTC commits in commit_deps. the headcount, the attendance list πŸŽ€
  • payload_mask β€” a bitmask of allocated VCPIs, used for VCPI assignments ✨
  • payloads β€” the list of payloads being created/destroyed in this state. it's giving construction site and demolition at the same time οΏ½οΏ½
  • total_avail_slots β€” the total number of slots this topology can handle. and it's 63 or 64, exactly those, don't @ me πŸ“
  • start_slot β€” the first usable time slot in this topology, and that's 1 or 0 🌈
  • pbn_div β€” the current PBN divisor for this topology. key detail bestie: the driver is expected to fill this out itself, so it's not doing it for you πŸ’€

🧚 DESCRIPTION 🧚

so like, this struct represents the atomic state of the toplevel DisplayPort MST manager. that's the whole vibe. iconic, honestly ✨


πŸ‘‘ SEE ALSO πŸ‘‘

go read these next, they're all linked and they all slay:


and that's the page, bestie 🫢 this one came from ./include/drm/display, dated October 2026, and the whole thing is filed under struct drm_d...pology_state(9) in the Kernel API Manual. drink some water, go read your headers, mwah πŸ’–πŸŽ€

πŸ“¦ where this page comes from