STRUCT IONIC_FW_DOWNLOAD_CMD(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

hey bestie πŸ’– welcome to the Kernel API Manual page for struct ionic_fw_download_cmd(9) β€” the one and only firmware download command. she’s small, she’s specific, and she’s literally the main character of this header. πŸ‘‘

πŸ’– NAME πŸ’–

struct ionic_fw_download_cmd β€” Firmware download command. periodt. That’s the name, that’s the assignment, and we are not doing nickname energy on a kernel struct. ✨

✨ SYNOPSIS ✨

okay so the actual shape is giving exactly this, and we are keeping it character-for-character because kernel code does not want your creative writing era:

struct ionic_fw_download_cmd {
    u8 opcode;
    u8 rsvd[3];
    __le32 offset;
    __le64 addr;
    __le32 length;
};

πŸŽ€ Members πŸŽ€

vibe check on the members, one by one:

  • opcode β€” it’s the opcode. the original literally just says opcode again, and honestly? iconic. 🫢
  • rsvd β€” reserved byte(s). hands off, bestie, it’s reserved. πŸ™ˆ
  • offset β€” offset of the firmware buffer within the full image. 🎯
  • addr β€” dma address of the firmware buffer. πŸ’…
  • length β€” number of valid bytes in the firmware buffer. πŸ”₯

πŸ¦‹ SEE ALSO πŸ¦‹

first up, the actual kernel file, no cap:

  • Kernel file: ./drivers/net/ethernet/pensando/ionic/ionic_if.h

then the whole extended friend group, in order:

  • struct ionic_admin_cmd(9), struct ionic_admin_comp(9), struct ionic_nop_cmd(9), struct ionic_nop_comp(9), struct ionic_dev_init_cmd(9), struct ionic_dev_init_comp(9), struct ionic_dev_reset_cmd(9), struct ionic_dev_reset_comp(9)
  • struct ionic_dev_identify_cmd(9), struct ionic_dev_identify_comp(9), union ionic_drv_identity(9), enum ionic_dev_capability(9), union ionic_dev_identity(9), struct ionic_lif_identify_cmd(9), struct ionic_lif_identify_comp(9), enum ionic_lif_capability(9)
  • enum ionic_logical_qtype(9), enum ionic_q_feature(9), enum ionic_rxq_feature(9), enum ionic_txq_feature(9), enum ionic_hwstamp_bits(9), struct ionic_lif_logical_qtype(9), enum ionic_lif_state(9), union ionic_lif_config(9)
  • enum ionic_lif_rdma_cap_stats(9), union ionic_lif_identity(9), struct ionic_lif_init_cmd(9), struct ionic_lif_init_comp(9), struct ionic_q_identify_cmd(9), struct ionic_q_identify_comp(9), union ionic_q_identity(9), struct ionic_q_init_cmd(9)
  • struct ionic_q_init_comp(9), struct ionic_txq_desc(9), struct ionic_txq_sg_elem(9), struct ionic_txq_sg_desc(9), struct ionic_txq_comp(9), struct ionic_rxq_desc(9), struct ionic_rxq_sg_elem(9), struct ionic_rxq_sg_desc(9)
  • struct ionic_rxq_comp(9), enum ionic_pkt_class(9), struct ionic_q_control_cmd(9), enum ionic_phy_type(9), enum ionic_xcvr_state(9), enum ionic_port_type(9), enum ionic_port_admin_state(9), enum ionic_port_oper_status(9)
  • enum ionic_port_fec_type(9), enum ionic_port_pause_type(9), enum ionic_port_loopback_mode(9), struct ionic_xcvr_status(9), union ionic_port_config(9), struct ionic_port_status(9), struct ionic_port_identify_cmd(9), struct ionic_port_identify_comp(9)
  • struct ionic_port_init_cmd(9), struct ionic_port_init_comp(9), struct ionic_port_reset_cmd(9), struct ionic_port_reset_comp(9), enum ionic_stats_ctl_cmd(9), enum ionic_txstamp_mode(9), enum ionic_port_attr(9), struct ionic_port_setattr_cmd(9)
  • struct ionic_port_setattr_comp(9), struct ionic_port_getattr_cmd(9), struct ionic_port_getattr_comp(9), struct ionic_lif_status(9), struct ionic_lif_reset_cmd(9), enum ionic_dev_attr(9), struct ionic_dev_setattr_cmd(9), struct ionic_dev_setattr_comp(9)
  • struct ionic_dev_getattr_cmd(9), struct ionic_dev_getattr_comp(9), enum ionic_lif_attr(9), struct ionic_lif_setattr_cmd(9), struct ionic_lif_setattr_comp(9), struct ionic_lif_getattr_cmd(9), struct ionic_lif_getattr_comp(9), struct ionic_lif_setphc_cmd(9)
  • struct ionic_rx_mode_set_cmd(9), struct ionic_rx_filter_add_cmd(9), struct ionic_rx_filter_add_comp(9), struct ionic_rx_filter_del_cmd(9), enum ionic_vf_link_status(9), struct ionic_vf_setattr_cmd(9), struct ionic_vf_getattr_cmd(9), struct ionic_vf_ctrl_cmd(9)
  • struct ionic_vf_ctrl_comp(9), struct ionic_discover_cmb_cmd(9), struct ionic_discover_cmb_comp(9), union ionic_cmb_region(9), union ionic_discover_cmb_identity(9), struct ionic_qos_identify_cmd(9), struct ionic_qos_identify_comp(9), enum ionic_qos_class_type(9)
  • enum ionic_qos_sched_type(9), union ionic_qos_config(9), union ionic_qos_identity(9), struct ionic_qos_init_cmd(9), struct ionic_qos_reset_cmd(9), struct ionic_qos_clear_stats_cmd(9), enum ionic_fw_control_oper(9), struct ionic_fw_control_cmd(9)
  • struct ionic_fw_control_comp(9), struct ionic_rdma_reset_cmd(9), struct ionic_rdma_queue_cmd(9), struct ionic_notifyq_event(9), struct ionic_link_change_event(9), struct ionic_reset_event(9), struct ionic_heartbeat_event(9), struct ionic_log_event(9)
  • struct ionic_xcvr_event(9), union ionic_port_identity(9), struct ionic_port_info(9), struct ionic_lif_info(9), struct ionic_hwstamp_regs(9), union ionic_dev_info_regs(9), union ionic_dev_cmd_regs(9), union ionic_dev_regs(9)
  • struct ionic_doorbell(9)

that’s the whole page, bestie 🫢 footer energy: source/version ./drivers/net/ethernet/pensand..., date October 2026, and the page sig struct ionic...download_cmd(9). mwah πŸ’‹

πŸ“¦ where this page comes from