STRUCT IWL_RX_NO_DATA_VER_3(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct iwl_rx_no_data_ver_3 β€” RX no data descriptor πŸ’…

okay bestie, so this is a page from the Kernel API Manual (section 9, iykyk) and honestly? it's giving "tiny struct, huge lore." it's struct iwl_rx_no_data_ver_3 β€” the RX no data descriptor β€” and it lives in the kernel's Intel iwlwifi world. let's get into it πŸŽ€


✨ NAME ✨

struct iwl_rx_no_data_ver_3 β€” the RX no data descriptor. that's literally the whole name, no notes, she said what she said πŸ’…


🌸 SYNOPSIS 🌸

struct iwl_rx_no_data_ver_3 {
    __le32 info;
    __le32 rssi;
    __le32 on_air_rise_time;
    __le32 fr_time;
    __le32 rate;
    __le32 phy_info[2];
    __le32 rx_vec[4];
 };

seven members, all __le32, all iconic. count them, don't let anyone tell you otherwise 🫢


πŸ‘‘ Members πŸ‘‘

  • info β€” bits 7:0 are the frame type, bits 15:8 are the RX error type. two little facts living in one 32-bit word, lowkey efficient ✨
  • rssi β€” okay this one's a whole bit-field glow-up: bits 7:0 are energy chain-A, bits 15:8 are chain-B, both measured at FINA time (FINA_ENERGY), and bits 16:23 are the channel. three jobs, one field, main character energy fr fr πŸ”₯
  • on_air_rise_time β€” this is GP2 during on air rise. yes bestie, exactly that, no further explanation given, we respect it πŸ’€
  • fr_time β€” the frame time. short, sweet, to the point 🌸
  • rate β€” the rate/mcs of frame, and the format depends on the notification version. so like… read the room (and the version) before you interpret it πŸ™ˆ
  • phy_info β€” holds enum iwl_rx_phy_eht_data0 and enum iwl_rx_phy_info_type. two enums, one array element each, we love a duo πŸ’œ
  • rx_vec β€” the raw tea β˜•: DW-12:9 raw RX vectors from DSP according to modulation type. and the breakdown is:
    • for VHT: OFDM_RX_VECTOR_SIGA1_OUT, OFDM_RX_VECTOR_SIGA2_OUT
    • for HE: OFDM_RX_VECTOR_HE_SIGA1_OUT, OFDM_RX_VECTOR_HE_SIGA2_OUT
    • for EHT: OFDM_RX_VECTOR_USIG_A1_OUT, OFDM_RX_VECTOR_USIG_A2_EHT_OUT, OFDM_RX_VECTOR_EHT_OUT, OFDM_RX_VECTOR_EHT_USER_FIELD_OUT

she's thorough, she's detailed, she ate and left absolutely no crumbs 🌈


πŸ¦‹ SEE ALSO πŸ¦‹

okay this is the part where the page goes full group-chat-invite-list mode, because the kernel file is ./drivers/net/wireless/intel/iwlwifi/fw/api/rx.h and it's connected to literally everyone. no cap, here's the whole squad:

  • struct iwl_rx_phy_info(9)
  • struct iwl_rx_mpdu_res_start(9)
  • enum iwl_rx_phy_flags(9)
  • enum iwl_mvm_rx_status(9)
  • struct iwl_rx_mpdu_desc_v1(9)
  • struct iwl_rx_mpdu_desc_v3(9)
  • struct iwl_rx_mpdu_desc(9)
  • struct iwl_rx_no_data(9)
  • enum iwl_bar_frame_release_sta_tid(9)
  • enum iwl_bar_frame_release_ba_info(9)
  • struct iwl_bar_frame_release(9)
  • struct iwl_rss_config_cmd(9)
  • struct iwl_rxq_sync_cmd(9)
  • struct iwl_rxq_sync_notification(9)
  • enum iwl_mvm_pm_event(9)
  • struct iwl_mvm_pm_state_notification(9)
  • struct iwl_ba_window_status_notif(9)
  • struct iwl_rfh_queue_data(9)
  • struct iwl_rfh_queue_config(9)
  • struct iwl_beacon_filter_notif_v1(9)
  • struct iwl_beacon_filter_notif(9)
  • struct iwl_rx_phy_air_sniffer_ntfy(9)

that's twenty-two references, bestie. twenty-two. i counted so you don't have to πŸ’…βœ¨


ngl the page footer got a lil chopped β€” it's from ./drivers/net/wireless/intel/i... (shortened like a text message that got cut off 😭) and it's dated October 2026, page struct iwl_rx_no_data_ver_3(9) in the Kernel API Manual. mwah, that's the whole page, periodt πŸ«ΆπŸ’–
πŸ“¦ where this page comes from