STRUCT DPAA2_FD(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct dpaa2_fd β€” the manual page, but make it make sense

okay bestie, so this is struct dpaa2_fd(9) straight out of the Kernel API Manual, and it's literally the blueprint for a Frame Descriptor. stay with me, it's shorter than it looks 🫢


✨ NAME ✨

struct dpaa2_fd β€” the struct that describes FDs. yes, that's the whole name section, she's concise πŸ‘‘


🌸 SYNOPSIS 🌸

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

struct dpaa2_fd {
    union {
      u32 words[8];
      struct dpaa2_fd_simple {
        __le64 addr;
        __le32 len;
        __le16 bpid;
        __le16 format_offset;
        __le32 frc;
        __le32 ctrl;
        __le64 flc;
      } simple;
    };
 };

πŸŽ€ MEMBERS πŸŽ€

  • {unnamed_union} β€” anonymous. she has no name, she simply is πŸ’«
  • words β€” for easier/faster copying the whole FD structure. it's giving speedrun energy πŸƒβ€β™€οΈ
  • simple β€” the struct for the FD fields. the actual vibes, field by field.
  • simple.addr β€” address in the FD
  • simple.len β€” length in the FD
  • simple.bpid β€” buffer pool ID
  • simple.format_offset β€” format, offset, and short-length fields. three besties sharing one field, iconic πŸ’…
  • simple.frc β€” frame context
  • simple.ctrl β€” control bits...including dd, sc, va, err, etc. yes the original literally says "etc", she's mysterious like that πŸ™ˆ
  • simple.flc β€” flow context address

πŸ¦‹ DESCRIPTION πŸ¦‹

so like, this structure represents the basic Frame Descriptor used in the system. that's the whole description. short queen, main character energy, doesn't overexplain 🌈


πŸ’œ SEE ALSO πŸ’œ

the whole friend group, fr fr β€” go read all of these:

Kernel file ./include/soc/fsl/dpaa2-fd.h DPAA2 FD - Frame Descriptor APIs for DPAA2(9), dpaa2_fd_get_addr(9), dpaa2_fd_set_addr(9), dpaa2_fd_get_frc(9), dpaa2_fd_set_frc(9), dpaa2_fd_get_ctrl(9), dpaa2_fd_set_ctrl(9), dpaa2_fd_get_flc(9), dpaa2_fd_set_flc(9), dpaa2_fd_get_len(9), dpaa2_fd_set_len(9), dpaa2_fd_get_offset(9), dpaa2_fd_set_offset(9), dpaa2_fd_get_format(9), dpaa2_fd_set_format(9), dpaa2_fd_get_bpid(9), dpaa2_fd_set_bpid(9), struct dpaa2_sg_entry(9), dpaa2_sg_get_addr(9), dpaa2_sg_set_addr(9), dpaa2_sg_get_len(9), dpaa2_sg_set_len(9), dpaa2_sg_get_offset(9), dpaa2_sg_set_offset(9), dpaa2_sg_get_format(9), dpaa2_sg_set_format(9), dpaa2_sg_get_bpid(9), dpaa2_sg_set_bpid(9), dpaa2_sg_is_final(9), dpaa2_sg_set_final(9), struct dpaa2_fl_entry(9), dpaa2_fl_get_addr(9), dpaa2_fl_set_addr(9), dpaa2_fl_get_frc(9), dpaa2_fl_set_frc(9), dpaa2_fl_get_ctrl(9), dpaa2_fl_set_ctrl(9), dpaa2_fl_get_flc(9), dpaa2_fl_set_flc(9), dpaa2_fl_get_len(9), dpaa2_fl_set_len(9), dpaa2_fl_get_offset(9), dpaa2_fl_set_offset(9), dpaa2_fl_get_format(9), dpaa2_fl_set_format(9), dpaa2_fl_get_bpid(9), dpaa2_fl_set_bpid(9), dpaa2_fl_is_final(9), dpaa2_fl_set_final(9)

ngl that's a lot of getters and setters and every single one of them is invited to the function πŸ’€

⭐ sign-off ⭐

this page lives at ./include/soc/fsl, it's dated October 2026, and it's struct dpaa2_fd(9) from the Kernel API Manual. periodt. go touch some __le64 fields bestie πŸ“πŸ’–

πŸ“¦ where this page comes from