STRUCT IWL_TOF_RANGE_RSP_AP_ENTRY_NTFY(9)

๐Ÿ“ฆ version 7.3.1, in nixpkgs unstable

๐ŸŽ€ struct iwl_tof_range_rsp_ap_entry_ntfy(9) ๐ŸŽ€

okay bestie, welcome to the Kernel API Manual โœจ this one's all about struct iwl_tof_range_rsp_ap_entry_ntfy and honestly? she's giving "receipts from the AP" energy ๐Ÿ’…


๐ŸŒธ NAME ๐ŸŒธ

struct iwl_tof_range_rsp_ap_entry_ntfy โ€” AP parameters (response), periodt ๐Ÿ’–


โœจ SYNOPSIS โœจ

like, here's her whole shape, no cap, copy it exactly:

struct iwl_tof_range_rsp_ap_entry_ntfy {
    u8 bssid[ETH_ALEN];
    u8 measure_status;
    u8 measure_bw;
    __le32 rtt;
    __le32 rtt_variance;
    __le32 rtt_spread;
    s8 rssi;
    u8 rssi_spread;
    u8 last_burst;
    u8 refusal_period;
    __le32 timestamp;
    __le32 start_tsf;
    __le32 reserved1[2];
    __le32 t2t3_initiator;
    __le32 t1t4_responder;
    __le16 common_calib;
    __le16 specific_calib;
    __le32 papd_calib_output;
    u8 rttConfidence;
    u8 reserved[3];
    u8 rx_pn[IEEE80211_CCMP_PN_LEN];
    u8 tx_pn[IEEE80211_CCMP_PN_LEN];
};

๐Ÿฆ‹ Members ๐Ÿฆ‹

