STRUCT IWL_NAN_SCHEDULE_CMD(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

struct iwl_nan_schedule_cmd β€” the NAN schedule command, bestie πŸ’… (this is a page from the Kernel API Manual, so you know it's legit ✨)


🌸 SYNOPSIS 🌸

ok so here's the whole struct, and yeah you're gonna want to read it in a monospace font because it's giving "actual kernel code" energy πŸŽ€

struct iwl_nan_schedule_cmd {
    struct {
      __le32 availability_map;
      u8 channel_entry[6];
      u8 link_id;
      u8 reserved;
    } channels[NUM_PHY_CTX];
    struct {
      u8 attr_len;
      u8 reserved;
      u8 attr[IWL_MAX_AVAILABILITY_ATTR_LEN];
    } avail_attr;
    u8 deferred;
    u8 reserved[3];
 };

πŸ¦‹ Members πŸ¦‹

no cap, let's go member by member, because every single field here matters πŸ‘‘

  • channels β€” per channel information, literally one entry for each channel, so it's doing the most πŸ’–
    • channels.availability_map β€” a bitmap of the slots this channel is advertising availability on. It will be ULW'ed out if no link, or an inactive link, is referenced by the link ID below. iykyk πŸ™ˆ
    • channels.channel_entry β€” the NAN channel entry descriptor ✨
    • channels.link_id β€” the FW link ID, or 0xFF for unset. yes bestie, 0xFF means "nobody home" πŸ’€
    • channels.reserved β€” (reserved) 🫢
  • avail_attr β€” NAN availability attribute information, the whole vibe check for your availability 🧚
    • avail_attr.attr_len β€” length of the availability attribute πŸ“
    • avail_attr.reserved β€” reserved πŸ™ˆ
    • avail_attr.attr β€” the availability attribute, including the attribute header. header included, no gatekeeping πŸ’…
  • deferred β€” true if the firmware should defer applying the schedule until it's notified all peers. for a deferred schedule update, the firmware should send a notification to the driver after the new schedule is applied. so it's a whole "wait for the group chat to see it" situation fr fr 😭
  • reserved β€” reserved ✨
ok quick reminder: reserved fields are reserved. do not touch. do not pass go. do not put your little data in there πŸš«πŸ’€

πŸ‘‘ SEE ALSO πŸ‘‘

this is the friend group, and they're all iconic in their own way 🌈 β€” they live in the kernel file ./drivers/net/wireless/intel/iwlwifi/fw/api/mac-cfg.h:

  • enum iwl_mac_conf_subcmd_ids(9)
  • struct iwl_p2p_noa_attr(9)
  • struct iwl_probe_resp_data_notif(9)
  • struct iwl_missed_vap_notif(9)
  • struct iwl_channel_switch_start_notif_v1(9)
  • struct iwl_channel_switch_start_notif(9)
  • struct iwl_channel_switch_error_notif_v1(9)
  • struct iwl_channel_switch_error_notif(9)
  • struct iwl_cancel_channel_switch_cmd(9)
  • struct iwl_chan_switch_te_cmd(9)
  • struct iwl_mac_low_latency_cmd(9)
  • struct iwl_mac_client_data(9)
  • struct iwl_mac_p2p_dev_data(9)
  • enum iwl_mac_config_filter_flags(9)
  • struct iwl_mac_wifi_gen_support_v2(9)
  • struct iwl_mac_wifi_gen_support(9)
  • struct iwl_mac_config_cmd_v3(9)
  • struct iwl_mac_nan_data(9)
  • struct iwl_mac_config_cmd(9)
  • enum iwl_link_ctx_modify_flags(9)
  • enum iwl_link_ctx_protection_flags(9)
  • enum iwl_link_ctx_flags(9)
  • enum iwl_link_modify_bandwidth(9)
  • enum iwl_npca_flags(9)
  • struct iwl_npca_params(9)
  • struct iwl_link_config_cmd(9)
  • enum iwl_fw_sta_type(9)
  • struct iwl_sta_cfg_cmd_v1(9)
  • struct iwl_sta_cfg_cmd_v2(9)
  • struct iwl_sta_cfg_cmd(9)
  • struct iwl_aux_sta_cmd(9)
  • struct iwl_remove_sta_cmd(9)
  • struct iwl_mvm_sta_disable_tx_cmd(9)
  • enum iwl_mvm_fw_esr_recommendation(9)
  • struct iwl_esr_mode_notif_v1(9)
  • enum iwl_esr_leave_reason(9)
  • struct iwl_esr_mode_notif(9)
  • struct iwl_missed_beacons_notif(9)
  • struct iwl_esr_trans_fail_notif(9)
  • struct iwl_twt_operation_cmd(9)
  • struct iwl_nan_band_config(9)
  • enum iwl_nan_flags(9)
  • struct iwl_nan_config_cmd(9)
  • struct iwl_nan_schedule_cmd_v1(9)
  • struct iwl_nan_peer_cmd(9)
  • enum iwl_nan_cluster_notif_flags(9)
  • struct iwl_nan_cluster_notif(9)
  • struct iwl_nan_dw_end_notif(9)
  • struct iwl_nan_ulw_attr_notif(9)
  • enum iwl_nan_sched_update_status(9)
  • struct iwl_nan_sched_update_completed_notif(9)

and that's the whole page, bestie!! 🫢 source file is ./drivers/net/wireless/intel/i... and the date on this one is October 2026, page title struct iwl_nan_schedule_cmd(9) β€” go forth and schedule your NAN, you absolute icon πŸ‘‘πŸ’…βœ¨

πŸ“¦ where this page comes from