| .. | .. |
|---|
| 5 | 5 | * |
|---|
| 6 | 6 | * GPL LICENSE SUMMARY |
|---|
| 7 | 7 | * |
|---|
| 8 | | - * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved. |
|---|
| 9 | 8 | * Copyright(c) 2013 - 2014 Intel Mobile Communications GmbH |
|---|
| 10 | 9 | * Copyright(c) 2016 - 2017 Intel Deutschland GmbH |
|---|
| 10 | + * Copyright(c) 2012-2014, 2018 - 2020 Intel Corporation |
|---|
| 11 | 11 | * |
|---|
| 12 | 12 | * This program is free software; you can redistribute it and/or modify |
|---|
| 13 | 13 | * it under the terms of version 2 of the GNU General Public License as |
|---|
| .. | .. |
|---|
| 27 | 27 | * |
|---|
| 28 | 28 | * BSD LICENSE |
|---|
| 29 | 29 | * |
|---|
| 30 | | - * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved. |
|---|
| 31 | 30 | * Copyright(c) 2013 - 2014 Intel Mobile Communications GmbH |
|---|
| 32 | 31 | * Copyright(c) 2016 - 2017 Intel Deutschland GmbH |
|---|
| 32 | + * Copyright(c) 2012-2014, 2018 - 2020 Intel Corporation |
|---|
| 33 | 33 | * All rights reserved. |
|---|
| 34 | 34 | * |
|---|
| 35 | 35 | * Redistribution and use in source and binary forms, with or without |
|---|
| .. | .. |
|---|
| 126 | 126 | STA_FLG_MAX_AGG_SIZE_256K = (5 << STA_FLG_MAX_AGG_SIZE_SHIFT), |
|---|
| 127 | 127 | STA_FLG_MAX_AGG_SIZE_512K = (6 << STA_FLG_MAX_AGG_SIZE_SHIFT), |
|---|
| 128 | 128 | STA_FLG_MAX_AGG_SIZE_1024K = (7 << STA_FLG_MAX_AGG_SIZE_SHIFT), |
|---|
| 129 | | - STA_FLG_MAX_AGG_SIZE_MSK = (7 << STA_FLG_MAX_AGG_SIZE_SHIFT), |
|---|
| 129 | + STA_FLG_MAX_AGG_SIZE_2M = (8 << STA_FLG_MAX_AGG_SIZE_SHIFT), |
|---|
| 130 | + STA_FLG_MAX_AGG_SIZE_4M = (9 << STA_FLG_MAX_AGG_SIZE_SHIFT), |
|---|
| 131 | + STA_FLG_MAX_AGG_SIZE_MSK = (0xf << STA_FLG_MAX_AGG_SIZE_SHIFT), |
|---|
| 130 | 132 | |
|---|
| 131 | 133 | STA_FLG_AGG_MPDU_DENS_SHIFT = 23, |
|---|
| 132 | 134 | STA_FLG_AGG_MPDU_DENS_2US = (4 << STA_FLG_AGG_MPDU_DENS_SHIFT), |
|---|
| .. | .. |
|---|
| 243 | 245 | #define STA_KEY_LEN_WEP40 (5) |
|---|
| 244 | 246 | #define STA_KEY_LEN_WEP104 (13) |
|---|
| 245 | 247 | |
|---|
| 246 | | -/** |
|---|
| 247 | | - * struct iwl_mvm_keyinfo - key information |
|---|
| 248 | | - * @key_flags: type &enum iwl_sta_key_flag |
|---|
| 249 | | - * @tkip_rx_tsc_byte2: TSC[2] for key mix ph1 detection |
|---|
| 250 | | - * @reserved1: reserved |
|---|
| 251 | | - * @tkip_rx_ttak: 10-byte unicast TKIP TTAK for Rx |
|---|
| 252 | | - * @key_offset: key offset in the fw's key table |
|---|
| 253 | | - * @reserved2: reserved |
|---|
| 254 | | - * @key: 16-byte unicast decryption key |
|---|
| 255 | | - * @tx_secur_seq_cnt: initial RSC / PN needed for replay check |
|---|
| 256 | | - * @hw_tkip_mic_rx_key: byte: MIC Rx Key - used for TKIP only |
|---|
| 257 | | - * @hw_tkip_mic_tx_key: byte: MIC Tx Key - used for TKIP only |
|---|
| 258 | | - */ |
|---|
| 259 | | -struct iwl_mvm_keyinfo { |
|---|
| 260 | | - __le16 key_flags; |
|---|
| 261 | | - u8 tkip_rx_tsc_byte2; |
|---|
| 262 | | - u8 reserved1; |
|---|
| 263 | | - __le16 tkip_rx_ttak[5]; |
|---|
| 264 | | - u8 key_offset; |
|---|
| 265 | | - u8 reserved2; |
|---|
| 266 | | - u8 key[16]; |
|---|
| 267 | | - __le64 tx_secur_seq_cnt; |
|---|
| 268 | | - __le64 hw_tkip_mic_rx_key; |
|---|
| 269 | | - __le64 hw_tkip_mic_tx_key; |
|---|
| 270 | | -} __packed; |
|---|
| 271 | | - |
|---|
| 272 | 248 | #define IWL_ADD_STA_STATUS_MASK 0xFF |
|---|
| 273 | 249 | #define IWL_ADD_STA_BAID_VALID_MASK 0x8000 |
|---|
| 274 | 250 | #define IWL_ADD_STA_BAID_MASK 0x7F00 |
|---|
| .. | .. |
|---|
| 286 | 262 | * @addr: station's MAC address |
|---|
| 287 | 263 | * @reserved2: reserved |
|---|
| 288 | 264 | * @sta_id: index of station in uCode's station table |
|---|
| 289 | | - * @modify_mask: STA_MODIFY_*, selects which parameters to modify vs. leave |
|---|
| 290 | | - * alone. 1 - modify, 0 - don't change. |
|---|
| 265 | + * @modify_mask: from &enum iwl_sta_modify_flag, selects what to change |
|---|
| 291 | 266 | * @reserved3: reserved |
|---|
| 292 | 267 | * @station_flags: look at &enum iwl_sta_flags |
|---|
| 293 | 268 | * @station_flags_msk: what of %station_flags have changed, |
|---|
| .. | .. |
|---|
| 367 | 342 | * @addr: station's MAC address |
|---|
| 368 | 343 | * @reserved2: reserved |
|---|
| 369 | 344 | * @sta_id: index of station in uCode's station table |
|---|
| 370 | | - * @modify_mask: STA_MODIFY_*, selects which parameters to modify vs. leave |
|---|
| 371 | | - * alone. 1 - modify, 0 - don't change. |
|---|
| 345 | + * @modify_mask: from &enum iwl_sta_modify_flag, selects what to change |
|---|
| 372 | 346 | * @reserved3: reserved |
|---|
| 373 | 347 | * @station_flags: look at &enum iwl_sta_flags |
|---|
| 374 | 348 | * @station_flags_msk: what of %station_flags have changed, |
|---|
| .. | .. |
|---|
| 391 | 365 | * @tfd_queue_msk: tfd queues used by this station. |
|---|
| 392 | 366 | * Obselete for new TX API (9 and above). |
|---|
| 393 | 367 | * @rx_ba_window: aggregation window size |
|---|
| 394 | | - * @sp_length: the size of the SP as it appears in the WME IE |
|---|
| 368 | + * @sp_length: the size of the SP in actual number of frames |
|---|
| 395 | 369 | * @uapsd_acs: 4 LS bits are trigger enabled ACs, 4 MS bits are the deliver |
|---|
| 396 | 370 | * enabled ACs. |
|---|
| 397 | 371 | * |
|---|
| .. | .. |
|---|
| 406 | 380 | u8 add_modify; |
|---|
| 407 | 381 | u8 awake_acs; |
|---|
| 408 | 382 | __le16 tid_disable_tx; |
|---|
| 409 | | - __le32 mac_id_n_color; |
|---|
| 383 | + __le32 mac_id_n_color; /* can be used for lmac id when using cmd v12 */ |
|---|
| 410 | 384 | u8 addr[ETH_ALEN]; /* _STA_ID_MODIFY_INFO_API_S_VER_1 */ |
|---|
| 411 | 385 | __le16 reserved2; |
|---|
| 412 | 386 | u8 sta_id; |
|---|