okay so every single field, one by one, let's go ๐Ÿซถ

  • bssid โ€” the BSSID of the AP ๐Ÿ’ซ literally just which AP we're talking about.
  • measure_status โ€” current AP's measurement status, one of enum iwl_tof_entry_status. bestie's mood ring, basically ๐ŸŒˆ
  • measure_bw โ€” Current AP Bandwidth: 0 20MHz, 1 40MHz, 2 80MHz ๐Ÿ“ก (yes those are the actual numbers, don't @ me)
  • rtt โ€” The Round Trip Time that took for the last measurement for current AP [pSec] โฑ๏ธ
  • rtt_variance โ€” The Variance of the RTT values measured for current AP. she's not consistent, and that's the tea ๐Ÿ™ˆ
  • rtt_spread โ€” The Difference between the maximum and the minimum RTT values measured for current AP in the current session [pSec] ๐Ÿ˜ญ the range of the chaos.
  • rssi โ€” RSSI as uploaded in the Channel Estimation notification ๐Ÿ“ถ
  • rssi_spread โ€” The Difference between the maximum and the minimum RSSI values measured for current AP in the current session. same vibe check, but for signal ๐Ÿ”ฅ
  • last_burst โ€” 1 if no more FTM sessions are scheduled for this responder ๐Ÿ like, that's a wrap, we're done here.
  • refusal_period โ€” refusal period in case of IWL_TOF_ENTRY_RESPONDER_CANNOT_COLABORATE [sec] ๐Ÿ’€ the AP said "not today" and this is how long they're on read.
  • timestamp โ€” The GP2 Clock [usec] where Channel Estimation notification was uploaded by the LMAC โฐ
  • start_tsf โ€” measurement start time in TSF of the mac specified in the range request ๐Ÿ•ฐ๏ธ
  • reserved1 โ€” reserved, for backwards compatibility ๐ŸŽ€ (she's just sitting there so old code doesn't break, iconic behavior honestly)
  • t2t3_initiator โ€” as calculated from the algo in the initiator ๐Ÿงฎ
  • t1t4_responder โ€” as calculated from the algo in the responder ๐Ÿงฎ
  • common_calib โ€” Calib val that was used in for this AP measurement โœจ (yes, the wording is literally "used in for", we keep it, we don't fix it, we respect her)
  • specific_calib โ€” val that was used in for this AP measurement ๐ŸŽฏ
  • papd_calib_output โ€” The result of the tof papd calibration that was injected into the algorithm. ๐Ÿ’‰ algorithm said "thank u for the data".
  • rttConfidence โ€” a value between 0 - 31 that represents the rtt accuracy ๐Ÿ‘‘ lowkey how much you should trust her.
  • reserved โ€” for alignment ๐Ÿ“ (padding squads, always on duty)
  • rx_pn โ€” the last PN used for this responder Rx in case PMF is configured in LE byte order ๐Ÿ”
  • tx_pn โ€” the last PN used for this responder Tx in case PMF is configured in LE byte order ๐Ÿ”

๐Ÿ’œ SEE ALSO ๐Ÿ’œ

okay the friend group is HUGE, here's everyone tagged in the group chat ๐Ÿ“ฑ

Kernel file ./drivers/net/wireless/intel/iwlwifi/fw/api/location.h enum iwl_location_subcmd_ids(9), enum iwl_location_frame_format(9), enum iwl_location_bw(9), enum iwl_location_format_bw(9), struct iwl_tof_config_cmd(9), enum iwl_tof_bandwidth(9), enum iwl_tof_responder_cmd_valid_field(9), enum iwl_tof_responder_cfg_flags(9), struct iwl_tof_responder_config_cmd_v6(9), struct iwl_tof_responder_config_cmd_v7(9), struct iwl_tof_responder_config_cmd_v8(9), struct iwl_tof_responder_config_cmd_v9(9), struct iwl_tof_responder_config_cmd(9), struct iwl_tof_responder_dyn_config_cmd_v2(9), enum iwl_responder_dyn_cfg_valid_flags(9), struct iwl_tof_responder_dyn_config_cmd(9), struct iwl_tof_range_req_ext_cmd(9), enum iwl_tof_location_query(9), enum iwl_initiator_ap_flags(9), struct iwl_tof_range_req_ap_entry_v3(9), struct iwl_tof_range_req_ap_entry_v4(9), enum iwl_location_cipher(9), struct iwl_tof_range_req_ap_entry_v6(9), struct iwl_tof_range_req_ap_entry_v7(9), struct iwl_tof_range_req_ap_entry_v8(9), struct iwl_tof_range_req_ap_entry_v9(9), struct iwl_tof_range_req_ap_entry(9), enum iwl_tof_response_mode(9), enum iwl_tof_initiator_flags(9), struct iwl_tof_range_req_cmd_v5(9), struct iwl_tof_range_req_cmd_v7(9), struct iwl_tof_range_req_cmd_v8(9), struct iwl_tof_range_req_cmd_v9(9), struct iwl_tof_range_req_cmd_v11(9), struct iwl_tof_range_req_cmd_v12(9), struct iwl_tof_range_req_cmd_v13(9), struct iwl_tof_range_req_cmd(9), enum iwl_tof_entry_status(9), struct iwl_tof_range_rsp_ap_entry_ntfy_v3(9), struct iwl_tof_range_rsp_ap_entry_ntfy_v4(9), struct iwl_tof_range_rsp_ap_entry_ntfy_v5(9), struct iwl_tof_range_rsp_ap_entry_ntfy_v7(9), enum iwl_tof_response_status(9), struct iwl_tof_range_rsp_ntfy_v5(9), struct iwl_tof_range_rsp_ntfy_v6(9), struct iwl_tof_range_rsp_ntfy_v7(9), struct iwl_tof_range_rsp_ntfy_v9(9), struct iwl_tof_range_rsp_ntfy(9), struct iwl_tof_mcsi_notif(9), struct iwl_tof_range_abort_cmd(9), struct iwl_ftm_responder_stats(9) ๐Ÿ’–


ngl bestie, that's the whole page. every field, every unit, every "used in for" โ€” nothing skipped, we ate and left no crumbs ๐Ÿ“

mwah ๐Ÿ’‹ this came from ./drivers/net/wireless/intel/i... and it's dated October 2026, so like, see u in the future, and remember: struct iwl_tof_range_rsp_ap_entry_ntfy(9) forever ๐ŸŒŸ

๐Ÿ“ฆ where this page comes from