aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-6000.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-6000.c')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-6000.c52
1 files changed, 4 insertions, 48 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-6000.c b/drivers/net/wireless/iwlwifi/iwl-6000.c
index 24d105b29aec..905eb57f7cab 100644
--- a/drivers/net/wireless/iwlwifi/iwl-6000.c
+++ b/drivers/net/wireless/iwlwifi/iwl-6000.c
@@ -46,7 +46,6 @@
46#include "iwl-helpers.h" 46#include "iwl-helpers.h"
47#include "iwl-agn-hw.h" 47#include "iwl-agn-hw.h"
48#include "iwl-6000-hw.h" 48#include "iwl-6000-hw.h"
49#include "iwl-agn-led.h"
50#include "iwl-agn-debugfs.h" 49#include "iwl-agn-debugfs.h"
51 50
52/* Highest firmware API version supported */ 51/* Highest firmware API version supported */
@@ -60,20 +59,16 @@
60#define IWL6000G2_UCODE_API_MIN 4 59#define IWL6000G2_UCODE_API_MIN 4
61 60
62#define IWL6000_FW_PRE "iwlwifi-6000-" 61#define IWL6000_FW_PRE "iwlwifi-6000-"
63#define _IWL6000_MODULE_FIRMWARE(api) IWL6000_FW_PRE #api ".ucode" 62#define IWL6000_MODULE_FIRMWARE(api) IWL6000_FW_PRE #api ".ucode"
64#define IWL6000_MODULE_FIRMWARE(api) _IWL6000_MODULE_FIRMWARE(api)
65 63
66#define IWL6050_FW_PRE "iwlwifi-6050-" 64#define IWL6050_FW_PRE "iwlwifi-6050-"
67#define _IWL6050_MODULE_FIRMWARE(api) IWL6050_FW_PRE #api ".ucode" 65#define IWL6050_MODULE_FIRMWARE(api) IWL6050_FW_PRE #api ".ucode"
68#define IWL6050_MODULE_FIRMWARE(api) _IWL6050_MODULE_FIRMWARE(api)
69 66
70#define IWL6005_FW_PRE "iwlwifi-6000g2a-" 67#define IWL6005_FW_PRE "iwlwifi-6000g2a-"
71#define _IWL6005_MODULE_FIRMWARE(api) IWL6005_FW_PRE #api ".ucode" 68#define IWL6005_MODULE_FIRMWARE(api) IWL6005_FW_PRE #api ".ucode"
72#define IWL6005_MODULE_FIRMWARE(api) _IWL6005_MODULE_FIRMWARE(api)
73 69
74#define IWL6030_FW_PRE "iwlwifi-6000g2b-" 70#define IWL6030_FW_PRE "iwlwifi-6000g2b-"
75#define _IWL6030_MODULE_FIRMWARE(api) IWL6030_FW_PRE #api ".ucode" 71#define IWL6030_MODULE_FIRMWARE(api) IWL6030_FW_PRE #api ".ucode"
76#define IWL6030_MODULE_FIRMWARE(api) _IWL6030_MODULE_FIRMWARE(api)
77 72
78static void iwl6000_set_ct_threshold(struct iwl_priv *priv) 73static void iwl6000_set_ct_threshold(struct iwl_priv *priv)
79{ 74{
@@ -293,10 +288,6 @@ static struct iwl_lib_ops iwl6000_lib = {
293 .rx_handler_setup = iwlagn_rx_handler_setup, 288 .rx_handler_setup = iwlagn_rx_handler_setup,
294 .setup_deferred_work = iwlagn_setup_deferred_work, 289 .setup_deferred_work = iwlagn_setup_deferred_work,
295 .is_valid_rtc_data_addr = iwlagn_hw_valid_rtc_data_addr, 290 .is_valid_rtc_data_addr = iwlagn_hw_valid_rtc_data_addr,
296 .dump_nic_event_log = iwl_dump_nic_event_log,
297 .dump_nic_error_log = iwl_dump_nic_error_log,
298 .dump_csr = iwl_dump_csr,
299 .dump_fh = iwl_dump_fh,
300 .send_tx_power = iwlagn_send_tx_power, 291 .send_tx_power = iwlagn_send_tx_power,
301 .update_chain_flags = iwl_update_chain_flags, 292 .update_chain_flags = iwl_update_chain_flags,
302 .set_channel_switch = iwl6000_hw_channel_switch, 293 .set_channel_switch = iwl6000_hw_channel_switch,
@@ -332,11 +323,6 @@ static struct iwl_lib_ops iwl6000_lib = {
332 }, 323 },
333 .txfifo_flush = iwlagn_txfifo_flush, 324 .txfifo_flush = iwlagn_txfifo_flush,
334 .dev_txfifo_flush = iwlagn_dev_txfifo_flush, 325 .dev_txfifo_flush = iwlagn_dev_txfifo_flush,
335 .tt_ops = {
336 .lower_power_detection = iwl_tt_is_low_power_state,
337 .tt_power_mode = iwl_tt_current_power_mode,
338 .ct_kill_check = iwl_check_for_ct_kill,
339 }
340}; 326};
341 327
342static struct iwl_lib_ops iwl6030_lib = { 328static struct iwl_lib_ops iwl6030_lib = {
@@ -351,10 +337,6 @@ static struct iwl_lib_ops iwl6030_lib = {
351 .setup_deferred_work = iwlagn_bt_setup_deferred_work, 337 .setup_deferred_work = iwlagn_bt_setup_deferred_work,
352 .cancel_deferred_work = iwlagn_bt_cancel_deferred_work, 338 .cancel_deferred_work = iwlagn_bt_cancel_deferred_work,
353 .is_valid_rtc_data_addr = iwlagn_hw_valid_rtc_data_addr, 339 .is_valid_rtc_data_addr = iwlagn_hw_valid_rtc_data_addr,
354 .dump_nic_event_log = iwl_dump_nic_event_log,
355 .dump_nic_error_log = iwl_dump_nic_error_log,
356 .dump_csr = iwl_dump_csr,
357 .dump_fh = iwl_dump_fh,
358 .send_tx_power = iwlagn_send_tx_power, 340 .send_tx_power = iwlagn_send_tx_power,
359 .update_chain_flags = iwl_update_chain_flags, 341 .update_chain_flags = iwl_update_chain_flags,
360 .set_channel_switch = iwl6000_hw_channel_switch, 342 .set_channel_switch = iwl6000_hw_channel_switch,
@@ -390,11 +372,6 @@ static struct iwl_lib_ops iwl6030_lib = {
390 }, 372 },
391 .txfifo_flush = iwlagn_txfifo_flush, 373 .txfifo_flush = iwlagn_txfifo_flush,
392 .dev_txfifo_flush = iwlagn_dev_txfifo_flush, 374 .dev_txfifo_flush = iwlagn_dev_txfifo_flush,
393 .tt_ops = {
394 .lower_power_detection = iwl_tt_is_low_power_state,
395 .tt_power_mode = iwl_tt_current_power_mode,
396 .ct_kill_check = iwl_check_for_ct_kill,
397 }
398}; 375};
399 376
400static struct iwl_nic_ops iwl6050_nic_ops = { 377static struct iwl_nic_ops iwl6050_nic_ops = {
@@ -409,34 +386,26 @@ static const struct iwl_ops iwl6000_ops = {
409 .lib = &iwl6000_lib, 386 .lib = &iwl6000_lib,
410 .hcmd = &iwlagn_hcmd, 387 .hcmd = &iwlagn_hcmd,
411 .utils = &iwlagn_hcmd_utils, 388 .utils = &iwlagn_hcmd_utils,
412 .led = &iwlagn_led_ops,
413 .ieee80211_ops = &iwlagn_hw_ops,
414}; 389};
415 390
416static const struct iwl_ops iwl6050_ops = { 391static const struct iwl_ops iwl6050_ops = {
417 .lib = &iwl6000_lib, 392 .lib = &iwl6000_lib,
418 .hcmd = &iwlagn_hcmd, 393 .hcmd = &iwlagn_hcmd,
419 .utils = &iwlagn_hcmd_utils, 394 .utils = &iwlagn_hcmd_utils,
420 .led = &iwlagn_led_ops,
421 .nic = &iwl6050_nic_ops, 395 .nic = &iwl6050_nic_ops,
422 .ieee80211_ops = &iwlagn_hw_ops,
423}; 396};
424 397
425static const struct iwl_ops iwl6150_ops = { 398static const struct iwl_ops iwl6150_ops = {
426 .lib = &iwl6000_lib, 399 .lib = &iwl6000_lib,
427 .hcmd = &iwlagn_hcmd, 400 .hcmd = &iwlagn_hcmd,
428 .utils = &iwlagn_hcmd_utils, 401 .utils = &iwlagn_hcmd_utils,
429 .led = &iwlagn_led_ops,
430 .nic = &iwl6150_nic_ops, 402 .nic = &iwl6150_nic_ops,
431 .ieee80211_ops = &iwlagn_hw_ops,
432}; 403};
433 404
434static const struct iwl_ops iwl6030_ops = { 405static const struct iwl_ops iwl6030_ops = {
435 .lib = &iwl6030_lib, 406 .lib = &iwl6030_lib,
436 .hcmd = &iwlagn_bt_hcmd, 407 .hcmd = &iwlagn_bt_hcmd,
437 .utils = &iwlagn_hcmd_utils, 408 .utils = &iwlagn_hcmd_utils,
438 .led = &iwlagn_led_ops,
439 .ieee80211_ops = &iwlagn_hw_ops,
440}; 409};
441 410
442static struct iwl_base_params iwl6000_base_params = { 411static struct iwl_base_params iwl6000_base_params = {
@@ -444,7 +413,6 @@ static struct iwl_base_params iwl6000_base_params = {
444 .num_of_queues = IWLAGN_NUM_QUEUES, 413 .num_of_queues = IWLAGN_NUM_QUEUES,
445 .num_of_ampdu_queues = IWLAGN_NUM_AMPDU_QUEUES, 414 .num_of_ampdu_queues = IWLAGN_NUM_AMPDU_QUEUES,
446 .pll_cfg_val = 0, 415 .pll_cfg_val = 0,
447 .set_l0s = true,
448 .max_ll_items = OTP_MAX_LL_ITEMS_6x00, 416 .max_ll_items = OTP_MAX_LL_ITEMS_6x00,
449 .shadow_ram_support = true, 417 .shadow_ram_support = true,
450 .led_compensation = 51, 418 .led_compensation = 51,
@@ -455,9 +423,6 @@ static struct iwl_base_params iwl6000_base_params = {
455 .chain_noise_scale = 1000, 423 .chain_noise_scale = 1000,
456 .wd_timeout = IWL_DEF_WD_TIMEOUT, 424 .wd_timeout = IWL_DEF_WD_TIMEOUT,
457 .max_event_log_size = 512, 425 .max_event_log_size = 512,
458 .ucode_tracing = true,
459 .sensitivity_calib_by_driver = true,
460 .chain_noise_calib_by_driver = true,
461 .shadow_reg_enable = true, 426 .shadow_reg_enable = true,
462}; 427};
463 428
@@ -466,7 +431,6 @@ static struct iwl_base_params iwl6050_base_params = {
466 .num_of_queues = IWLAGN_NUM_QUEUES, 431 .num_of_queues = IWLAGN_NUM_QUEUES,
467 .num_of_ampdu_queues = IWLAGN_NUM_AMPDU_QUEUES, 432 .num_of_ampdu_queues = IWLAGN_NUM_AMPDU_QUEUES,
468 .pll_cfg_val = 0, 433 .pll_cfg_val = 0,
469 .set_l0s = true,
470 .max_ll_items = OTP_MAX_LL_ITEMS_6x50, 434 .max_ll_items = OTP_MAX_LL_ITEMS_6x50,
471 .shadow_ram_support = true, 435 .shadow_ram_support = true,
472 .led_compensation = 51, 436 .led_compensation = 51,
@@ -477,9 +441,6 @@ static struct iwl_base_params iwl6050_base_params = {
477 .chain_noise_scale = 1500, 441 .chain_noise_scale = 1500,
478 .wd_timeout = IWL_DEF_WD_TIMEOUT, 442 .wd_timeout = IWL_DEF_WD_TIMEOUT,
479 .max_event_log_size = 1024, 443 .max_event_log_size = 1024,
480 .ucode_tracing = true,
481 .sensitivity_calib_by_driver = true,
482 .chain_noise_calib_by_driver = true,
483 .shadow_reg_enable = true, 444 .shadow_reg_enable = true,
484}; 445};
485static struct iwl_base_params iwl6000_g2_base_params = { 446static struct iwl_base_params iwl6000_g2_base_params = {
@@ -487,7 +448,6 @@ static struct iwl_base_params iwl6000_g2_base_params = {
487 .num_of_queues = IWLAGN_NUM_QUEUES, 448 .num_of_queues = IWLAGN_NUM_QUEUES,
488 .num_of_ampdu_queues = IWLAGN_NUM_AMPDU_QUEUES, 449 .num_of_ampdu_queues = IWLAGN_NUM_AMPDU_QUEUES,
489 .pll_cfg_val = 0, 450 .pll_cfg_val = 0,
490 .set_l0s = true,
491 .max_ll_items = OTP_MAX_LL_ITEMS_6x00, 451 .max_ll_items = OTP_MAX_LL_ITEMS_6x00,
492 .shadow_ram_support = true, 452 .shadow_ram_support = true,
493 .led_compensation = 57, 453 .led_compensation = 57,
@@ -498,9 +458,6 @@ static struct iwl_base_params iwl6000_g2_base_params = {
498 .chain_noise_scale = 1000, 458 .chain_noise_scale = 1000,
499 .wd_timeout = IWL_LONG_WD_TIMEOUT, 459 .wd_timeout = IWL_LONG_WD_TIMEOUT,
500 .max_event_log_size = 512, 460 .max_event_log_size = 512,
501 .ucode_tracing = true,
502 .sensitivity_calib_by_driver = true,
503 .chain_noise_calib_by_driver = true,
504 .shadow_reg_enable = true, 461 .shadow_reg_enable = true,
505}; 462};
506 463
@@ -510,7 +467,6 @@ static struct iwl_ht_params iwl6000_ht_params = {
510}; 467};
511 468
512static struct iwl_bt_params iwl6000_bt_params = { 469static struct iwl_bt_params iwl6000_bt_params = {
513 .bt_statistics = true,
514 /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ 470 /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */
515 .advanced_bt_coexist = true, 471 .advanced_bt_coexist = true,
516 .agg_time_limit = BT_AGG_THRESHOLD_DEF, 472 .agg_time_limit = BT_AGG_THRESHOLD_DEF,