STRUCT SAN_DGPU_EVENT(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ NAME ✨

ok so bestie, this is struct san_dgpu_event β€” the Discrete GPU ACPI event struct, from the struct san_dgpu_event(9) Kernel API Manual πŸ’– and literally all it does is package up one (1) ACPI event so the kernel can pass it around. iconic behavior tbh.


πŸŽ€ SYNOPSIS πŸŽ€

here's the whole vibe, no cap β€” copy it exactly:

struct san_dgpu_event {
    u8 category;
    u8 target;
    u8 command;
    u8 instance;
    u16 length;
    u8 *payload;
 };

πŸ’… MEMBERS πŸ’…

okay so let's meet the cast, because every single field is doing main character work πŸ”₯

  • category β€” the Category of the event. like, what kind of event is this. yes bestie, categories matter.
  • target β€” the Target ID of the event source. it's giving "who is this even for" energy.
  • command β€” the Command ID of the event. the actual instruction, the moment, the ~what do we do~.
  • instance β€” the Instance ID of the event source. which specific one of them, iykyk.
  • length β€” Length of the event's payload data, measured in bytes. u16 btw. don't forget the units, that's such a classic mistake πŸ™ˆ
  • payload β€” pointer to the event's payload data. it's a u8 *, it points at the good stuff, that's the whole job 🫢
ngl there are no hidden fields, no surprises β€” just these six. go read the header if you don't believe me πŸ’€

πŸ¦‹ SEE ALSO πŸ¦‹

  • Kernel file ./include/linux/surface_acpi_notify.h β€” go read it, it's right there, it ate πŸ’–

alright bestie that's the whole page πŸ’… this lil writeup lives in ./include/linux (Kernel API Manual vibes), dated October 2026, under the very official title struct san_dgpu_event(9) β€” slay, go forth and read structs responsibly πŸ‘‘πŸŒΈ

πŸ“¦ where this page comes from