STRUCT PDS_FWCTL_COMP(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ NAME ✨

struct pds_fwctl_comp β€” the firmware control completion structure πŸ’… this is the little ✨receipt✨ that comes back when a fwctl op finishes, and bestie, we're gonna read it together 🫢

(this is page struct pds_fwctl_comp(9) from the Kernel API Manual, ok so now you know where you are πŸ’–)


🌸 SYNOPSIS 🌸

okay so here's the whole vibe, exactly as it lives, no cap:

struct pds_fwctl_comp {
    u8 status;
    u8 rsvd;
    __le16 comp_index;
    u8 rsvd2[11];
    u8 color;
 };

that's it. that's the struct. it's giving "small but mighty" πŸ¦‹


πŸŽ€ Members πŸŽ€

time for the member-by-member breakdown, iykyk πŸ‘‘

  • status β€” the status of the firmware control operation πŸ”₯ basically the mood ring of the whole thing.
  • rsvd β€” reserved πŸ™ˆ not yours, don't touch it, it's saving that seat.
  • comp_index β€” the completion index, and it's in little-endian format ⭐ endianness matters, bestie, we do not play fast and loose with byte order.
  • rsvd2 β€” also reserved πŸ’€ more saved seats. hands off.
  • color β€” the color bit that indicates the state of the completion 🌈 yes it's literally called color and yes it tells you the state. iconic behavior.

πŸ¦‹ SEE ALSO πŸ¦‹

here's the whole friend group πŸ’œ lowkey a long list but every single one is invited to the party, so nobody gets left out:

  • kernel file ./include/linux/pds/pds_adminq.h πŸ“
  • struct pds_core_notifyq_event(9)
  • struct pds_core_link_change_event(9)
  • struct pds_core_reset_event(9)
  • struct pds_core_client_event(9)
  • struct pds_core_notifyq_cmd(9)
  • struct pds_core_client_reg_cmd(9)
  • struct pds_core_client_reg_comp(9)
  • struct pds_core_client_unreg_cmd(9)
  • struct pds_core_client_request_cmd(9)
  • enum pds_core_logical_qtype(9)
  • union pds_core_lif_config(9)
  • struct pds_core_lif_status(9)
  • struct pds_core_lif_info(9)
  • struct pds_core_lif_identity(9)
  • struct pds_core_lif_identify_cmd(9)
  • struct pds_core_lif_identify_comp(9)
  • struct pds_core_lif_init_cmd(9)
  • struct pds_core_lif_init_comp(9)
  • struct pds_core_lif_reset_cmd(9)
  • enum pds_core_lif_attr(9)
  • struct pds_core_lif_setattr_cmd(9)
  • struct pds_core_lif_setattr_comp(9)
  • struct pds_core_lif_getattr_cmd(9)
  • struct pds_core_lif_getattr_comp(9)
  • struct pds_core_q_identity(9)
  • struct pds_core_q_identify_cmd(9)
  • struct pds_core_q_identify_comp(9)
  • struct pds_core_q_init_cmd(9)
  • struct pds_core_q_init_comp(9)
  • struct pds_vdpa_cmd(9)
  • struct pds_vdpa_init_cmd(9)
  • struct pds_vdpa_ident(9)
  • struct pds_vdpa_ident_cmd(9)
  • struct pds_vdpa_status_cmd(9)
  • enum pds_vdpa_attr(9)
  • struct pds_vdpa_setattr_cmd(9)
  • struct pds_vdpa_vq_init_cmd(9)
  • struct pds_vdpa_vq_init_comp(9)
  • struct pds_vdpa_vq_reset_cmd(9)
  • struct pds_vdpa_vq_reset_comp(9)
  • struct pds_vdpa_set_features_cmd(9)
  • struct pds_lm_cmd(9)
  • struct pds_lm_state_size_cmd(9)
  • struct pds_lm_state_size_comp(9)
  • struct pds_lm_suspend_cmd(9)
  • struct pds_lm_suspend_status_cmd(9)
  • struct pds_lm_resume_cmd(9)
  • struct pds_lm_sg_elem(9)
  • struct pds_lm_save_cmd(9)
  • struct pds_lm_restore_cmd(9)
  • union pds_lm_dev_state(9)
  • struct pds_lm_dirty_region_info(9)
  • struct pds_lm_dirty_status_cmd(9)
  • enum pds_lm_dirty_bmp_type(9)
  • struct pds_lm_dirty_status_comp(9)
  • struct pds_lm_dirty_enable_cmd(9)
  • struct pds_lm_dirty_disable_cmd(9)
  • struct pds_lm_dirty_seq_ack_cmd(9)
  • struct pds_lm_host_vf_status_cmd(9)
  • struct pds_fwctl_cmd(9)
  • struct pds_fwctl_ident_cmd(9)
  • struct pds_fwctl_ident(9)
  • struct pds_fwctl_query_cmd(9)
  • struct pds_fwctl_query_comp(9)
  • struct pds_fwctl_query_data_endpoint(9)
  • struct pds_fwctl_query_data_operation(9)
  • struct pds_fwctl_query_data(9)
  • struct pds_fwctl_rpc_cmd(9)
  • struct pds_sg_elem(9)
  • struct pds_fwctl_rpc_comp(9)

okay that's the whole page bestie, go forth and read your completion structs with confidence πŸ’–βœ¨

sign-off time πŸŽ€ this little beauty came from ./include/linux/pds, dated October 2026 β€” and that's on periodt πŸ’…πŸ«Ά

πŸ“¦ where this page comes from