• Home
  • Raw
  • Download

Lines Matching refs:rtlpriv

49 	struct rtl_priv *rtlpriv = rtl_priv(hw);  in _rtl88ee_set_bcn_ctrl_reg()  local
54 rtl_write_byte(rtlpriv, REG_BCN_CTRL, (u8) rtlpci->reg_bcn_ctrl_val); in _rtl88ee_set_bcn_ctrl_reg()
59 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_stop_tx_beacon() local
62 tmp1byte = rtl_read_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2); in _rtl88ee_stop_tx_beacon()
63 rtl_write_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2, tmp1byte & (~BIT(6))); in _rtl88ee_stop_tx_beacon()
64 rtl_write_byte(rtlpriv, REG_TBTT_PROHIBIT + 1, 0x64); in _rtl88ee_stop_tx_beacon()
65 tmp1byte = rtl_read_byte(rtlpriv, REG_TBTT_PROHIBIT + 2); in _rtl88ee_stop_tx_beacon()
67 rtl_write_byte(rtlpriv, REG_TBTT_PROHIBIT + 2, tmp1byte); in _rtl88ee_stop_tx_beacon()
72 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_resume_tx_beacon() local
75 tmp1byte = rtl_read_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2); in _rtl88ee_resume_tx_beacon()
76 rtl_write_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2, tmp1byte | BIT(6)); in _rtl88ee_resume_tx_beacon()
77 rtl_write_byte(rtlpriv, REG_TBTT_PROHIBIT + 1, 0xff); in _rtl88ee_resume_tx_beacon()
78 tmp1byte = rtl_read_byte(rtlpriv, REG_TBTT_PROHIBIT + 2); in _rtl88ee_resume_tx_beacon()
80 rtl_write_byte(rtlpriv, REG_TBTT_PROHIBIT + 2, tmp1byte); in _rtl88ee_resume_tx_beacon()
90 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_return_beacon_queue_skb() local
95 spin_lock_irqsave(&rtlpriv->locks.irq_th_lock, flags); in _rtl88ee_return_beacon_queue_skb()
101 rtlpriv->cfg->ops->get_desc( in _rtl88ee_return_beacon_queue_skb()
107 spin_unlock_irqrestore(&rtlpriv->locks.irq_th_lock, flags); in _rtl88ee_return_beacon_queue_skb()
118 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_set_fw_clock_on() local
123 rtlpriv->cfg->ops->get_hw_reg(hw, HAL_DEF_WOWLAN, in _rtl88ee_set_fw_clock_on()
128 if (!rtlpriv->psc.fw_current_inpsmode) in _rtl88ee_set_fw_clock_on()
132 spin_lock_bh(&rtlpriv->locks.fw_ps_lock); in _rtl88ee_set_fw_clock_on()
135 spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); in _rtl88ee_set_fw_clock_on()
140 spin_lock_bh(&rtlpriv->locks.fw_ps_lock); in _rtl88ee_set_fw_clock_on()
142 spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); in _rtl88ee_set_fw_clock_on()
145 spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); in _rtl88ee_set_fw_clock_on()
151 rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_SET_RPWM, &rpwm_val); in _rtl88ee_set_fw_clock_on()
154 content = rtl_read_dword(rtlpriv, isr_regaddr); in _rtl88ee_set_fw_clock_on()
158 content = rtl_read_dword(rtlpriv, isr_regaddr); in _rtl88ee_set_fw_clock_on()
162 rtl_write_word(rtlpriv, isr_regaddr, 0x0100); in _rtl88ee_set_fw_clock_on()
164 RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD, in _rtl88ee_set_fw_clock_on()
170 spin_lock_bh(&rtlpriv->locks.fw_ps_lock); in _rtl88ee_set_fw_clock_on()
172 spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); in _rtl88ee_set_fw_clock_on()
174 mod_timer(&rtlpriv->works.fw_clockoff_timer, in _rtl88ee_set_fw_clock_on()
179 spin_lock_bh(&rtlpriv->locks.fw_ps_lock); in _rtl88ee_set_fw_clock_on()
181 spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); in _rtl88ee_set_fw_clock_on()
188 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_set_fw_clock_off() local
198 if (!rtlpriv->psc.fw_current_inpsmode) in _rtl88ee_set_fw_clock_off()
202 rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_RF_STATE, (u8 *)(&rtstate)); in _rtl88ee_set_fw_clock_off()
203 if (rtstate == ERFOFF || rtlpriv->psc.inactive_pwrstate == ERFOFF) in _rtl88ee_set_fw_clock_off()
215 mod_timer(&rtlpriv->works.fw_clockoff_timer, in _rtl88ee_set_fw_clock_off()
222 spin_lock_bh(&rtlpriv->locks.fw_ps_lock); in _rtl88ee_set_fw_clock_off()
225 spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); in _rtl88ee_set_fw_clock_off()
227 rtl_write_word(rtlpriv, REG_HISR, 0x0100); in _rtl88ee_set_fw_clock_off()
228 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SET_RPWM, in _rtl88ee_set_fw_clock_off()
230 spin_lock_bh(&rtlpriv->locks.fw_ps_lock); in _rtl88ee_set_fw_clock_off()
232 spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); in _rtl88ee_set_fw_clock_off()
234 spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); in _rtl88ee_set_fw_clock_off()
235 mod_timer(&rtlpriv->works.fw_clockoff_timer, in _rtl88ee_set_fw_clock_off()
264 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_fwlps_leave() local
274 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_H2C_FW_PWRMODE, in _rtl88ee_fwlps_leave()
276 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, in _rtl88ee_fwlps_leave()
280 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SET_RPWM, &rpwm_val); in _rtl88ee_fwlps_leave()
281 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_H2C_FW_PWRMODE, in _rtl88ee_fwlps_leave()
283 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, in _rtl88ee_fwlps_leave()
290 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_fwlps_enter() local
298 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, in _rtl88ee_fwlps_enter()
300 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_H2C_FW_PWRMODE, in _rtl88ee_fwlps_enter()
306 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, in _rtl88ee_fwlps_enter()
308 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_H2C_FW_PWRMODE, in _rtl88ee_fwlps_enter()
310 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SET_RPWM, &rpwm_val); in _rtl88ee_fwlps_enter()
316 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_get_hw_reg() local
331 rtlpriv->cfg->ops->get_hw_reg(hw, in rtl88ee_get_hw_reg()
337 val_rcr = rtl_read_dword(rtlpriv, REG_RCR); in rtl88ee_get_hw_reg()
353 *ptsf_high = rtl_read_dword(rtlpriv, (REG_TSFTR + 4)); in rtl88ee_get_hw_reg()
354 *ptsf_low = rtl_read_dword(rtlpriv, REG_TSFTR); in rtl88ee_get_hw_reg()
359 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, in rtl88ee_get_hw_reg()
367 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_set_hw_reg() local
377 rtl_write_byte(rtlpriv, (REG_MACID + idx), in rtl88ee_set_hw_reg()
386 rtl_write_byte(rtlpriv, REG_RRSR, b_rate_cfg & 0xff); in rtl88ee_set_hw_reg()
387 rtl_write_byte(rtlpriv, REG_RRSR + 1, in rtl88ee_set_hw_reg()
393 rtl_write_byte(rtlpriv, REG_INIRTS_RATE_SEL, in rtl88ee_set_hw_reg()
399 rtl_write_byte(rtlpriv, (REG_BSSID + idx), in rtl88ee_set_hw_reg()
404 rtl_write_byte(rtlpriv, REG_SIFS_CTX + 1, val[0]); in rtl88ee_set_hw_reg()
405 rtl_write_byte(rtlpriv, REG_SIFS_TRX + 1, val[1]); in rtl88ee_set_hw_reg()
407 rtl_write_byte(rtlpriv, REG_SPEC_SIFS + 1, val[0]); in rtl88ee_set_hw_reg()
408 rtl_write_byte(rtlpriv, REG_MAC_SPEC_SIFS + 1, val[0]); in rtl88ee_set_hw_reg()
411 rtl_write_word(rtlpriv, REG_RESP_SIFS_OFDM, in rtl88ee_set_hw_reg()
414 rtl_write_word(rtlpriv, REG_RESP_SIFS_OFDM, in rtl88ee_set_hw_reg()
420 RT_TRACE(rtlpriv, COMP_MLME, DBG_LOUD, in rtl88ee_set_hw_reg()
423 rtl_write_byte(rtlpriv, REG_SLOT, val[0]); in rtl88ee_set_hw_reg()
426 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_AC_PARAM, in rtl88ee_set_hw_reg()
434 reg_tmp = rtl_read_byte(rtlpriv, REG_TRXPTCL_CTL+2); in rtl88ee_set_hw_reg()
437 rtl_write_byte(rtlpriv, REG_TRXPTCL_CTL + in rtl88ee_set_hw_reg()
441 rtl_write_byte(rtlpriv, REG_TRXPTCL_CTL + in rtl88ee_set_hw_reg()
446 rtl_write_byte(rtlpriv, REG_SECCFG, *val); in rtl88ee_set_hw_reg()
465 RT_TRACE(rtlpriv, COMP_MLME, DBG_LOUD, in rtl88ee_set_hw_reg()
469 rtl_write_byte(rtlpriv, REG_AMPDU_MIN_SPACE, in rtl88ee_set_hw_reg()
479 RT_TRACE(rtlpriv, COMP_MLME, DBG_LOUD, in rtl88ee_set_hw_reg()
483 rtl_write_byte(rtlpriv, REG_AMPDU_MIN_SPACE, in rtl88ee_set_hw_reg()
514 rtl_write_byte(rtlpriv, in rtl88ee_set_hw_reg()
520 RT_TRACE(rtlpriv, COMP_MLME, DBG_LOUD, in rtl88ee_set_hw_reg()
530 rtlpriv->cfg->ops->set_hw_reg(hw, in rtl88ee_set_hw_reg()
539 u8 acm_ctrl = rtl_read_byte(rtlpriv, REG_ACMHWCTRL); in rtl88ee_set_hw_reg()
556 RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, in rtl88ee_set_hw_reg()
573 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, in rtl88ee_set_hw_reg()
579 RT_TRACE(rtlpriv, COMP_QOS, DBG_TRACE, in rtl88ee_set_hw_reg()
582 rtl_write_byte(rtlpriv, REG_ACMHWCTRL, acm_ctrl); in rtl88ee_set_hw_reg()
585 rtl_write_dword(rtlpriv, REG_RCR, ((u32 *)(val))[0]); in rtl88ee_set_hw_reg()
591 rtl_write_word(rtlpriv, REG_RL, in rtl88ee_set_hw_reg()
596 rtl_write_byte(rtlpriv, REG_DUAL_TSF_RST, (BIT(0) | BIT(1))); in rtl88ee_set_hw_reg()
610 rpwm_val = rtl_read_byte(rtlpriv, REG_PCIE_HRPWM); in rtl88ee_set_hw_reg()
614 rtl_write_byte(rtlpriv, REG_PCIE_HRPWM, *val); in rtl88ee_set_hw_reg()
616 rtl_write_byte(rtlpriv, REG_PCIE_HRPWM, *val | BIT(7)); in rtl88ee_set_hw_reg()
644 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_AID, in rtl88ee_set_hw_reg()
647 tmp_regcr = rtl_read_byte(rtlpriv, REG_CR + 1); in rtl88ee_set_hw_reg()
648 rtl_write_byte(rtlpriv, REG_CR + 1, in rtl88ee_set_hw_reg()
655 rtl_read_byte(rtlpriv, in rtl88ee_set_hw_reg()
657 rtl_write_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2, in rtl88ee_set_hw_reg()
663 bcnvalid_reg = rtl_read_byte(rtlpriv, in rtl88ee_set_hw_reg()
665 rtl_write_byte(rtlpriv, REG_TDECTRL+2, in rtl88ee_set_hw_reg()
670 bcnvalid_reg = rtl_read_byte(rtlpriv, in rtl88ee_set_hw_reg()
677 rtl_read_byte(rtlpriv, REG_TDECTRL+2); in rtl88ee_set_hw_reg()
683 rtl_write_byte(rtlpriv, REG_TDECTRL+2, BIT(0)); in rtl88ee_set_hw_reg()
689 rtl_write_byte(rtlpriv, in rtl88ee_set_hw_reg()
694 rtl_write_byte(rtlpriv, REG_CR + 1, in rtl88ee_set_hw_reg()
705 u2btmp = rtl_read_word(rtlpriv, REG_BCN_PSR_RPT); in rtl88ee_set_hw_reg()
707 rtl_write_word(rtlpriv, REG_BCN_PSR_RPT, (u2btmp | in rtl88ee_set_hw_reg()
718 rtl_write_dword(rtlpriv, REG_TSFTR, in rtl88ee_set_hw_reg()
720 rtl_write_dword(rtlpriv, REG_TSFTR + 4, in rtl88ee_set_hw_reg()
737 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, in rtl88ee_set_hw_reg()
745 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_llt_write() local
751 rtl_write_dword(rtlpriv, REG_LLT_INIT, value); in _rtl88ee_llt_write()
754 value = rtl_read_dword(rtlpriv, REG_LLT_INIT); in _rtl88ee_llt_write()
759 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, in _rtl88ee_llt_write()
772 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_llt_table_init() local
781 rtl_write_byte(rtlpriv, REG_RQPN_NPQ, 0x01); in _rtl88ee_llt_table_init()
782 rtl_write_dword(rtlpriv, REG_RQPN, 0x80730d29); in _rtl88ee_llt_table_init()
785 rtl_write_dword(rtlpriv, REG_TRXFF_BNDY, (0x25FF0000 | txpktbuf_bndy)); in _rtl88ee_llt_table_init()
786 rtl_write_byte(rtlpriv, REG_TDECTRL + 1, txpktbuf_bndy); in _rtl88ee_llt_table_init()
788 rtl_write_byte(rtlpriv, REG_TXPKTBUF_BCNQ_BDNY, txpktbuf_bndy); in _rtl88ee_llt_table_init()
789 rtl_write_byte(rtlpriv, REG_TXPKTBUF_MGQ_BDNY, txpktbuf_bndy); in _rtl88ee_llt_table_init()
791 rtl_write_byte(rtlpriv, 0x45D, txpktbuf_bndy); in _rtl88ee_llt_table_init()
792 rtl_write_byte(rtlpriv, REG_PBP, 0x11); in _rtl88ee_llt_table_init()
793 rtl_write_byte(rtlpriv, REG_RX_DRVINFO_SZ, 0x4); in _rtl88ee_llt_table_init()
820 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_gen_refresh_led_state() local
825 if (rtlpriv->rtlhal.up_first_time) in _rtl88ee_gen_refresh_led_state()
838 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_init_mac() local
846 bytetmp = rtl_read_byte(rtlpriv, REG_XCK_OUT_CTRL) & (~BIT(0)); in _rtl88ee_init_mac()
847 rtl_write_byte(rtlpriv, REG_XCK_OUT_CTRL, bytetmp); in _rtl88ee_init_mac()
849 bytetmp = rtl_read_byte(rtlpriv, REG_APS_FSMCO + 1) & (~BIT(7)); in _rtl88ee_init_mac()
850 rtl_write_byte(rtlpriv, REG_APS_FSMCO + 1, bytetmp); in _rtl88ee_init_mac()
852 rtl_write_byte(rtlpriv, REG_RSV_CTRL, 0x00); in _rtl88ee_init_mac()
854 if (!rtl_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, in _rtl88ee_init_mac()
857 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, in _rtl88ee_init_mac()
862 bytetmp = rtl_read_byte(rtlpriv, REG_APS_FSMCO) | BIT(4); in _rtl88ee_init_mac()
863 rtl_write_byte(rtlpriv, REG_APS_FSMCO, bytetmp); in _rtl88ee_init_mac()
865 bytetmp = rtl_read_byte(rtlpriv, REG_PCIE_CTRL_REG+2); in _rtl88ee_init_mac()
866 rtl_write_byte(rtlpriv, REG_PCIE_CTRL_REG+2, bytetmp|BIT(2)); in _rtl88ee_init_mac()
868 bytetmp = rtl_read_byte(rtlpriv, REG_WATCH_DOG+1); in _rtl88ee_init_mac()
869 rtl_write_byte(rtlpriv, REG_WATCH_DOG+1, bytetmp|BIT(7)); in _rtl88ee_init_mac()
871 bytetmp = rtl_read_byte(rtlpriv, REG_AFE_XTAL_CTRL_EXT+1); in _rtl88ee_init_mac()
872 rtl_write_byte(rtlpriv, REG_AFE_XTAL_CTRL_EXT+1, bytetmp|BIT(1)); in _rtl88ee_init_mac()
874 bytetmp = rtl_read_byte(rtlpriv, REG_TX_RPT_CTRL); in _rtl88ee_init_mac()
875 rtl_write_byte(rtlpriv, REG_TX_RPT_CTRL, bytetmp|BIT(1)|BIT(0)); in _rtl88ee_init_mac()
876 rtl_write_byte(rtlpriv, REG_TX_RPT_CTRL+1, 2); in _rtl88ee_init_mac()
877 rtl_write_word(rtlpriv, REG_TX_RPT_TIME, 0xcdf0); in _rtl88ee_init_mac()
880 bytetmp = rtl_read_byte(rtlpriv, REG_SYS_CLKR); in _rtl88ee_init_mac()
882 rtl_write_byte(rtlpriv, REG_SYS_CLKR, bytetmp|BIT(3)); in _rtl88ee_init_mac()
883 bytetmp = rtl_read_byte(rtlpriv, REG_GPIO_MUXCFG+1); in _rtl88ee_init_mac()
884 rtl_write_byte(rtlpriv, REG_GPIO_MUXCFG+1, (bytetmp & (~BIT(4)))); in _rtl88ee_init_mac()
885 rtl_write_byte(rtlpriv, 0x367, 0x80); in _rtl88ee_init_mac()
887 rtl_write_word(rtlpriv, REG_CR, 0x2ff); in _rtl88ee_init_mac()
888 rtl_write_byte(rtlpriv, REG_CR+1, 0x06); in _rtl88ee_init_mac()
889 rtl_write_byte(rtlpriv, MSR, 0x00); in _rtl88ee_init_mac()
893 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, in _rtl88ee_init_mac()
898 rtl_write_dword(rtlpriv, REG_HISR, 0xffffffff); in _rtl88ee_init_mac()
899 rtl_write_dword(rtlpriv, REG_HISRE, 0xffffffff); in _rtl88ee_init_mac()
901 wordtmp = rtl_read_word(rtlpriv, REG_TRXDMA_CTRL); in _rtl88ee_init_mac()
904 rtl_write_word(rtlpriv, REG_TRXDMA_CTRL, wordtmp); in _rtl88ee_init_mac()
906 rtl_write_dword(rtlpriv, REG_RCR, rtlpci->receive_config); in _rtl88ee_init_mac()
907 rtl_write_word(rtlpriv, REG_RXFLTMAP2, 0xffff); in _rtl88ee_init_mac()
908 rtl_write_dword(rtlpriv, REG_TCR, rtlpci->transmit_config); in _rtl88ee_init_mac()
910 rtl_write_dword(rtlpriv, REG_BCNQ_DESA, in _rtl88ee_init_mac()
913 rtl_write_dword(rtlpriv, REG_MGQ_DESA, in _rtl88ee_init_mac()
916 rtl_write_dword(rtlpriv, REG_VOQ_DESA, in _rtl88ee_init_mac()
918 rtl_write_dword(rtlpriv, REG_VIQ_DESA, in _rtl88ee_init_mac()
920 rtl_write_dword(rtlpriv, REG_BEQ_DESA, in _rtl88ee_init_mac()
922 rtl_write_dword(rtlpriv, REG_BKQ_DESA, in _rtl88ee_init_mac()
924 rtl_write_dword(rtlpriv, REG_HQ_DESA, in _rtl88ee_init_mac()
927 rtl_write_dword(rtlpriv, REG_RX_DESA, in _rtl88ee_init_mac()
934 rtl_write_dword(rtlpriv, REG_INT_MIG, 0); in _rtl88ee_init_mac()
936 rtl_write_dword(rtlpriv, REG_MCUTST_1, 0x0); in _rtl88ee_init_mac()
937 rtl_write_byte(rtlpriv, REG_PCIE_CTRL_REG+1, 0);/*Enable RX DMA */ in _rtl88ee_init_mac()
940 bytetmp = rtl_read_byte(rtlpriv, REG_EARLY_MODE_CONTROL); in _rtl88ee_init_mac()
942 rtl_write_byte(rtlpriv, REG_EARLY_MODE_CONTROL, bytetmp); in _rtl88ee_init_mac()
943 rtl_write_byte(rtlpriv, REG_EARLY_MODE_CONTROL+3, 0x81); in _rtl88ee_init_mac()
951 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_hw_configure() local
960 rtl_write_dword(rtlpriv, REG_RRSR, reg_prsr); in _rtl88ee_hw_configure()
961 rtl_write_byte(rtlpriv, REG_HWSEQ_CTRL, 0xFF); in _rtl88ee_hw_configure()
966 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_enable_aspm_back_door() local
971 rtl_write_word(rtlpriv, 0x354, 0x8104); in _rtl88ee_enable_aspm_back_door()
972 rtl_write_word(rtlpriv, 0x358, 0x24); in _rtl88ee_enable_aspm_back_door()
974 rtl_write_word(rtlpriv, 0x350, 0x70c); in _rtl88ee_enable_aspm_back_door()
975 rtl_write_byte(rtlpriv, 0x352, 0x2); in _rtl88ee_enable_aspm_back_door()
976 tmp1byte = rtl_read_byte(rtlpriv, 0x352); in _rtl88ee_enable_aspm_back_door()
980 tmp1byte = rtl_read_byte(rtlpriv, 0x352); in _rtl88ee_enable_aspm_back_door()
984 tmp4byte = rtl_read_dword(rtlpriv, 0x34c); in _rtl88ee_enable_aspm_back_door()
985 rtl_write_dword(rtlpriv, 0x348, tmp4byte|BIT(31)); in _rtl88ee_enable_aspm_back_door()
986 rtl_write_word(rtlpriv, 0x350, 0xf70c); in _rtl88ee_enable_aspm_back_door()
987 rtl_write_byte(rtlpriv, 0x352, 0x1); in _rtl88ee_enable_aspm_back_door()
990 tmp1byte = rtl_read_byte(rtlpriv, 0x352); in _rtl88ee_enable_aspm_back_door()
994 tmp1byte = rtl_read_byte(rtlpriv, 0x352); in _rtl88ee_enable_aspm_back_door()
998 rtl_write_word(rtlpriv, 0x350, 0x718); in _rtl88ee_enable_aspm_back_door()
999 rtl_write_byte(rtlpriv, 0x352, 0x2); in _rtl88ee_enable_aspm_back_door()
1000 tmp1byte = rtl_read_byte(rtlpriv, 0x352); in _rtl88ee_enable_aspm_back_door()
1004 tmp1byte = rtl_read_byte(rtlpriv, 0x352); in _rtl88ee_enable_aspm_back_door()
1009 tmp4byte = rtl_read_dword(rtlpriv, 0x34c); in _rtl88ee_enable_aspm_back_door()
1010 rtl_write_dword(rtlpriv, 0x348, tmp4byte|BIT(11)|BIT(12)); in _rtl88ee_enable_aspm_back_door()
1011 rtl_write_word(rtlpriv, 0x350, 0xf718); in _rtl88ee_enable_aspm_back_door()
1012 rtl_write_byte(rtlpriv, 0x352, 0x1); in _rtl88ee_enable_aspm_back_door()
1015 tmp1byte = rtl_read_byte(rtlpriv, 0x352); in _rtl88ee_enable_aspm_back_door()
1019 tmp1byte = rtl_read_byte(rtlpriv, 0x352); in _rtl88ee_enable_aspm_back_door()
1026 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_enable_hw_security_config() local
1029 RT_TRACE(rtlpriv, COMP_INIT, DBG_DMESG, in rtl88ee_enable_hw_security_config()
1031 rtlpriv->sec.pairwise_enc_algorithm, in rtl88ee_enable_hw_security_config()
1032 rtlpriv->sec.group_enc_algorithm); in rtl88ee_enable_hw_security_config()
1034 if (rtlpriv->cfg->mod_params->sw_crypto || rtlpriv->sec.use_sw_sec) { in rtl88ee_enable_hw_security_config()
1035 RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG, in rtl88ee_enable_hw_security_config()
1042 if (rtlpriv->sec.use_defaultkey) { in rtl88ee_enable_hw_security_config()
1049 rtl_write_byte(rtlpriv, REG_CR + 1, 0x02); in rtl88ee_enable_hw_security_config()
1051 RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG, in rtl88ee_enable_hw_security_config()
1054 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_WPA_CONFIG, &sec_reg_value); in rtl88ee_enable_hw_security_config()
1059 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_hw_init() local
1062 struct rtl_phy *rtlphy = &(rtlpriv->phy); in rtl88ee_hw_init()
1071 rtlpriv->rtlhal.being_init_adapter = true; in rtl88ee_hw_init()
1083 rtlpriv->intf_ops->disable_aspm(hw); in rtl88ee_hw_init()
1085 tmp_u1b = rtl_read_byte(rtlpriv, REG_SYS_CLKR+1); in rtl88ee_hw_init()
1086 u1byte = rtl_read_byte(rtlpriv, REG_CR); in rtl88ee_hw_init()
1096 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "Init MAC failed\n"); in rtl88ee_hw_init()
1103 RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, in rtl88ee_hw_init()
1123 rtl_write_dword(rtlpriv, REG_RCR, rtlpci->receive_config); in rtl88ee_hw_init()
1143 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_ETHER_ADDR, mac->mac_addr); in rtl88ee_hw_init()
1145 rtlpriv->intf_ops->enable_aspm(hw); in rtl88ee_hw_init()
1152 rtlpriv->dm.fat_table.rx_idle_ant = MAIN_ANT; in rtl88ee_hw_init()
1155 rtlpriv->dm.fat_table.rx_idle_ant = AUX_ANT; in rtl88ee_hw_init()
1157 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "rx idle ant %s\n", in rtl88ee_hw_init()
1158 (rtlpriv->dm.fat_table.rx_idle_ant == MAIN_ANT) ? in rtl88ee_hw_init()
1175 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "PA BIAS path A\n"); in rtl88ee_hw_init()
1179 tmp_u1b = rtl_read_byte(rtlpriv, 0x16); in rtl88ee_hw_init()
1181 rtl_write_byte(rtlpriv, 0x16, tmp_u1b | 0x80); in rtl88ee_hw_init()
1183 rtl_write_byte(rtlpriv, 0x16, tmp_u1b | 0x90); in rtl88ee_hw_init()
1184 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "under 1.5V\n"); in rtl88ee_hw_init()
1186 rtl_write_byte(rtlpriv, REG_NAV_CTRL+2, ((30000+127)/128)); in rtl88ee_hw_init()
1190 rtlpriv->rtlhal.being_init_adapter = false; in rtl88ee_hw_init()
1196 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_read_chip_version() local
1197 struct rtl_phy *rtlphy = &(rtlpriv->phy); in _rtl88ee_read_chip_version()
1201 value32 = rtl_read_dword(rtlpriv, REG_SYS_CFG); in _rtl88ee_read_chip_version()
1212 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, in _rtl88ee_read_chip_version()
1222 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_set_media_status() local
1223 u8 bt_msr = rtl_read_byte(rtlpriv, MSR) & 0xfc; in _rtl88ee_set_media_status()
1230 RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, in _rtl88ee_set_media_status()
1236 RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, in _rtl88ee_set_media_status()
1242 RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, in _rtl88ee_set_media_status()
1248 RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, in _rtl88ee_set_media_status()
1252 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, in _rtl88ee_set_media_status()
1264 if (mode != MSR_AP && rtlpriv->mac80211.link_state < MAC80211_LINKED) { in _rtl88ee_set_media_status()
1276 RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, in _rtl88ee_set_media_status()
1281 rtl_write_byte(rtlpriv, MSR, bt_msr | mode); in _rtl88ee_set_media_status()
1282 rtlpriv->cfg->ops->led_control(hw, ledaction); in _rtl88ee_set_media_status()
1284 rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x00); in _rtl88ee_set_media_status()
1286 rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x66); in _rtl88ee_set_media_status()
1292 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_set_check_bssid() local
1296 if (rtlpriv->psc.rfpwr_state != ERFON) in rtl88ee_set_check_bssid()
1301 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_RCR, in rtl88ee_set_check_bssid()
1307 rtlpriv->cfg->ops->set_hw_reg(hw, in rtl88ee_set_check_bssid()
1316 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_set_network_type() local
1321 if (rtlpriv->mac80211.link_state == MAC80211_LINKED) { in rtl88ee_set_network_type()
1337 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_set_qos() local
1341 rtl_write_dword(rtlpriv, REG_EDCA_BK_PARAM, 0xa44f); in rtl88ee_set_qos()
1346 rtl_write_dword(rtlpriv, REG_EDCA_VI_PARAM, 0x5e4322); in rtl88ee_set_qos()
1349 rtl_write_dword(rtlpriv, REG_EDCA_VO_PARAM, 0x2f3222); in rtl88ee_set_qos()
1359 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_enable_interrupt() local
1362 rtl_write_dword(rtlpriv, REG_HIMR, in rtl88ee_enable_interrupt()
1364 rtl_write_dword(rtlpriv, REG_HIMRE, in rtl88ee_enable_interrupt()
1372 rtl_write_byte(rtlpriv, REG_C2HEVT_CLEAR, 0); in rtl88ee_enable_interrupt()
1374 rtl_write_dword(rtlpriv, REG_HSIMR, in rtl88ee_enable_interrupt()
1380 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_disable_interrupt() local
1383 rtl_write_dword(rtlpriv, REG_HIMR, IMR_DISABLED); in rtl88ee_disable_interrupt()
1384 rtl_write_dword(rtlpriv, REG_HIMRE, IMR_DISABLED); in rtl88ee_disable_interrupt()
1391 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_poweroff_adapter() local
1396 rtlpriv->intf_ops->enable_aspm(hw); in _rtl88ee_poweroff_adapter()
1398 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "POWER OFF adapter\n"); in _rtl88ee_poweroff_adapter()
1399 u1b_tmp = rtl_read_byte(rtlpriv, REG_TX_RPT_CTRL); in _rtl88ee_poweroff_adapter()
1400 rtl_write_byte(rtlpriv, REG_TX_RPT_CTRL, u1b_tmp & (~BIT(1))); in _rtl88ee_poweroff_adapter()
1402 u1b_tmp = rtl_read_byte(rtlpriv, REG_RXDMA_CONTROL); in _rtl88ee_poweroff_adapter()
1405 u1b_tmp = rtl_read_byte(rtlpriv, REG_RXDMA_CONTROL); in _rtl88ee_poweroff_adapter()
1408 rtl_write_byte(rtlpriv, REG_PCIE_CTRL_REG+1, 0xFF); in _rtl88ee_poweroff_adapter()
1410 rtl_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, in _rtl88ee_poweroff_adapter()
1414 rtl_write_byte(rtlpriv, REG_RF_CTRL, 0x00); in _rtl88ee_poweroff_adapter()
1416 if ((rtl_read_byte(rtlpriv, REG_MCUFWDL) & BIT(7)) && rtlhal->fw_ready) in _rtl88ee_poweroff_adapter()
1419 u1b_tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN+1); in _rtl88ee_poweroff_adapter()
1420 rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN + 1, (u1b_tmp & (~BIT(2)))); in _rtl88ee_poweroff_adapter()
1421 rtl_write_byte(rtlpriv, REG_MCUFWDL, 0x00); in _rtl88ee_poweroff_adapter()
1423 u1b_tmp = rtl_read_byte(rtlpriv, REG_32K_CTRL); in _rtl88ee_poweroff_adapter()
1424 rtl_write_byte(rtlpriv, REG_32K_CTRL, (u1b_tmp & (~BIT(0)))); in _rtl88ee_poweroff_adapter()
1426 rtl_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, in _rtl88ee_poweroff_adapter()
1429 u1b_tmp = rtl_read_byte(rtlpriv, REG_RSV_CTRL+1); in _rtl88ee_poweroff_adapter()
1430 rtl_write_byte(rtlpriv, REG_RSV_CTRL+1, (u1b_tmp & (~BIT(3)))); in _rtl88ee_poweroff_adapter()
1431 u1b_tmp = rtl_read_byte(rtlpriv, REG_RSV_CTRL+1); in _rtl88ee_poweroff_adapter()
1432 rtl_write_byte(rtlpriv, REG_RSV_CTRL+1, (u1b_tmp | BIT(3))); in _rtl88ee_poweroff_adapter()
1434 rtl_write_byte(rtlpriv, REG_RSV_CTRL, 0x0E); in _rtl88ee_poweroff_adapter()
1436 u1b_tmp = rtl_read_byte(rtlpriv, GPIO_IN); in _rtl88ee_poweroff_adapter()
1437 rtl_write_byte(rtlpriv, GPIO_OUT, u1b_tmp); in _rtl88ee_poweroff_adapter()
1438 rtl_write_byte(rtlpriv, GPIO_IO_SEL, 0x7F); in _rtl88ee_poweroff_adapter()
1440 u1b_tmp = rtl_read_byte(rtlpriv, REG_GPIO_IO_SEL); in _rtl88ee_poweroff_adapter()
1441 rtl_write_byte(rtlpriv, REG_GPIO_IO_SEL, (u1b_tmp << 4) | u1b_tmp); in _rtl88ee_poweroff_adapter()
1442 u1b_tmp = rtl_read_byte(rtlpriv, REG_GPIO_IO_SEL+1); in _rtl88ee_poweroff_adapter()
1443 rtl_write_byte(rtlpriv, REG_GPIO_IO_SEL+1, u1b_tmp | 0x0F); in _rtl88ee_poweroff_adapter()
1445 rtl_write_dword(rtlpriv, REG_GPIO_IO_SEL_2+2, 0x00080808); in _rtl88ee_poweroff_adapter()
1450 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_card_disable() local
1455 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "RTL8188ee card disable\n"); in rtl88ee_card_disable()
1462 if (rtlpriv->rtlhal.driver_is_goingto_unload || in rtl88ee_card_disable()
1464 rtlpriv->cfg->ops->led_control(hw, LED_CTL_POWER_OFF); in rtl88ee_card_disable()
1470 rtlpriv->phy.iqk_initialized = false; in rtl88ee_card_disable()
1476 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_interrupt_recognized() local
1479 *p_inta = rtl_read_dword(rtlpriv, ISR) & rtlpci->irq_mask[0]; in rtl88ee_interrupt_recognized()
1480 rtl_write_dword(rtlpriv, ISR, *p_inta); in rtl88ee_interrupt_recognized()
1482 *p_intb = rtl_read_dword(rtlpriv, REG_HISRE) & rtlpci->irq_mask[1]; in rtl88ee_interrupt_recognized()
1483 rtl_write_dword(rtlpriv, REG_HISRE, *p_intb); in rtl88ee_interrupt_recognized()
1489 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_set_beacon_related_registers() local
1497 rtl_write_word(rtlpriv, REG_ATIMWND, atim_window); in rtl88ee_set_beacon_related_registers()
1498 rtl_write_word(rtlpriv, REG_BCN_INTERVAL, bcn_interval); in rtl88ee_set_beacon_related_registers()
1499 rtl_write_word(rtlpriv, REG_BCNTCFG, 0x660f); in rtl88ee_set_beacon_related_registers()
1500 rtl_write_byte(rtlpriv, REG_RXTSF_OFFSET_CCK, 0x18); in rtl88ee_set_beacon_related_registers()
1501 rtl_write_byte(rtlpriv, REG_RXTSF_OFFSET_OFDM, 0x18); in rtl88ee_set_beacon_related_registers()
1502 rtl_write_byte(rtlpriv, 0x606, 0x30); in rtl88ee_set_beacon_related_registers()
1504 rtl_write_byte(rtlpriv, REG_BCN_CTRL, (u8) rtlpci->reg_bcn_ctrl_val); in rtl88ee_set_beacon_related_registers()
1510 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_set_beacon_interval() local
1514 RT_TRACE(rtlpriv, COMP_BEACON, DBG_DMESG, in rtl88ee_set_beacon_interval()
1517 rtl_write_word(rtlpriv, REG_BCN_INTERVAL, bcn_interval); in rtl88ee_set_beacon_interval()
1524 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_update_interrupt_mask() local
1527 RT_TRACE(rtlpriv, COMP_INTR, DBG_LOUD, in rtl88ee_update_interrupt_mask()
1584 struct rtl_priv *rtlpriv = rtl_priv(hw); in read_power_value_fromprom() local
1587 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, in read_power_value_fromprom()
1594 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, in read_power_value_fromprom()
1773 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_read_txpower_info_from_hwpg() local
1798 RTPRINT(rtlpriv, FINIT, INIT_TXPOWER, in _rtl88ee_read_txpower_info_from_hwpg()
1818 RTPRINT(rtlpriv, FINIT, INIT_TXPOWER, in _rtl88ee_read_txpower_info_from_hwpg()
1829 RTPRINT(rtlpriv, FINIT, INIT_TXPOWER, in _rtl88ee_read_txpower_info_from_hwpg()
1835 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_read_adapter_info() local
1848 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, in _rtl88ee_read_adapter_info()
1852 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, in _rtl88ee_read_adapter_info()
1857 RT_PRINT_DATA(rtlpriv, COMP_INIT, DBG_DMESG, "MAP\n", in _rtl88ee_read_adapter_info()
1862 RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, in _rtl88ee_read_adapter_info()
1866 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "Autoload OK\n"); in _rtl88ee_read_adapter_info()
1877 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, in _rtl88ee_read_adapter_info()
1879 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, in _rtl88ee_read_adapter_info()
1881 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, in _rtl88ee_read_adapter_info()
1883 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, in _rtl88ee_read_adapter_info()
1885 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, in _rtl88ee_read_adapter_info()
1892 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, in _rtl88ee_read_adapter_info()
1902 RT_TRACE(rtlpriv, COMP_INIT, DBG_DMESG, in _rtl88ee_read_adapter_info()
1934 if (rtlpriv->btcoexist.eeprom_bt_coexist != 0 && in _rtl88ee_read_adapter_info()
1935 rtlpriv->btcoexist.eeprom_bt_ant_num == ANT_X1) in _rtl88ee_read_adapter_info()
1983 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl88ee_hal_customized_behavior() local
2002 RT_TRACE(rtlpriv, COMP_INIT, DBG_DMESG, in _rtl88ee_hal_customized_behavior()
2008 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_read_eeprom_info() local
2010 struct rtl_phy *rtlphy = &(rtlpriv->phy); in rtl88ee_read_eeprom_info()
2016 rtlpriv->dm.rfpath_rxenable[0] = true; in rtl88ee_read_eeprom_info()
2018 rtlpriv->dm.rfpath_rxenable[0] = in rtl88ee_read_eeprom_info()
2019 rtlpriv->dm.rfpath_rxenable[1] = true; in rtl88ee_read_eeprom_info()
2020 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "VersionID = 0x%4x\n", in rtl88ee_read_eeprom_info()
2022 tmp_u1b = rtl_read_byte(rtlpriv, REG_9346CR); in rtl88ee_read_eeprom_info()
2024 RT_TRACE(rtlpriv, COMP_INIT, DBG_DMESG, "Boot from EEPROM\n"); in rtl88ee_read_eeprom_info()
2027 RT_TRACE(rtlpriv, COMP_INIT, DBG_DMESG, "Boot from EFUSE\n"); in rtl88ee_read_eeprom_info()
2031 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "Autoload OK\n"); in rtl88ee_read_eeprom_info()
2035 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "Autoload ERR!!\n"); in rtl88ee_read_eeprom_info()
2043 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_update_hal_rate_table() local
2044 struct rtl_phy *rtlphy = &(rtlpriv->phy); in rtl88ee_update_hal_rate_table()
2099 if ((rtlpriv->btcoexist.bt_coexistence) && in rtl88ee_update_hal_rate_table()
2100 (rtlpriv->btcoexist.bt_coexist_type == BT_CSR_BC4) && in rtl88ee_update_hal_rate_table()
2101 (rtlpriv->btcoexist.bt_cur_state) && in rtl88ee_update_hal_rate_table()
2102 (rtlpriv->btcoexist.bt_ant_isolation) && in rtl88ee_update_hal_rate_table()
2103 ((rtlpriv->btcoexist.bt_service == BT_SCO) || in rtl88ee_update_hal_rate_table()
2104 (rtlpriv->btcoexist.bt_service == BT_BUSY))) in rtl88ee_update_hal_rate_table()
2124 rtl_write_dword(rtlpriv, REG_ARFR0 + ratr_index * 4, ratr_value); in rtl88ee_update_hal_rate_table()
2126 RT_TRACE(rtlpriv, COMP_RATR, DBG_DMESG, in rtl88ee_update_hal_rate_table()
2127 "%x\n", rtl_read_dword(rtlpriv, REG_ARFR0)); in rtl88ee_update_hal_rate_table()
2133 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_update_hal_rate_mask() local
2134 struct rtl_phy *rtlphy = &(rtlpriv->phy); in rtl88ee_update_hal_rate_mask()
2246 RT_TRACE(rtlpriv, COMP_RATR, DBG_DMESG, in rtl88ee_update_hal_rate_mask()
2251 RT_TRACE(rtlpriv, COMP_RATR, DBG_DMESG, in rtl88ee_update_hal_rate_mask()
2264 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_update_hal_rate_tbl() local
2266 if (rtlpriv->dm.useramask) in rtl88ee_update_hal_rate_tbl()
2274 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_update_channel_access_setting() local
2278 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SLOT_TIME, &mac->slot_time); in rtl88ee_update_channel_access_setting()
2283 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SIFS, (u8 *)&sifs_timer); in rtl88ee_update_channel_access_setting()
2288 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_gpio_radio_on_off_checking() local
2294 if (rtlpriv->rtlhal.being_init_adapter) in rtl88ee_gpio_radio_on_off_checking()
2300 spin_lock(&rtlpriv->locks.rf_ps_lock); in rtl88ee_gpio_radio_on_off_checking()
2302 spin_unlock(&rtlpriv->locks.rf_ps_lock); in rtl88ee_gpio_radio_on_off_checking()
2306 spin_unlock(&rtlpriv->locks.rf_ps_lock); in rtl88ee_gpio_radio_on_off_checking()
2311 u4tmp = rtl_read_dword(rtlpriv, REG_GPIO_OUTPUT); in rtl88ee_gpio_radio_on_off_checking()
2315 RT_TRACE(rtlpriv, COMP_RF, DBG_DMESG, in rtl88ee_gpio_radio_on_off_checking()
2323 RT_TRACE(rtlpriv, COMP_RF, DBG_DMESG, in rtl88ee_gpio_radio_on_off_checking()
2332 spin_lock(&rtlpriv->locks.rf_ps_lock); in rtl88ee_gpio_radio_on_off_checking()
2334 spin_unlock(&rtlpriv->locks.rf_ps_lock); in rtl88ee_gpio_radio_on_off_checking()
2339 spin_lock(&rtlpriv->locks.rf_ps_lock); in rtl88ee_gpio_radio_on_off_checking()
2341 spin_unlock(&rtlpriv->locks.rf_ps_lock); in rtl88ee_gpio_radio_on_off_checking()
2353 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88ee_set_key() local
2374 RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG, "clear_all\n"); in rtl88ee_set_key()
2381 memset(rtlpriv->sec.key_buf[idx], 0, in rtl88ee_set_key()
2383 rtlpriv->sec.key_len[idx] = 0; in rtl88ee_set_key()
2402 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, in rtl88ee_set_key()
2408 if (is_wepkey || rtlpriv->sec.use_defaultkey) { in rtl88ee_set_key()
2421 RT_TRACE(rtlpriv, COMP_SEC, in rtl88ee_set_key()
2434 if (rtlpriv->sec.key_len[key_index] == 0) { in rtl88ee_set_key()
2435 RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG, in rtl88ee_set_key()
2443 RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG, in rtl88ee_set_key()
2446 RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG, in rtl88ee_set_key()
2452 rtlpriv->sec.key_buf[key_index]); in rtl88ee_set_key()
2454 RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG, in rtl88ee_set_key()
2464 rtlpriv->sec.key_buf in rtl88ee_set_key()
2471 rtlpriv->sec.key_buf[entry_id]); in rtl88ee_set_key()
2480 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8188ee_bt_var_init() local
2482 rtlpriv->btcoexist.bt_coexistence = in rtl8188ee_bt_var_init()
2483 rtlpriv->btcoexist.eeprom_bt_coexist; in rtl8188ee_bt_var_init()
2484 rtlpriv->btcoexist.bt_ant_num = rtlpriv->btcoexist.eeprom_bt_ant_num; in rtl8188ee_bt_var_init()
2485 rtlpriv->btcoexist.bt_coexist_type = rtlpriv->btcoexist.eeprom_bt_type; in rtl8188ee_bt_var_init()
2487 if (rtlpriv->btcoexist.reg_bt_iso == 2) in rtl8188ee_bt_var_init()
2488 rtlpriv->btcoexist.bt_ant_isolation = in rtl8188ee_bt_var_init()
2489 rtlpriv->btcoexist.eeprom_bt_ant_isol; in rtl8188ee_bt_var_init()
2491 rtlpriv->btcoexist.bt_ant_isolation = in rtl8188ee_bt_var_init()
2492 rtlpriv->btcoexist.reg_bt_iso; in rtl8188ee_bt_var_init()
2494 rtlpriv->btcoexist.bt_radio_shared_type = in rtl8188ee_bt_var_init()
2495 rtlpriv->btcoexist.eeprom_bt_radio_shared; in rtl8188ee_bt_var_init()
2497 if (rtlpriv->btcoexist.bt_coexistence) { in rtl8188ee_bt_var_init()
2498 if (rtlpriv->btcoexist.reg_bt_sco == 1) in rtl8188ee_bt_var_init()
2499 rtlpriv->btcoexist.bt_service = BT_OTHER_ACTION; in rtl8188ee_bt_var_init()
2500 else if (rtlpriv->btcoexist.reg_bt_sco == 2) in rtl8188ee_bt_var_init()
2501 rtlpriv->btcoexist.bt_service = BT_SCO; in rtl8188ee_bt_var_init()
2502 else if (rtlpriv->btcoexist.reg_bt_sco == 4) in rtl8188ee_bt_var_init()
2503 rtlpriv->btcoexist.bt_service = BT_BUSY; in rtl8188ee_bt_var_init()
2504 else if (rtlpriv->btcoexist.reg_bt_sco == 5) in rtl8188ee_bt_var_init()
2505 rtlpriv->btcoexist.bt_service = BT_OTHERBUSY; in rtl8188ee_bt_var_init()
2507 rtlpriv->btcoexist.bt_service = BT_IDLE; in rtl8188ee_bt_var_init()
2509 rtlpriv->btcoexist.bt_edca_ul = 0; in rtl8188ee_bt_var_init()
2510 rtlpriv->btcoexist.bt_edca_dl = 0; in rtl8188ee_bt_var_init()
2511 rtlpriv->btcoexist.bt_rssi_state = 0xff; in rtl8188ee_bt_var_init()
2518 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8188ee_read_bt_coexist_info_from_hwpg() local
2522 rtlpriv->btcoexist.eeprom_bt_coexist = in rtl8188ee_read_bt_coexist_info_from_hwpg()
2525 rtlpriv->btcoexist.eeprom_bt_coexist = 0; in rtl8188ee_read_bt_coexist_info_from_hwpg()
2527 rtlpriv->btcoexist.eeprom_bt_type = ((value & 0xe) >> 1); in rtl8188ee_read_bt_coexist_info_from_hwpg()
2528 rtlpriv->btcoexist.eeprom_bt_ant_num = (value & 0x1); in rtl8188ee_read_bt_coexist_info_from_hwpg()
2529 rtlpriv->btcoexist.eeprom_bt_ant_isol = ((value & 0x10) >> 4); in rtl8188ee_read_bt_coexist_info_from_hwpg()
2530 rtlpriv->btcoexist.eeprom_bt_radio_shared = in rtl8188ee_read_bt_coexist_info_from_hwpg()
2533 rtlpriv->btcoexist.eeprom_bt_coexist = 0; in rtl8188ee_read_bt_coexist_info_from_hwpg()
2534 rtlpriv->btcoexist.eeprom_bt_type = BT_2WIRE; in rtl8188ee_read_bt_coexist_info_from_hwpg()
2535 rtlpriv->btcoexist.eeprom_bt_ant_num = ANT_X2; in rtl8188ee_read_bt_coexist_info_from_hwpg()
2536 rtlpriv->btcoexist.eeprom_bt_ant_isol = 0; in rtl8188ee_read_bt_coexist_info_from_hwpg()
2537 rtlpriv->btcoexist.eeprom_bt_radio_shared = BT_RADIO_SHARED; in rtl8188ee_read_bt_coexist_info_from_hwpg()
2545 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8188ee_bt_reg_init() local
2548 rtlpriv->btcoexist.reg_bt_iso = 2; in rtl8188ee_bt_reg_init()
2550 rtlpriv->btcoexist.reg_bt_sco = 3; in rtl8188ee_bt_reg_init()
2552 rtlpriv->btcoexist.reg_bt_sco = 0; in rtl8188ee_bt_reg_init()
2557 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8188ee_bt_hw_init() local
2558 struct rtl_phy *rtlphy = &rtlpriv->phy; in rtl8188ee_bt_hw_init()
2561 if (rtlpriv->btcoexist.bt_coexistence && in rtl8188ee_bt_hw_init()
2562 ((rtlpriv->btcoexist.bt_coexist_type == BT_CSR_BC4) || in rtl8188ee_bt_hw_init()
2563 rtlpriv->btcoexist.bt_coexist_type == BT_CSR_BC8)) { in rtl8188ee_bt_hw_init()
2564 if (rtlpriv->btcoexist.bt_ant_isolation) in rtl8188ee_bt_hw_init()
2565 rtl_write_byte(rtlpriv, REG_GPIO_MUXCFG, 0xa0); in rtl8188ee_bt_hw_init()
2567 u1_tmp = rtl_read_byte(rtlpriv, 0x4fd) & in rtl8188ee_bt_hw_init()
2570 ((rtlpriv->btcoexist.bt_ant_isolation == 1) ? in rtl8188ee_bt_hw_init()
2572 ((rtlpriv->btcoexist.bt_service == BT_SCO) ? in rtl8188ee_bt_hw_init()
2574 rtl_write_byte(rtlpriv, 0x4fd, u1_tmp); in rtl8188ee_bt_hw_init()
2576 rtl_write_dword(rtlpriv, REG_BT_COEX_TABLE+4, 0xaaaa9aaa); in rtl8188ee_bt_hw_init()
2577 rtl_write_dword(rtlpriv, REG_BT_COEX_TABLE+8, 0xffbd0040); in rtl8188ee_bt_hw_init()
2578 rtl_write_dword(rtlpriv, REG_BT_COEX_TABLE+0xc, 0x40000010); in rtl8188ee_bt_hw_init()
2582 u1_tmp = rtl_read_byte(rtlpriv, ROFDM0_TRXPATHENABLE); in rtl8188ee_bt_hw_init()
2584 rtl_write_byte(rtlpriv, ROFDM0_TRXPATHENABLE, u1_tmp); in rtl8188ee_bt_hw_init()
2586 u1_tmp = rtl_read_byte(rtlpriv, ROFDM1_TRXPATHENABLE); in rtl8188ee_bt_hw_init()
2588 rtl_write_byte(rtlpriv, ROFDM1_TRXPATHENABLE, u1_tmp); in rtl8188ee_bt_hw_init()