STRUCT IWL_TOF_RANGE_REQ_CMD_V7(9)
β¨ struct iwl_tof_range_req_cmd_v7(9) β¨
okay bestie so this is a page from the Kernel API Manual, and it's literally all about struct iwl_tof_range_req_cmd_v7 β the start measurement cmd. yes the start measurement cmd. we're doing time-of-flight ranging and we're doing it iconically π
π NAME π
struct iwl_tof_range_req_cmd_v7 β start measurement cmd. that's the whole vibe. that's the whole job. π¦
πΈ SYNOPSIS πΈ
struct iwl_tof_range_req_cmd_v7 {
__le32 initiator_flags;
u8 request_id;
u8 num_of_ap;
u8 range_req_bssid[ETH_ALEN];
u8 macaddr_mask[ETH_ALEN];
u8 macaddr_template[ETH_ALEN];
__le32 req_timeout_ms;
__le32 tsf_mac_id;
__le16 common_calib;
__le16 specific_calib;
struct iwl_tof_range_req_ap_entry_v3 ap[IWL_TOF_MAX_APS];
};
look at her. she's structured. she's got range. she's got IWL_TOF_MAX_APS worth of AP energy π
π Members π
initiator_flagsβ the flags, bestie. go check outiwl_tof_initiator_flagsfor the deets β¨request_idβ a Token incremented per request. and like, the same Token gets sent back in the range response, so it's giving matching-bracelet energy π«Άnum_of_apβ how many APs we're measuring. error if it's> IWL_TOF_MAX_APS, so pls don't overflow her πrange_req_bssidβ the ranging request BSSID. the address. the location. the girlboss πmacaddr_maskβ bits set to 0 shall be copied from the MAC address template. bits set to 1 shall be randomized by the UMAC. mask does the deciding, no cap πmacaddr_templateβ the MAC address template to use for the non-randomized bits. the blueprint. the origin story πreq_timeout_msβ the requested timeout of the response, in units of milliseconds. this is the session time for completing the measurement. so like, the deadline. respect it β°tsf_mac_idβ report the measurement start time for each ap in terms of the TSF of this mac id.0xffto disable TSF reporting.0xffis the "nah we're good" of mac ids πcommon_calibβ the common calib value to inject to this measurement calc π§specific_calibβ the specific calib value to inject to this measurement calc. common vs specific, they're a duo, they ate πapβ per-AP request data, seestruct iwl_tof_range_req_ap_entry_v2. it's an array, it's indexed, it's living her best life π₯
ngl if you're the one writing this struct into the firmware, double-checknum_of_apfirst. the manpage literally says error if> IWL_TOF_MAX_APSand we are NOT testing fate today π
π¦ SEE ALSO π¦
everything else in the location universe, fr fr. live in 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_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)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)
like, she has a whole friend group. the v3s the v4s the v5s the v6s the v7s the v8s the v9s the v11s the v12s the v13s. everybody's invited to the function π
and that's the page, bestie!! thanks for reading, mwah π«Άπ
sourced from./drivers/net/wireless/intel/i..., dated October 2026, and brought to you bystruct iwl_...e_req_cmd_v7(9)β the manual name that got cropped for the algorithm but never for our hearts ππ stay slay, stay ranging β¨
π¦ 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