diff options
Diffstat (limited to 'sys/contrib/dev/iwlwifi/fw/api/scan.h')
| -rw-r--r-- | sys/contrib/dev/iwlwifi/fw/api/scan.h | 46 | 
1 files changed, 33 insertions, 13 deletions
diff --git a/sys/contrib/dev/iwlwifi/fw/api/scan.h b/sys/contrib/dev/iwlwifi/fw/api/scan.h index 8598031567bb..f486d624500b 100644 --- a/sys/contrib/dev/iwlwifi/fw/api/scan.h +++ b/sys/contrib/dev/iwlwifi/fw/api/scan.h @@ -731,39 +731,46 @@ enum iwl_umac_scan_general_params_flags2 {   * struct iwl_scan_channel_cfg_umac   * @flags:		bitmap - 0-19:	directed scan to i'th ssid.   * @channel_num:	channel number 1-13 etc. - * @band:		band of channel: 0 for 2GHz, 1 for 5GHz - * @iter_count:		repetition count for the channel. - * @iter_interval:	interval between two scan iterations on one channel. + * @v1:			command version 1 + * @v1.iter_count:	repetition count for the channel. + * @v1.iter_interval:	interval between two scan iterations on one channel. + * @v2:			command versions 2-4 + * @v2.band:		band of channel: 0 for 2GHz, 1 for 5GHz + * @v2.iter_count:	repetition count for the channel. + * @v2.iter_interval:	interval between two scan iterations on one channel. + * @v5:			command versions 5 and up + * @v5.iter_count:	repetition count for the channel. + * @v5.iter_interval:	interval between two scan iterations on one channel. + * @v5.psd_20:		highest PSD value for all APs known so far + *			on this channel.   */  struct  iwl_scan_channel_cfg_umac {  #define IWL_CHAN_CFG_FLAGS_BAND_POS 30  	__le32 flags; +	u8 channel_num;  	/* All versions are of the same size, so use a union without adjusting  	 * the command size later  	 */  	union {  		struct { -			u8 channel_num;  			u8 iter_count;  			__le16 iter_interval; -		} v1;  /* SCAN_CHANNEL_CONFIG_API_S_VER_1 */ +		} __packed v1;  /* SCAN_CHANNEL_CONFIG_API_S_VER_1 */  		struct { -			u8 channel_num;  			u8 band;  			u8 iter_count;  			u8 iter_interval; -		 } v2; /* SCAN_CHANNEL_CONFIG_API_S_VER_2 -			* SCAN_CHANNEL_CONFIG_API_S_VER_3 -			* SCAN_CHANNEL_CONFIG_API_S_VER_4 -			*/ +		} __packed v2; /* SCAN_CHANNEL_CONFIG_API_S_VER_2 +				* SCAN_CHANNEL_CONFIG_API_S_VER_3 +				* SCAN_CHANNEL_CONFIG_API_S_VER_4 +				*/  		struct { -			u8 channel_num;  			u8 psd_20;  			u8 iter_count;  			u8 iter_interval; -		} v5;  /* SCAN_CHANNEL_CONFIG_API_S_VER_5 */ -	}; +		} __packed v5;  /* SCAN_CHANNEL_CONFIG_API_S_VER_5 */ +	} __packed;  } __packed;  /** @@ -1133,6 +1140,19 @@ struct iwl_umac_scan_abort {  } __packed; /* SCAN_ABORT_CMD_UMAC_API_S_VER_1 */  /** + * enum iwl_umac_scan_abort_status + * + * @IWL_UMAC_SCAN_ABORT_STATUS_SUCCESS: scan was successfully aborted + * @IWL_UMAC_SCAN_ABORT_STATUS_IN_PROGRESS: scan abort is in progress + * @IWL_UMAC_SCAN_ABORT_STATUS_NOT_FOUND: nothing to abort + */ +enum iwl_umac_scan_abort_status { +	IWL_UMAC_SCAN_ABORT_STATUS_SUCCESS = 0, +	IWL_UMAC_SCAN_ABORT_STATUS_IN_PROGRESS, +	IWL_UMAC_SCAN_ABORT_STATUS_NOT_FOUND, +}; + +/**   * struct iwl_umac_scan_complete   * @uid: scan id, &enum iwl_umac_scan_uid_offsets   * @last_schedule: last scheduling line  | 
