aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLarry Finger <Larry.Finger@lwfinger.net>2012-04-19 17:32:44 -0400
committerJohn W. Linville <linville@tuxdriver.com>2012-04-23 15:35:33 -0400
commite0602750ab028780962a1e4bb3f3705433a18c97 (patch)
tree75b3dd7d86251feb2a1709d970220e1d962f2e9c
parentc21916ec4cf9cbdb1ed1c0a4aedc80d9d6400485 (diff)
rtlwifi: rtl8192se: Convert driver to use private dm struct
Convert driver to use private version of dig_t instead of global version. Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/rtlwifi/rtl8192se/dm.c156
-rw-r--r--drivers/net/wireless/rtlwifi/rtl8192se/dm.h2
-rw-r--r--drivers/net/wireless/rtlwifi/rtl8192se/phy.c7
3 files changed, 84 insertions, 81 deletions
diff --git a/drivers/net/wireless/rtlwifi/rtl8192se/dm.c b/drivers/net/wireless/rtlwifi/rtl8192se/dm.c
index fbabae17259e..2e1158026fb7 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192se/dm.c
+++ b/drivers/net/wireless/rtlwifi/rtl8192se/dm.c
@@ -35,7 +35,6 @@
35#include "dm.h" 35#include "dm.h"
36#include "fw.h" 36#include "fw.h"
37 37
38struct dig_t digtable;
39static const u32 edca_setting_dl[PEER_MAX] = { 38static const u32 edca_setting_dl[PEER_MAX] = {
40 0xa44f, /* 0 UNKNOWN */ 39 0xa44f, /* 0 UNKNOWN */
41 0x5ea44f, /* 1 REALTEK_90 */ 40 0x5ea44f, /* 1 REALTEK_90 */
@@ -421,62 +420,64 @@ static void _rtl92s_dm_false_alarm_counter_statistics(struct ieee80211_hw *hw)
421static void rtl92s_backoff_enable_flag(struct ieee80211_hw *hw) 420static void rtl92s_backoff_enable_flag(struct ieee80211_hw *hw)
422{ 421{
423 struct rtl_priv *rtlpriv = rtl_priv(hw); 422 struct rtl_priv *rtlpriv = rtl_priv(hw);
423 struct dig_t *digtable = &rtlpriv->dm_digtable;
424 struct false_alarm_statistics *falsealm_cnt = &(rtlpriv->falsealm_cnt); 424 struct false_alarm_statistics *falsealm_cnt = &(rtlpriv->falsealm_cnt);
425 425
426 if (falsealm_cnt->cnt_all > digtable.fa_highthresh) { 426 if (falsealm_cnt->cnt_all > digtable->fa_highthresh) {
427 if ((digtable.backoff_val - 6) < 427 if ((digtable->backoff_val - 6) <
428 digtable.backoffval_range_min) 428 digtable->backoffval_range_min)
429 digtable.backoff_val = digtable.backoffval_range_min; 429 digtable->backoff_val = digtable->backoffval_range_min;
430 else 430 else
431 digtable.backoff_val -= 6; 431 digtable->backoff_val -= 6;
432 } else if (falsealm_cnt->cnt_all < digtable.fa_lowthresh) { 432 } else if (falsealm_cnt->cnt_all < digtable->fa_lowthresh) {
433 if ((digtable.backoff_val + 6) > 433 if ((digtable->backoff_val + 6) >
434 digtable.backoffval_range_max) 434 digtable->backoffval_range_max)
435 digtable.backoff_val = 435 digtable->backoff_val =
436 digtable.backoffval_range_max; 436 digtable->backoffval_range_max;
437 else 437 else
438 digtable.backoff_val += 6; 438 digtable->backoff_val += 6;
439 } 439 }
440} 440}
441 441
442static void _rtl92s_dm_initial_gain_sta_beforeconnect(struct ieee80211_hw *hw) 442static void _rtl92s_dm_initial_gain_sta_beforeconnect(struct ieee80211_hw *hw)
443{ 443{
444 struct rtl_priv *rtlpriv = rtl_priv(hw); 444 struct rtl_priv *rtlpriv = rtl_priv(hw);
445 struct dig_t *digtable = &rtlpriv->dm_digtable;
445 struct false_alarm_statistics *falsealm_cnt = &(rtlpriv->falsealm_cnt); 446 struct false_alarm_statistics *falsealm_cnt = &(rtlpriv->falsealm_cnt);
446 static u8 initialized, force_write; 447 static u8 initialized, force_write;
447 u8 initial_gain = 0; 448 u8 initial_gain = 0;
448 449
449 if ((digtable.pre_sta_connectstate == digtable.cur_sta_connectstate) || 450 if ((digtable->pre_sta_connectstate == digtable->cur_sta_connectstate) ||
450 (digtable.cur_sta_connectstate == DIG_STA_BEFORE_CONNECT)) { 451 (digtable->cur_sta_connectstate == DIG_STA_BEFORE_CONNECT)) {
451 if (digtable.cur_sta_connectstate == DIG_STA_BEFORE_CONNECT) { 452 if (digtable->cur_sta_connectstate == DIG_STA_BEFORE_CONNECT) {
452 if (rtlpriv->psc.rfpwr_state != ERFON) 453 if (rtlpriv->psc.rfpwr_state != ERFON)
453 return; 454 return;
454 455
455 if (digtable.backoff_enable_flag) 456 if (digtable->backoff_enable_flag)
456 rtl92s_backoff_enable_flag(hw); 457 rtl92s_backoff_enable_flag(hw);
457 else 458 else
458 digtable.backoff_val = DM_DIG_BACKOFF; 459 digtable->backoff_val = DM_DIG_BACKOFF;
459 460
460 if ((digtable.rssi_val + 10 - digtable.backoff_val) > 461 if ((digtable->rssi_val + 10 - digtable->backoff_val) >
461 digtable.rx_gain_range_max) 462 digtable->rx_gain_range_max)
462 digtable.cur_igvalue = 463 digtable->cur_igvalue =
463 digtable.rx_gain_range_max; 464 digtable->rx_gain_range_max;
464 else if ((digtable.rssi_val + 10 - digtable.backoff_val) 465 else if ((digtable->rssi_val + 10 - digtable->backoff_val)
465 < digtable.rx_gain_range_min) 466 < digtable->rx_gain_range_min)
466 digtable.cur_igvalue = 467 digtable->cur_igvalue =
467 digtable.rx_gain_range_min; 468 digtable->rx_gain_range_min;
468 else 469 else
469 digtable.cur_igvalue = digtable.rssi_val + 10 - 470 digtable->cur_igvalue = digtable->rssi_val + 10 -
470 digtable.backoff_val; 471 digtable->backoff_val;
471 472
472 if (falsealm_cnt->cnt_all > 10000) 473 if (falsealm_cnt->cnt_all > 10000)
473 digtable.cur_igvalue = 474 digtable->cur_igvalue =
474 (digtable.cur_igvalue > 0x33) ? 475 (digtable->cur_igvalue > 0x33) ?
475 digtable.cur_igvalue : 0x33; 476 digtable->cur_igvalue : 0x33;
476 477
477 if (falsealm_cnt->cnt_all > 16000) 478 if (falsealm_cnt->cnt_all > 16000)
478 digtable.cur_igvalue = 479 digtable->cur_igvalue =
479 digtable.rx_gain_range_max; 480 digtable->rx_gain_range_max;
480 /* connected -> connected or disconnected -> disconnected */ 481 /* connected -> connected or disconnected -> disconnected */
481 } else { 482 } else {
482 /* Firmware control DIG, do nothing in driver dm */ 483 /* Firmware control DIG, do nothing in driver dm */
@@ -486,31 +487,31 @@ static void _rtl92s_dm_initial_gain_sta_beforeconnect(struct ieee80211_hw *hw)
486 * disconnected or beforeconnect->(dis)connected */ 487 * disconnected or beforeconnect->(dis)connected */
487 } else { 488 } else {
488 /* Enable FW DIG */ 489 /* Enable FW DIG */
489 digtable.dig_ext_port_stage = DIG_EXT_PORT_STAGE_MAX; 490 digtable->dig_ext_port_stage = DIG_EXT_PORT_STAGE_MAX;
490 rtl92s_phy_set_fw_cmd(hw, FW_CMD_DIG_ENABLE); 491 rtl92s_phy_set_fw_cmd(hw, FW_CMD_DIG_ENABLE);
491 492
492 digtable.backoff_val = DM_DIG_BACKOFF; 493 digtable->backoff_val = DM_DIG_BACKOFF;
493 digtable.cur_igvalue = rtlpriv->phy.default_initialgain[0]; 494 digtable->cur_igvalue = rtlpriv->phy.default_initialgain[0];
494 digtable.pre_igvalue = 0; 495 digtable->pre_igvalue = 0;
495 return; 496 return;
496 } 497 }
497 498
498 /* Forced writing to prevent from fw-dig overwriting. */ 499 /* Forced writing to prevent from fw-dig overwriting. */
499 if (digtable.pre_igvalue != rtl_get_bbreg(hw, ROFDM0_XAAGCCORE1, 500 if (digtable->pre_igvalue != rtl_get_bbreg(hw, ROFDM0_XAAGCCORE1,
500 MASKBYTE0)) 501 MASKBYTE0))
501 force_write = 1; 502 force_write = 1;
502 503
503 if ((digtable.pre_igvalue != digtable.cur_igvalue) || 504 if ((digtable->pre_igvalue != digtable->cur_igvalue) ||
504 !initialized || force_write) { 505 !initialized || force_write) {
505 /* Disable FW DIG */ 506 /* Disable FW DIG */
506 rtl92s_phy_set_fw_cmd(hw, FW_CMD_DIG_DISABLE); 507 rtl92s_phy_set_fw_cmd(hw, FW_CMD_DIG_DISABLE);
507 508
508 initial_gain = (u8)digtable.cur_igvalue; 509 initial_gain = (u8)digtable->cur_igvalue;
509 510
510 /* Set initial gain. */ 511 /* Set initial gain. */
511 rtl_set_bbreg(hw, ROFDM0_XAAGCCORE1, MASKBYTE0, initial_gain); 512 rtl_set_bbreg(hw, ROFDM0_XAAGCCORE1, MASKBYTE0, initial_gain);
512 rtl_set_bbreg(hw, ROFDM0_XBAGCCORE1, MASKBYTE0, initial_gain); 513 rtl_set_bbreg(hw, ROFDM0_XBAGCCORE1, MASKBYTE0, initial_gain);
513 digtable.pre_igvalue = digtable.cur_igvalue; 514 digtable->pre_igvalue = digtable->cur_igvalue;
514 initialized = 1; 515 initialized = 1;
515 force_write = 0; 516 force_write = 0;
516 } 517 }
@@ -519,6 +520,7 @@ static void _rtl92s_dm_initial_gain_sta_beforeconnect(struct ieee80211_hw *hw)
519static void _rtl92s_dm_ctrl_initgain_bytwoport(struct ieee80211_hw *hw) 520static void _rtl92s_dm_ctrl_initgain_bytwoport(struct ieee80211_hw *hw)
520{ 521{
521 struct rtl_priv *rtlpriv = rtl_priv(hw); 522 struct rtl_priv *rtlpriv = rtl_priv(hw);
523 struct dig_t *digtable = &rtlpriv->dm_digtable;
522 524
523 if (rtlpriv->mac80211.act_scanning) 525 if (rtlpriv->mac80211.act_scanning)
524 return; 526 return;
@@ -526,17 +528,17 @@ static void _rtl92s_dm_ctrl_initgain_bytwoport(struct ieee80211_hw *hw)
526 /* Decide the current status and if modify initial gain or not */ 528 /* Decide the current status and if modify initial gain or not */
527 if (rtlpriv->mac80211.link_state >= MAC80211_LINKED || 529 if (rtlpriv->mac80211.link_state >= MAC80211_LINKED ||
528 rtlpriv->mac80211.opmode == NL80211_IFTYPE_ADHOC) 530 rtlpriv->mac80211.opmode == NL80211_IFTYPE_ADHOC)
529 digtable.cur_sta_connectstate = DIG_STA_CONNECT; 531 digtable->cur_sta_connectstate = DIG_STA_CONNECT;
530 else 532 else
531 digtable.cur_sta_connectstate = DIG_STA_DISCONNECT; 533 digtable->cur_sta_connectstate = DIG_STA_DISCONNECT;
532 534
533 digtable.rssi_val = rtlpriv->dm.undecorated_smoothed_pwdb; 535 digtable->rssi_val = rtlpriv->dm.undecorated_smoothed_pwdb;
534 536
535 /* Change dig mode to rssi */ 537 /* Change dig mode to rssi */
536 if (digtable.cur_sta_connectstate != DIG_STA_DISCONNECT) { 538 if (digtable->cur_sta_connectstate != DIG_STA_DISCONNECT) {
537 if (digtable.dig_twoport_algorithm == 539 if (digtable->dig_twoport_algorithm ==
538 DIG_TWO_PORT_ALGO_FALSE_ALARM) { 540 DIG_TWO_PORT_ALGO_FALSE_ALARM) {
539 digtable.dig_twoport_algorithm = DIG_TWO_PORT_ALGO_RSSI; 541 digtable->dig_twoport_algorithm = DIG_TWO_PORT_ALGO_RSSI;
540 rtl92s_phy_set_fw_cmd(hw, FW_CMD_DIG_MODE_SS); 542 rtl92s_phy_set_fw_cmd(hw, FW_CMD_DIG_MODE_SS);
541 } 543 }
542 } 544 }
@@ -544,13 +546,14 @@ static void _rtl92s_dm_ctrl_initgain_bytwoport(struct ieee80211_hw *hw)
544 _rtl92s_dm_false_alarm_counter_statistics(hw); 546 _rtl92s_dm_false_alarm_counter_statistics(hw);
545 _rtl92s_dm_initial_gain_sta_beforeconnect(hw); 547 _rtl92s_dm_initial_gain_sta_beforeconnect(hw);
546 548
547 digtable.pre_sta_connectstate = digtable.cur_sta_connectstate; 549 digtable->pre_sta_connectstate = digtable->cur_sta_connectstate;
548} 550}
549 551
550static void _rtl92s_dm_ctrl_initgain_byrssi(struct ieee80211_hw *hw) 552static void _rtl92s_dm_ctrl_initgain_byrssi(struct ieee80211_hw *hw)
551{ 553{
552 struct rtl_priv *rtlpriv = rtl_priv(hw); 554 struct rtl_priv *rtlpriv = rtl_priv(hw);
553 struct rtl_phy *rtlphy = &(rtlpriv->phy); 555 struct rtl_phy *rtlphy = &(rtlpriv->phy);
556 struct dig_t *digtable = &rtlpriv->dm_digtable;
554 557
555 /* 2T2R TP issue */ 558 /* 2T2R TP issue */
556 if (rtlphy->rf_type == RF_2T2R) 559 if (rtlphy->rf_type == RF_2T2R)
@@ -559,7 +562,7 @@ static void _rtl92s_dm_ctrl_initgain_byrssi(struct ieee80211_hw *hw)
559 if (!rtlpriv->dm.dm_initialgain_enable) 562 if (!rtlpriv->dm.dm_initialgain_enable)
560 return; 563 return;
561 564
562 if (digtable.dig_enable_flag == false) 565 if (digtable->dig_enable_flag == false)
563 return; 566 return;
564 567
565 _rtl92s_dm_ctrl_initgain_bytwoport(hw); 568 _rtl92s_dm_ctrl_initgain_bytwoport(hw);
@@ -639,51 +642,52 @@ static void _rtl92s_dm_dynamic_txpower(struct ieee80211_hw *hw)
639static void _rtl92s_dm_init_dig(struct ieee80211_hw *hw) 642static void _rtl92s_dm_init_dig(struct ieee80211_hw *hw)
640{ 643{
641 struct rtl_priv *rtlpriv = rtl_priv(hw); 644 struct rtl_priv *rtlpriv = rtl_priv(hw);
645 struct dig_t *digtable = &rtlpriv->dm_digtable;
642 646
643 /* Disable DIG scheme now.*/ 647 /* Disable DIG scheme now.*/
644 digtable.dig_enable_flag = true; 648 digtable->dig_enable_flag = true;
645 digtable.backoff_enable_flag = true; 649 digtable->backoff_enable_flag = true;
646 650
647 if ((rtlpriv->dm.dm_type == DM_TYPE_BYDRIVER) && 651 if ((rtlpriv->dm.dm_type == DM_TYPE_BYDRIVER) &&
648 (hal_get_firmwareversion(rtlpriv) >= 0x3c)) 652 (hal_get_firmwareversion(rtlpriv) >= 0x3c))
649 digtable.dig_algorithm = DIG_ALGO_BY_TOW_PORT; 653 digtable->dig_algorithm = DIG_ALGO_BY_TOW_PORT;
650 else 654 else
651 digtable.dig_algorithm = 655 digtable->dig_algorithm =
652 DIG_ALGO_BEFORE_CONNECT_BY_RSSI_AND_ALARM; 656 DIG_ALGO_BEFORE_CONNECT_BY_RSSI_AND_ALARM;
653 657
654 digtable.dig_twoport_algorithm = DIG_TWO_PORT_ALGO_RSSI; 658 digtable->dig_twoport_algorithm = DIG_TWO_PORT_ALGO_RSSI;
655 digtable.dig_ext_port_stage = DIG_EXT_PORT_STAGE_MAX; 659 digtable->dig_ext_port_stage = DIG_EXT_PORT_STAGE_MAX;
656 /* off=by real rssi value, on=by digtable.rssi_val for new dig */ 660 /* off=by real rssi value, on=by digtable->rssi_val for new dig */
657 digtable.dig_dbgmode = DM_DBG_OFF; 661 digtable->dig_dbgmode = DM_DBG_OFF;
658 digtable.dig_slgorithm_switch = 0; 662 digtable->dig_slgorithm_switch = 0;
659 663
660 /* 2007/10/04 MH Define init gain threshol. */ 664 /* 2007/10/04 MH Define init gain threshol. */
661 digtable.dig_state = DM_STA_DIG_MAX; 665 digtable->dig_state = DM_STA_DIG_MAX;
662 digtable.dig_highpwrstate = DM_STA_DIG_MAX; 666 digtable->dig_highpwrstate = DM_STA_DIG_MAX;
663 667
664 digtable.cur_sta_connectstate = DIG_STA_DISCONNECT; 668 digtable->cur_sta_connectstate = DIG_STA_DISCONNECT;
665 digtable.pre_sta_connectstate = DIG_STA_DISCONNECT; 669 digtable->pre_sta_connectstate = DIG_STA_DISCONNECT;
666 digtable.cur_ap_connectstate = DIG_AP_DISCONNECT; 670 digtable->cur_ap_connectstate = DIG_AP_DISCONNECT;
667 digtable.pre_ap_connectstate = DIG_AP_DISCONNECT; 671 digtable->pre_ap_connectstate = DIG_AP_DISCONNECT;
668 672
669 digtable.rssi_lowthresh = DM_DIG_THRESH_LOW; 673 digtable->rssi_lowthresh = DM_DIG_THRESH_LOW;
670 digtable.rssi_highthresh = DM_DIG_THRESH_HIGH; 674 digtable->rssi_highthresh = DM_DIG_THRESH_HIGH;
671 675
672 digtable.fa_lowthresh = DM_FALSEALARM_THRESH_LOW; 676 digtable->fa_lowthresh = DM_FALSEALARM_THRESH_LOW;
673 digtable.fa_highthresh = DM_FALSEALARM_THRESH_HIGH; 677 digtable->fa_highthresh = DM_FALSEALARM_THRESH_HIGH;
674 678
675 digtable.rssi_highpower_lowthresh = DM_DIG_HIGH_PWR_THRESH_LOW; 679 digtable->rssi_highpower_lowthresh = DM_DIG_HIGH_PWR_THRESH_LOW;
676 digtable.rssi_highpower_highthresh = DM_DIG_HIGH_PWR_THRESH_HIGH; 680 digtable->rssi_highpower_highthresh = DM_DIG_HIGH_PWR_THRESH_HIGH;
677 681
678 /* for dig debug rssi value */ 682 /* for dig debug rssi value */
679 digtable.rssi_val = 50; 683 digtable->rssi_val = 50;
680 digtable.backoff_val = DM_DIG_BACKOFF; 684 digtable->backoff_val = DM_DIG_BACKOFF;
681 digtable.rx_gain_range_max = DM_DIG_MAX; 685 digtable->rx_gain_range_max = DM_DIG_MAX;
682 686
683 digtable.rx_gain_range_min = DM_DIG_MIN; 687 digtable->rx_gain_range_min = DM_DIG_MIN;
684 688
685 digtable.backoffval_range_max = DM_DIG_BACKOFF_MAX; 689 digtable->backoffval_range_max = DM_DIG_BACKOFF_MAX;
686 digtable.backoffval_range_min = DM_DIG_BACKOFF_MIN; 690 digtable->backoffval_range_min = DM_DIG_BACKOFF_MIN;
687} 691}
688 692
689static void _rtl92s_dm_init_dynamic_txpower(struct ieee80211_hw *hw) 693static void _rtl92s_dm_init_dynamic_txpower(struct ieee80211_hw *hw)
diff --git a/drivers/net/wireless/rtlwifi/rtl8192se/dm.h b/drivers/net/wireless/rtlwifi/rtl8192se/dm.h
index f8ace730f99f..2e9052c8fe4b 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192se/dm.h
+++ b/drivers/net/wireless/rtlwifi/rtl8192se/dm.h
@@ -112,8 +112,6 @@ enum dm_ratr_sta {
112#define DM_DIG_BACKOFF_MAX 12 112#define DM_DIG_BACKOFF_MAX 12
113#define DM_DIG_BACKOFF_MIN -4 113#define DM_DIG_BACKOFF_MIN -4
114 114
115extern struct dig_t digtable;
116
117void rtl92s_dm_watchdog(struct ieee80211_hw *hw); 115void rtl92s_dm_watchdog(struct ieee80211_hw *hw);
118void rtl92s_dm_init(struct ieee80211_hw *hw); 116void rtl92s_dm_init(struct ieee80211_hw *hw);
119void rtl92s_dm_init_edca_turbo(struct ieee80211_hw *hw); 117void rtl92s_dm_init_edca_turbo(struct ieee80211_hw *hw);
diff --git a/drivers/net/wireless/rtlwifi/rtl8192se/phy.c b/drivers/net/wireless/rtlwifi/rtl8192se/phy.c
index 4a499928e4c6..8d7099bc472c 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192se/phy.c
+++ b/drivers/net/wireless/rtlwifi/rtl8192se/phy.c
@@ -1450,6 +1450,7 @@ static void _rtl92s_phy_set_fwcmd_io(struct ieee80211_hw *hw)
1450bool rtl92s_phy_set_fw_cmd(struct ieee80211_hw *hw, enum fwcmd_iotype fw_cmdio) 1450bool rtl92s_phy_set_fw_cmd(struct ieee80211_hw *hw, enum fwcmd_iotype fw_cmdio)
1451{ 1451{
1452 struct rtl_priv *rtlpriv = rtl_priv(hw); 1452 struct rtl_priv *rtlpriv = rtl_priv(hw);
1453 struct dig_t *digtable = &rtlpriv->dm_digtable;
1453 struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); 1454 struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw));
1454 struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); 1455 struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw));
1455 u32 fw_param = FW_CMD_IO_PARA_QUERY(rtlpriv); 1456 u32 fw_param = FW_CMD_IO_PARA_QUERY(rtlpriv);
@@ -1588,16 +1589,16 @@ bool rtl92s_phy_set_fw_cmd(struct ieee80211_hw *hw, enum fwcmd_iotype fw_cmdio)
1588 FW_SS_CTL); 1589 FW_SS_CTL);
1589 1590
1590 if (rtlpriv->dm.dm_flag & HAL_DM_DIG_DISABLE || 1591 if (rtlpriv->dm.dm_flag & HAL_DM_DIG_DISABLE ||
1591 !digtable.dig_enable_flag) 1592 !digtable->dig_enable_flag)
1592 fw_cmdmap &= ~FW_DIG_ENABLE_CTL; 1593 fw_cmdmap &= ~FW_DIG_ENABLE_CTL;
1593 1594
1594 if ((rtlpriv->dm.dm_flag & HAL_DM_HIPWR_DISABLE) || 1595 if ((rtlpriv->dm.dm_flag & HAL_DM_HIPWR_DISABLE) ||
1595 rtlpriv->dm.dynamic_txpower_enable) 1596 rtlpriv->dm.dynamic_txpower_enable)
1596 fw_cmdmap &= ~FW_HIGH_PWR_ENABLE_CTL; 1597 fw_cmdmap &= ~FW_HIGH_PWR_ENABLE_CTL;
1597 1598
1598 if ((digtable.dig_ext_port_stage == 1599 if ((digtable->dig_ext_port_stage ==
1599 DIG_EXT_PORT_STAGE_0) || 1600 DIG_EXT_PORT_STAGE_0) ||
1600 (digtable.dig_ext_port_stage == 1601 (digtable->dig_ext_port_stage ==
1601 DIG_EXT_PORT_STAGE_1)) 1602 DIG_EXT_PORT_STAGE_1))
1602 fw_cmdmap &= ~FW_DIG_ENABLE_CTL; 1603 fw_cmdmap &= ~FW_DIG_ENABLE_CTL;
1603 1604