diff options
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-dev.h')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-dev.h | 109 |
1 files changed, 0 insertions, 109 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-dev.h b/drivers/net/wireless/iwlwifi/iwl-dev.h index af846002150a..aa99457c3a52 100644 --- a/drivers/net/wireless/iwlwifi/iwl-dev.h +++ b/drivers/net/wireless/iwlwifi/iwl-dev.h | |||
@@ -292,114 +292,6 @@ struct iwl_vif_priv { | |||
292 | u8 ibss_bssid_sta_id; | 292 | u8 ibss_bssid_sta_id; |
293 | }; | 293 | }; |
294 | 294 | ||
295 | /* v1/v2 uCode file layout */ | ||
296 | struct iwl_ucode_header { | ||
297 | __le32 ver; /* major/minor/API/serial */ | ||
298 | union { | ||
299 | struct { | ||
300 | __le32 inst_size; /* bytes of runtime code */ | ||
301 | __le32 data_size; /* bytes of runtime data */ | ||
302 | __le32 init_size; /* bytes of init code */ | ||
303 | __le32 init_data_size; /* bytes of init data */ | ||
304 | __le32 boot_size; /* bytes of bootstrap code */ | ||
305 | u8 data[0]; /* in same order as sizes */ | ||
306 | } v1; | ||
307 | struct { | ||
308 | __le32 build; /* build number */ | ||
309 | __le32 inst_size; /* bytes of runtime code */ | ||
310 | __le32 data_size; /* bytes of runtime data */ | ||
311 | __le32 init_size; /* bytes of init code */ | ||
312 | __le32 init_data_size; /* bytes of init data */ | ||
313 | __le32 boot_size; /* bytes of bootstrap code */ | ||
314 | u8 data[0]; /* in same order as sizes */ | ||
315 | } v2; | ||
316 | } u; | ||
317 | }; | ||
318 | |||
319 | /* | ||
320 | * new TLV uCode file layout | ||
321 | * | ||
322 | * The new TLV file format contains TLVs, that each specify | ||
323 | * some piece of data. To facilitate "groups", for example | ||
324 | * different instruction image with different capabilities, | ||
325 | * bundled with the same init image, an alternative mechanism | ||
326 | * is provided: | ||
327 | * When the alternative field is 0, that means that the item | ||
328 | * is always valid. When it is non-zero, then it is only | ||
329 | * valid in conjunction with items of the same alternative, | ||
330 | * in which case the driver (user) selects one alternative | ||
331 | * to use. | ||
332 | */ | ||
333 | |||
334 | enum iwl_ucode_tlv_type { | ||
335 | IWL_UCODE_TLV_INVALID = 0, /* unused */ | ||
336 | IWL_UCODE_TLV_INST = 1, | ||
337 | IWL_UCODE_TLV_DATA = 2, | ||
338 | IWL_UCODE_TLV_INIT = 3, | ||
339 | IWL_UCODE_TLV_INIT_DATA = 4, | ||
340 | IWL_UCODE_TLV_BOOT = 5, | ||
341 | IWL_UCODE_TLV_PROBE_MAX_LEN = 6, /* a u32 value */ | ||
342 | IWL_UCODE_TLV_PAN = 7, | ||
343 | IWL_UCODE_TLV_RUNT_EVTLOG_PTR = 8, | ||
344 | IWL_UCODE_TLV_RUNT_EVTLOG_SIZE = 9, | ||
345 | IWL_UCODE_TLV_RUNT_ERRLOG_PTR = 10, | ||
346 | IWL_UCODE_TLV_INIT_EVTLOG_PTR = 11, | ||
347 | IWL_UCODE_TLV_INIT_EVTLOG_SIZE = 12, | ||
348 | IWL_UCODE_TLV_INIT_ERRLOG_PTR = 13, | ||
349 | IWL_UCODE_TLV_ENHANCE_SENS_TBL = 14, | ||
350 | IWL_UCODE_TLV_PHY_CALIBRATION_SIZE = 15, | ||
351 | IWL_UCODE_TLV_WOWLAN_INST = 16, | ||
352 | IWL_UCODE_TLV_WOWLAN_DATA = 17, | ||
353 | IWL_UCODE_TLV_FLAGS = 18, | ||
354 | }; | ||
355 | |||
356 | /** | ||
357 | * enum iwl_ucode_tlv_flag - ucode API flags | ||
358 | * @IWL_UCODE_TLV_FLAGS_PAN: This is PAN capable microcode; this previously | ||
359 | * was a separate TLV but moved here to save space. | ||
360 | * @IWL_UCODE_TLV_FLAGS_NEWSCAN: new uCode scan behaviour on hidden SSID, | ||
361 | * treats good CRC threshold as a boolean | ||
362 | * @IWL_UCODE_TLV_FLAGS_MFP: This uCode image supports MFP (802.11w). | ||
363 | * @IWL_UCODE_TLV_FLAGS_P2P: This uCode image supports P2P. | ||
364 | */ | ||
365 | enum iwl_ucode_tlv_flag { | ||
366 | IWL_UCODE_TLV_FLAGS_PAN = BIT(0), | ||
367 | IWL_UCODE_TLV_FLAGS_NEWSCAN = BIT(1), | ||
368 | IWL_UCODE_TLV_FLAGS_MFP = BIT(2), | ||
369 | IWL_UCODE_TLV_FLAGS_P2P = BIT(3), | ||
370 | }; | ||
371 | |||
372 | struct iwl_ucode_tlv { | ||
373 | __le16 type; /* see above */ | ||
374 | __le16 alternative; /* see comment */ | ||
375 | __le32 length; /* not including type/length fields */ | ||
376 | u8 data[0]; | ||
377 | } __packed; | ||
378 | |||
379 | #define IWL_TLV_UCODE_MAGIC 0x0a4c5749 | ||
380 | |||
381 | struct iwl_tlv_ucode_header { | ||
382 | /* | ||
383 | * The TLV style ucode header is distinguished from | ||
384 | * the v1/v2 style header by first four bytes being | ||
385 | * zero, as such is an invalid combination of | ||
386 | * major/minor/API/serial versions. | ||
387 | */ | ||
388 | __le32 zero; | ||
389 | __le32 magic; | ||
390 | u8 human_readable[64]; | ||
391 | __le32 ver; /* major/minor/API/serial */ | ||
392 | __le32 build; | ||
393 | __le64 alternatives; /* bitmask of valid alternatives */ | ||
394 | /* | ||
395 | * The data contained herein has a TLV layout, | ||
396 | * see above for the TLV header and types. | ||
397 | * Note that each TLV is padded to a length | ||
398 | * that is a multiple of 4 for alignment. | ||
399 | */ | ||
400 | u8 data[0]; | ||
401 | }; | ||
402 | |||
403 | struct iwl_sensitivity_ranges { | 295 | struct iwl_sensitivity_ranges { |
404 | u16 min_nrg_cck; | 296 | u16 min_nrg_cck; |
405 | u16 max_nrg_cck; | 297 | u16 max_nrg_cck; |
@@ -821,7 +713,6 @@ struct iwl_wipan_noa_data { | |||
821 | struct iwl_priv { | 713 | struct iwl_priv { |
822 | 714 | ||
823 | /*data shared among all the driver's layers */ | 715 | /*data shared among all the driver's layers */ |
824 | struct iwl_shared _shrd; | ||
825 | struct iwl_shared *shrd; | 716 | struct iwl_shared *shrd; |
826 | 717 | ||
827 | /* ieee device used by generic ieee processing code */ | 718 | /* ieee device used by generic ieee processing code */ |