STRUCT IWL_TOF_RANGE_RSP_AP_ENTRY_NTFY_V7(9)
πΈ struct iwl_tof_range_rsp_ap_entry_ntfy_v7(9) πΈ
okay so bestie, welcome to the Kernel API Manual β yes we're reading kernel docs together, this is our bonding era π and this page is literally the whole rundown on one struct, so grab a lil snack and let's go β¨
β¨ NAME β¨
struct iwl_tof_range_rsp_ap_entry_ntfy_v7 β AP parameters (response), iykyk π«Ά
π¦ SYNOPSIS π¦
here's the whole shape of it, copied exactly, no cap:
struct iwl_tof_range_rsp_ap_entry_ntfy_v7 {
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 rx_rate_n_flags;
__le32 tx_rate_n_flags;
__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 π
every single field, lovingly explained, main character energy each one:
bssidβ the BSSID of the AP π like, which AP is this even about.measure_statusβ the current AP's measurement status, one ofenum iwl_tof_entry_status. that's the vibe check on how the measurement went πmeasure_bwβ current AP bandwidth, and the mapping is0β 20MHz,1β 40MHz,2β 80MHz. slay, more hertz = more drama β¨rttβ The Round Trip Time that took for the last measurement for current AP [pSec]. picoseconds, because we're precise like that πrtt_varianceβ the variance of the RTT values measured for current AP. the chaotic-ness of the numbers, basically πͺοΈrtt_spreadβ the difference between the max and the min RTT values measured for current AP in the current session [pSec].rssiβ RSSI as uploaded in the Channel Estimation notification πΆrssi_spreadβ the difference between the max and the min RSSI values measured for current AP in the current session.last_burstβ1if no more FTM sessions are scheduled for this responder. like when someone's last text was a final text πrefusal_periodβ refusal period in case ofIWL_TOF_ENTRY_RESPONDER_CANNOT_COLABORATE[sec]. yes it's spelled "COLABORATE", don't come for me, that's literally the identifier π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.rx_rate_n_flagsβ rate and flags of the last FTM frame received from this responder π₯tx_rate_n_flagsβ rate and flags of the last ack sent to this responder π€t2t3_initiatorβ as calculated from the algo in the initiator.t1t4_responderβ as calculated from the algo in the responder. matching set, we love a duo π«Άcommon_calibβ Calib val that was used in for this AP measurement. (yes, "used in for" β I'm just the messenger bestie π§)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 π₯rttConfidenceβ a value between0-31that represents the rtt accuracy. lowercase-sandwich naming, capital C in the middle, we don't question it, we respect it πreservedβ for alignment. it's the padding, it's doing its little structural job, iconic π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. LE byte order on both, noted π
π SEE ALSO π
okay this list is a whole friend group, but every single one of them, exactly as written:
- the 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(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)
that's the whole page bestie, no skips, no shortcuts π
and for the lil sign-off: this one lives in the source tree at ./drivers/net/wireless/intel/i..., it's dated October 2026, and the footer stamp is literally struct iwl_...ntry_ntfy_v7(9) β the truncated-est little nameplate ever, we stan a legend πβ¨π¦
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms