diff options
author | Larry Finger <Larry.Finger@lwfinger.net> | 2012-04-19 17:32:44 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-04-23 15:35:33 -0400 |
commit | e0602750ab028780962a1e4bb3f3705433a18c97 (patch) | |
tree | 75b3dd7d86251feb2a1709d970220e1d962f2e9c | |
parent | c21916ec4cf9cbdb1ed1c0a4aedc80d9d6400485 (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.c | 156 | ||||
-rw-r--r-- | drivers/net/wireless/rtlwifi/rtl8192se/dm.h | 2 | ||||
-rw-r--r-- | drivers/net/wireless/rtlwifi/rtl8192se/phy.c | 7 |
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 | ||
38 | struct dig_t digtable; | ||
39 | static const u32 edca_setting_dl[PEER_MAX] = { | 38 | static 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) | |||
421 | static void rtl92s_backoff_enable_flag(struct ieee80211_hw *hw) | 420 | static 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 | ||
442 | static void _rtl92s_dm_initial_gain_sta_beforeconnect(struct ieee80211_hw *hw) | 442 | static 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) | |||
519 | static void _rtl92s_dm_ctrl_initgain_bytwoport(struct ieee80211_hw *hw) | 520 | static 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 | ||
550 | static void _rtl92s_dm_ctrl_initgain_byrssi(struct ieee80211_hw *hw) | 552 | static 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) | |||
639 | static void _rtl92s_dm_init_dig(struct ieee80211_hw *hw) | 642 | static 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 | ||
689 | static void _rtl92s_dm_init_dynamic_txpower(struct ieee80211_hw *hw) | 693 | static 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 | ||
115 | extern struct dig_t digtable; | ||
116 | |||
117 | void rtl92s_dm_watchdog(struct ieee80211_hw *hw); | 115 | void rtl92s_dm_watchdog(struct ieee80211_hw *hw); |
118 | void rtl92s_dm_init(struct ieee80211_hw *hw); | 116 | void rtl92s_dm_init(struct ieee80211_hw *hw); |
119 | void rtl92s_dm_init_edca_turbo(struct ieee80211_hw *hw); | 117 | void 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) | |||
1450 | bool rtl92s_phy_set_fw_cmd(struct ieee80211_hw *hw, enum fwcmd_iotype fw_cmdio) | 1450 | bool 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 | ||