ENUM VMW_SM_TYPE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… enum vmw_sm_type(9) β€” or, "what can this graphics context actually DO" πŸŽ€

okay so picture this: you're deep in the Kernel API Manual (yes, that one, the Linux kernel docs, we're fancy now ✨) and you stumble on enum vmw_sm_type. Bestie. Buckle up, because this little enum is literally just a ✨vibe check✨ for graphics hardware β€” it tells you which shader-model capabilities a device can support. That's it. That's the whole thing. And honestly? Iconic. πŸ‘‘


🌸 NAME 🌸

enum vmw_sm_type β€” Graphics context capability supported by device.</p> 🫢

Basically: a menu of "how much shader-model can your GPU handle, queen?" and the driver picks the highest one that applies.


✨ SYNOPSIS ✨

enum vmw_sm_type {
    VMW_SM_LEGACY ,
    VMW_SM_4 ,
    VMW_SM_4_1 ,
    VMW_SM_5 ,
    VMW_SM_5_1X ,
    VMW_SM_MAX

};

no cap, that's the whole shape of it β€” a ladder from "old school" all the way up to VMW_SM_MAX. πŸͺœ


πŸ¦‹ Constants πŸ¦‹

okay so here's each one, in order, exactly as listed β€” every single one gets its moment πŸ’…

  • VMW_SM_LEGACY β€” the pre-DX context era. Baby's first context, if you will. 😭
  • VMW_SM_4 β€” context support up to SM4. We stan a solid mid-tier queen.
  • VMW_SM_4_1 β€” context support up to SM4_1. tiny upgrade, big slay.
  • VMW_SM_5 β€” context support up to SM5. now we're cooking πŸ”₯
  • VMW_SM_5_1X β€” adds support for sm5_1 and gl43 extensions. she's got extras, she's main character energy fr fr πŸ‘‘
  • VMW_SM_MAX β€” should be the last. that's literally the whole job description. keep her at the end or the vibe check breaks 🫢

🌈 SEE ALSO 🌈

kernel file ./drivers/gpu/drm/vmwgfx/vmwgfx_drv.h β€” that's where she lives, go say hi πŸŽ€

and the whole extended friend group, all the related docs you should absolutely go read next (iykyk):


🫢 quick vibe check before you go: this page ships from ./drivers/gpu/drm/vmwgfx and it's dated October 2026. so yeah β€” mark your calendars bestie, the future is now, and the enum is ready. πŸ’–βœ¨πŸ“
πŸ“¦ where this page comes from