STRUCT IWL_SAP_ME_MSG_START_OK(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… NAME πŸ’…

struct iwl_sap_me_msg_start_ok β€” okay bestie, this is the struct you use for the %SAP_ME_MSG_START_OK message, and it lives in the kernel API manual (that's the <9> section, iykyk) ✨


πŸŽ€ SYNOPSIS πŸŽ€

struct iwl_sap_me_msg_start_ok {
    struct iwl_sap_me_msg_hdr hdr;
    __le16 init_data_seq_num;
    __le16 init_notif_seq_num;
    u8 supported_version;
    u8 reserved[3];
 };

Like, look at her. Four fields and a header. Iconic, no notes 🌸


πŸ¦‹ MEMBERS πŸ¦‹

  • hdr β€” the message header, and honestly just go read struct iwl_sap_me_msg_hdr for the deets, I'm not explaining it twice πŸ’€
  • init_data_seq_num β€” literally not used. That's it. That's the whole story. She's there for the vibes πŸ™ˆ
  • init_notif_seq_num β€” also not used. Two unused seq nums, standing next to each other, supporting each other 🫢
  • supported_version β€” ooh okay, this one matters: it's the version that will be used ⭐
  • reserved β€” the padding girlies. It's there for alignment. Don't touch, don't move, don't question her πŸ’…

✨ DESCRIPTION ✨

So here's the lore: this message is sent by CSME to the host in response to the SAP_ME_MSG_START message. That's the whole dynamic β€” host says start, CSME says start ok, they're besties now, the handshake ate πŸ”₯


πŸ‘‘ SEE ALSO πŸ‘‘

Kernel file: ./drivers/net/wireless/intel/iwlwifi/mei/sap.h

The full reading list, and yes you are expected to get through all of it πŸ“š:

Introduction(9), Initial Handshake(9), Host and driver state messages(9), Ownership(9), Ownership transfer(9), Data messages(9), enum iwl_sap_me_msg_id(9), struct iwl_sap_me_msg_hdr(9), struct iwl_sap_me_msg_start(9), enum iwl_sap_msg(9), struct iwl_sap_hdr(9), struct iwl_sap_msg_dw(9), enum iwl_sap_nic_owner(9), enum iwl_sap_wifi_cipher_alg(9), struct iwl_sap_notif_connection_info(9), enum iwl_sap_scan_request(9), struct iwl_sap_notif_conn_status(9), enum iwl_sap_radio_state_bitmap(9), enum iwl_sap_notif_host_suspends_bitmap(9), struct iwl_sap_notif_country_code(9), struct iwl_sap_notif_host_link_up(9), enum iwl_sap_notif_link_down_type(9), struct iwl_sap_notif_host_link_down(9), struct iwl_sap_notif_host_nic_info(9), struct iwl_sap_notif_dw(9), struct iwl_sap_notif_sar_limits(9), enum iwl_sap_nvm_caps(9), struct iwl_sap_nvm(9), enum iwl_sap_eth_filter_flags(9), struct iwl_sap_eth_filter(9), enum iwl_sap_flex_filter_flags(9), struct iwl_sap_flex_filter(9), enum iwl_sap_ipv4_filter_flags(9), struct iwl_sap_ipv4_filter(9), enum iwl_sap_ipv6_filter_flags(9), struct iwl_sap_ipv6_filter(9), enum iwl_sap_icmpv6_filter_flags(9), enum iwl_sap_vlan_filter_flags(9), struct iwl_sap_oob_filters(9), struct iwl_sap_csme_filters(9), struct iwl_sap_cb_data(9), struct iwl_sap_pldr_data(9), enum iwl_sap_pldr_status(9)


πŸ’€ ngl that list is a whole semester. hydrate before you start.

okay that's the whole page!! this gorgeous little snippet comes from ./drivers/net/wireless/intel/i..., dated October 2026, and yes the page header says struct iwl_s...msg_start_ok(9) β€” the truncated vibe is intentional, that's just how the man page renders it πŸ’– bye bestie, go read the handshake docs πŸ§šβ€β™€οΈ

πŸ“¦ where this page comes from