STRUCT VERSATILE_PANEL(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct versatile_panel(9) ✨

okay so welcome to the Kernel API Manual bestie, this one's a struct and it's literally the whole vibe container for the Versatile panels πŸŽ€


πŸ’– NAME πŸ’–

struct versatile_panel β€” the state container for the Versatile panels. that's it, that's the job, she holds the state πŸ’…


🌸 SYNOPSIS 🌸

struct versatile_panel {
    struct device *dev;
    struct drm_panel panel;
    const struct versatile_panel_type *panel_type;
    struct regmap *map;
    struct regmap *ib2_map;
 };

look at her. five fields. immaculate. no cap. πŸ¦‹


πŸ‘‘ Members πŸ‘‘

  • dev β€” the container device. like, the actual device this whole thing is riding for 🫢
  • panel β€” the DRM panel instance for this device. this is the main character field ngl, it's the panel itself ✨
  • panel_type β€” the Versatile panel type as detected. so the kernel already clocked which one it is and this is the receipts πŸ”
  • map β€” map to the parent syscon where the main register reside. yes it says "reside", we're quoting the ancestors, don't come for me πŸ™ˆ that's where the main registers live.
  • ib2_map β€” map to the IB2 syscon, if applicable. key phrase: if applicable. sometimes she's there, sometimes she's not, she's mysterious like that πŸ’€

πŸ”₯ SEE ALSO πŸ”₯

  • Kernel file ./drivers/gpu/drm/panel/panel-arm-versatile.c
  • struct versatile_panel_type(9)

go read struct versatile_panel_type(9) next, it's giving sequel energy, iykyk πŸ’œ


fr fr do not rename these fields, do not merge them, do not "clean them up" β€” they're exactly what they are πŸ’…

🌈 and that's the page! brought to you by ./drivers/gpu/drm/panel, October 2026 edition β€” periodt, slay, go touch some registers bestie πŸ’–βœ¨

πŸ“¦ where this page comes from