UNION HDMI_INFOFRAME(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

union hdmi_infoframe β€” okay so this is literally the overall union of all the abstract infoframe representations. all of them. one union to hold them all, bestie πŸ‘‘


✨ SYNOPSIS ✨

union hdmi_infoframe {
    struct hdmi_any_infoframe any;
    struct hdmi_avi_infoframe avi;
    struct hdmi_spd_infoframe spd;
    union hdmi_vendor_any_infoframe vendor;
    struct hdmi_audio_infoframe audio;
    struct hdmi_drm_infoframe drm;
 };

no cap, that's the whole shape of it 🫢


πŸŽ€ Members πŸŽ€

  • any β€” the generic infoframe, aka the "idk what you are yet" one πŸ’…
  • avi β€” the avi infoframe, living its best life 🌈
  • spd β€” the spd infoframe, iconic as always ⭐
  • vendor β€” a union of all the vendor infoframes, like a little group chat of manufacturers 🧚
  • audio β€” the audio infoframe, and yes she's loud πŸ”₯
  • drm β€” the Dynamic Range and Mastering infoframe, highkey the main character of the whole struct πŸ‘‘

πŸ¦‹ Description πŸ¦‹

So here's the tea β˜• β€” this union is what the generic pack function uses. and the way that this works is lowkey genius: every single infoframe shares the same header, and that header also tells you which type of infoframe should be packed. so the pack function can just vibe-check the header and know exactly what it's dealing with. slay πŸ’…βœ¨


🌸 SEE ALSO 🌸

  • Kernel file ./include/linux/hdmi.h
  • struct hdr_sink_metadata(9)

and that's the whole page, periodt πŸ’œ this one lives in ./include/linux, from the Kernel API Manual, dated October 2026 β€” go off bestie, hope this helped fr fr πŸŽ€πŸ’–πŸ«Ά

πŸ“¦ where this page comes from