STRUCT IRIS_HFI_PACKET(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ¦‹ struct iris_hfi_packet(9) β€” Kernel API Manual πŸ¦‹

okay so bestie, we're in the Kernel API Manual today and the star of the show is struct iris_hfi_packet. keep up, this one's a whole vibe πŸ’…


✨ NAME ✨

struct iris_hfi_packet β€” and honestly? the NAME line is literally just

struct iris_hfi_packet -

with nothing after the dash. no summary, no teaser, no nothing. mysterious main character energy fr fr πŸ‘‘ (iykyk)


πŸŽ€ SYNOPSIS πŸŽ€

here's the shape of it, copied exactly, no cap:

struct iris_hfi_packet {
    u32 size;
    u32 type;
    u32 flags;
    u32 payload_info;
    u32 port;
    u32 packet_id;
    u32 reserved[2];
    u32 payload[];
 };

πŸ’– Members πŸ’–

okay so let's go field by field, because every single one matters 🫢

  • size β€” the size of the hfi_packet in bytes, and yes that includes the payload. don't forget the payload, bestie 😭
  • type β€” one of the hfi_packet types below: HFI_CMD_*, HFI_PROP_*, HFI_ERROR_*, HFI_INFO_*, HFI_SYS_ERROR_*. pick your fighter 🌈
  • flags β€” the hfi_packet flags, represented as bit masks. the host packet flags are "enum hfi_packet_host_flags" and the firmware packet flags are "enum hfi_packet_firmware_flags". two whole enum situations, slay ✨
  • payload_info β€” payload information, indicated by "enum hfi_packet_payload_info". it's giving "the details about the payload" πŸ’€
  • port β€” the hfi_packet port type, indicated by "enum hfi_packet_port_type". heads up: this is a bitmask and may be applicable to multiple ports. so like, not just one port. many. iconic 🌸
  • packet_id β€” the host hfi_packet contains a unique packet id. the firmware returns the host packet id in the response packet wherever applicable. and if it's not applicable? firmware sets it to zero. periodt πŸ”₯
  • reserved β€” reserved for future use. hands off, it's saving that space for later πŸ™ˆ
  • payload β€” a flexible array of payload having additional packet information. flexible = it does what it wants, lowkey πŸ¦‹

πŸ‘€ SEE ALSO πŸ‘€

go touch some more kernel files, bestie:

  • Kernel file ./drivers/media/platform/qcom/iris/iris_hfi_gen2_packet.h
  • struct iris_hfi_header(9), struct iris_hfi_buffer(9)

ngl this whole header lives over at ./drivers/media/platform/qcom/... β€” the iris_hfi_gen2_packet.h one is your bestie for the full picture 🧚

and that's the tea, bestie πŸ’œ this page came from that ./drivers/media/platform/qcom/... source and it's dated October 2026 β€” so yeah, future vibes only β­πŸ’… bye!

πŸ“¦ where this page comes from