ENUM IWL_LOCATION_SUBCMD_IDS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– enum iwl_location_subcmd_ids(9) πŸ’–

Okay so bestie, picture this: it's a Kernel API Manual page, right, and it's entirely about the location group command IDs. That's it. That's the whole vibe. It's an enum β€” the location group command IDs one β€” and honestly? It ate. Let me walk you through it. πŸ¦‹


✨ NAME ✨

enum iwl_location_subcmd_ids β€” the location group command IDs, no cap πŸ’…


🌸 SYNOPSIS 🌸

enum iwl_location_subcmd_ids {
    TOF_RANGE_REQ_CMD ,
    TOF_CONFIG_CMD ,
    TOF_RANGE_ABORT_CMD ,
    TOF_RANGE_REQ_EXT_CMD ,
    TOF_RESPONDER_CONFIG_CMD ,
    TOF_RESPONDER_DYN_CONFIG_CMD ,
    CSI_HEADER_NOTIFICATION ,
    CSI_CHUNKS_NOTIFICATION ,
    TOF_LC_NOTIF ,
    TOF_RESPONDER_STATS ,
    TOF_MCSI_DEBUG_NOTIF ,
    TOF_RANGE_RESPONSE_NOTIF

};

Look at that lineup. Twelve constants. All iconic, all accounted for. πŸ‘‘


πŸŽ€ Constants πŸŽ€

Every single one of these is a main character, so let's give them their moment:

  • TOF_RANGE_REQ_CMD β€” the TOF ranging request πŸ’« and it does NOT pick just one struct, bestie, it uses one of struct iwl_tof_range_req_cmd_v5, struct iwl_tof_range_req_cmd_v7, struct iwl_tof_range_req_cmd_v8, struct iwl_tof_range_req_cmd_v9, struct iwl_tof_range_req_cmd_v11, or struct iwl_tof_range_req_cmd_v7. Yes, _v7 is listed twice. I'm not gonna edit the original, that's not my job, I'm just the messenger 🫢
  • TOF_CONFIG_CMD β€” the TOF configuration, and it uses struct iwl_tof_config_cmd. Simple. Elegant. Slay.
  • TOF_RANGE_ABORT_CMD β€” aborts ongoing ranging, uses struct iwl_tof_range_abort_cmd. The "nvm bestie, nevermind" of the group 😭
  • TOF_RANGE_REQ_EXT_CMD β€” the TOF extended ranging config, uses struct iwl_tof_range_req_ext_cmd. Extended! We love an upgrade ✨
  • TOF_RESPONDER_CONFIG_CMD β€” the FTM responder configuration, and it's one of struct iwl_tof_responder_config_cmd_v6, struct iwl_tof_responder_config_cmd_v7, struct iwl_tof_responder_config_cmd_v8 or struct iwl_tof_responder_config_cmd_v9. Pick your fighter πŸ’…
  • TOF_RESPONDER_DYN_CONFIG_CMD β€” the FTM dynamic configuration, uses struct iwl_tof_responder_dyn_config_cmd. Dynamic! She moves! 🧚
  • CSI_HEADER_NOTIFICATION β€” CSI header. That's the whole description. Short, sweet, mysterious. We respect it πŸ™ˆ
  • CSI_CHUNKS_NOTIFICATION β€” a CSI chunk, uses struct iwl_csi_chunk_notification. Chunked, not chunked up, there's a difference πŸ“
  • TOF_LC_NOTIF β€” used for LCI/civic location, and get this, it contains just the action frame. Minimalist queen πŸ‘‘
  • TOF_RESPONDER_STATS β€” the FTM responder statistics notification, uses struct iwl_ftm_responder_stats. Numbers! Stats! She's tracking everything πŸ“Š
  • TOF_MCSI_DEBUG_NOTIF β€” the MCSI debug notification, uses struct iwl_tof_mcsi_notif. Debug era πŸ”₯
  • TOF_RANGE_RESPONSE_NOTIF β€” the ranging response, using one of struct iwl_tof_range_rsp_ntfy_v5, struct iwl_tof_range_rsp_ntfy_v6, struct iwl_tof_range_rsp_ntfy_v7, struct iwl_tof_range_rsp_ntfy_v9 or struct iwl_tof_range_rsp_ntfy. Note: no _v8 in this roster, that's just how it is, don't come for me πŸ’€

🌈 SEE ALSO 🌈

Like, literally all of the family, fr fr. They all live in the kernel file ./drivers/net/wireless/intel/iwlwifi/fw/api/location.h β€” go say hi to your cousins:

  • 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)
  • 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)

And that's the page, bestie 🫢 straight from ./drivers/net/wireless/intel/i... (that's the path, slightly truncated by the man page itself, not me, I would never πŸ™ˆ), dated October 2026, and it's titled enum iwl_loc...n_subcmd_ids(9) because even kernel docs get a little truncated sometimes. Love that for us. Bye bye, go read your structs πŸ’œβœ¨

πŸ“¦ where this page comes from