Lines Matching refs:rtlpriv

34 	struct rtl_priv *rtlpriv = rtl_priv(hw);  in rtl_ps_enable_nic()  local
40 rtlpriv->intf_ops->reset_trx_ring(hw); in rtl_ps_enable_nic()
43 RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, in rtl_ps_enable_nic()
47 if (rtlpriv->cfg->ops->hw_init(hw)) in rtl_ps_enable_nic()
52 rtlpriv->cfg->ops->enable_interrupt(hw); in rtl_ps_enable_nic()
63 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_ps_disable_nic() local
69 rtlpriv->cfg->ops->disable_interrupt(hw); in rtl_ps_disable_nic()
70 tasklet_kill(&rtlpriv->works.irq_tasklet); in rtl_ps_disable_nic()
73 rtlpriv->cfg->ops->hw_disable(hw); in rtl_ps_disable_nic()
83 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_ps_set_rf_state() local
97 spin_lock(&rtlpriv->locks.rf_ps_lock); in rtl_ps_set_rf_state()
99 spin_unlock(&rtlpriv->locks.rf_ps_lock); in rtl_ps_set_rf_state()
101 RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, in rtl_ps_set_rf_state()
117 spin_unlock(&rtlpriv->locks.rf_ps_lock); in rtl_ps_set_rf_state()
157 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, in rtl_ps_set_rf_state()
163 rtlpriv->cfg->ops->set_rf_power_state(hw, state_toset); in rtl_ps_set_rf_state()
166 spin_lock(&rtlpriv->locks.rf_ps_lock); in rtl_ps_set_rf_state()
168 spin_unlock(&rtlpriv->locks.rf_ps_lock); in rtl_ps_set_rf_state()
177 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl_ps_inactive_ps() local
188 rtlpriv->intf_ops->disable_aspm(hw); in _rtl_ps_inactive_ps()
200 rtlpriv->intf_ops->enable_aspm(hw); in _rtl_ps_inactive_ps()
213 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_ips_nic_off_wq_callback() local
220 RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, in rtl_ips_nic_off_wq_callback()
234 if (rtlpriv->sec.being_setkey) in rtl_ips_nic_off_wq_callback()
237 if (rtlpriv->cfg->ops->bt_coex_off_before_lps) in rtl_ips_nic_off_wq_callback()
238 rtlpriv->cfg->ops->bt_coex_off_before_lps(hw); in rtl_ips_nic_off_wq_callback()
257 RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, in rtl_ips_nic_off_wq_callback()
264 if (rtlpriv->cfg->ops->get_btc_status()) in rtl_ips_nic_off_wq_callback()
265 rtlpriv->btcoexist.btc_ops->btc_ips_notify(rtlpriv, in rtl_ips_nic_off_wq_callback()
276 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_ips_nic_off() local
282 queue_delayed_work(rtlpriv->works.rtl_wq, in rtl_ips_nic_off()
283 &rtlpriv->works.ips_nic_off_wq, MSECS(100)); in rtl_ips_nic_off()
291 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_ips_nic_on() local
295 cancel_delayed_work(&rtlpriv->works.ips_nic_off_wq); in rtl_ips_nic_on()
297 spin_lock(&rtlpriv->locks.ips_lock); in rtl_ips_nic_on()
309 if (rtlpriv->cfg->ops->get_btc_status()) in rtl_ips_nic_on()
310 rtlpriv->btcoexist.btc_ops->btc_ips_notify(rtlpriv, in rtl_ips_nic_on()
314 spin_unlock(&rtlpriv->locks.ips_lock); in rtl_ips_nic_on()
327 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_get_fwlps_doze() local
336 RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD, in rtl_get_fwlps_doze()
353 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_lps_set_psmode() local
382 RT_TRACE(rtlpriv, COMP_RF, DBG_DMESG, in rtl_lps_set_psmode()
388 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_FW_LPS_ACTION, in rtl_lps_set_psmode()
393 if (rtlpriv->cfg->ops->get_btc_status()) in rtl_lps_set_psmode()
394 rtlpriv->btcoexist.btc_ops->btc_lps_notify(rtlpriv, rt_psmode); in rtl_lps_set_psmode()
397 RT_TRACE(rtlpriv, COMP_RF, DBG_DMESG, in rtl_lps_set_psmode()
400 if (rtlpriv->cfg->ops->get_btc_status()) in rtl_lps_set_psmode()
401 rtlpriv->btcoexist.btc_ops->btc_lps_notify(rtlpriv, rt_psmode); in rtl_lps_set_psmode()
405 rtlpriv->cfg->ops->set_hw_reg(hw, in rtl_lps_set_psmode()
422 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_lps_enter() local
428 if (rtlpriv->sec.being_setkey) in rtl_lps_enter()
431 if (rtlpriv->link_info.busytraffic) in rtl_lps_enter()
444 spin_lock_irqsave(&rtlpriv->locks.lps_lock, flag); in rtl_lps_enter()
449 RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD, in rtl_lps_enter()
456 spin_unlock_irqrestore(&rtlpriv->locks.lps_lock, flag); in rtl_lps_enter()
463 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_lps_leave() local
468 spin_lock_irqsave(&rtlpriv->locks.lps_lock, flag); in rtl_lps_leave()
479 rtlpriv->intf_ops->disable_aspm(hw); in rtl_lps_leave()
483 RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD, in rtl_lps_leave()
489 spin_unlock_irqrestore(&rtlpriv->locks.lps_lock, flag); in rtl_lps_leave()
496 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_swlps_beacon() local
508 if (!rtlpriv->psc.swctrl_lps) in rtl_swlps_beacon()
511 if (rtlpriv->mac80211.link_state != MAC80211_LINKED) in rtl_swlps_beacon()
514 if (!rtlpriv->psc.sw_ps_enabled) in rtl_swlps_beacon()
517 if (rtlpriv->psc.fwctrl_lps) in rtl_swlps_beacon()
532 if (!ether_addr_equal_64bits(hdr->addr3, rtlpriv->mac80211.bssid)) in rtl_swlps_beacon()
535 rtlpriv->psc.last_beacon = jiffies; in rtl_swlps_beacon()
548 rtlpriv->psc.dtim_counter = tim_ie->dtim_count; in rtl_swlps_beacon()
554 rtlpriv->mac80211.assoc_id); in rtl_swlps_beacon()
558 rtlpriv->psc.multi_buffered = m_buffed; in rtl_swlps_beacon()
566 queue_delayed_work(rtlpriv->works.rtl_wq, in rtl_swlps_beacon()
567 &rtlpriv->works.ps_work, MSECS(5)); in rtl_swlps_beacon()
569 RT_TRACE(rtlpriv, COMP_POWER, DBG_DMESG, in rtl_swlps_beacon()
577 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_swlps_rf_awake() local
582 if (!rtlpriv->psc.swctrl_lps) in rtl_swlps_rf_awake()
589 rtlpriv->intf_ops->disable_aspm(hw); in rtl_swlps_rf_awake()
593 spin_lock_irqsave(&rtlpriv->locks.lps_lock, flag); in rtl_swlps_rf_awake()
595 spin_unlock_irqrestore(&rtlpriv->locks.lps_lock, flag); in rtl_swlps_rf_awake()
609 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_swlps_rf_sleep() local
615 if (!rtlpriv->psc.sw_ps_enabled) in rtl_swlps_rf_sleep()
618 if ((rtlpriv->sec.being_setkey) || in rtl_swlps_rf_sleep()
626 if (rtlpriv->link_info.busytraffic) in rtl_swlps_rf_sleep()
629 spin_lock(&rtlpriv->locks.rf_ps_lock); in rtl_swlps_rf_sleep()
630 if (rtlpriv->psc.rfchange_inprogress) { in rtl_swlps_rf_sleep()
631 spin_unlock(&rtlpriv->locks.rf_ps_lock); in rtl_swlps_rf_sleep()
634 spin_unlock(&rtlpriv->locks.rf_ps_lock); in rtl_swlps_rf_sleep()
636 spin_lock_irqsave(&rtlpriv->locks.lps_lock, flag); in rtl_swlps_rf_sleep()
638 spin_unlock_irqrestore(&rtlpriv->locks.lps_lock, flag); in rtl_swlps_rf_sleep()
642 rtlpriv->intf_ops->enable_aspm(hw); in rtl_swlps_rf_sleep()
652 if (rtlpriv->psc.dtim_counter == 0) { in rtl_swlps_rf_sleep()
658 sleep_intv = rtlpriv->psc.dtim_counter; in rtl_swlps_rf_sleep()
667 RT_TRACE(rtlpriv, COMP_POWER, DBG_DMESG, in rtl_swlps_rf_sleep()
669 rtlpriv->psc.dtim_counter, sleep_intv); in rtl_swlps_rf_sleep()
672 queue_delayed_work(rtlpriv->works.rtl_wq, &rtlpriv->works.ps_rfon_wq, in rtl_swlps_rf_sleep()
681 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_lps_change_work_callback() local
683 if (rtlpriv->enter_ps) in rtl_lps_change_work_callback()
696 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_swlps_wq_callback() local
702 if (rtlpriv->psc.state_inap) { in rtl_swlps_wq_callback()
705 if (rtlpriv->psc.state && !ps) { in rtl_swlps_wq_callback()
706 rtlpriv->psc.sleep_ms = jiffies_to_msecs(jiffies - in rtl_swlps_wq_callback()
707 rtlpriv->psc.last_action); in rtl_swlps_wq_callback()
711 rtlpriv->psc.last_slept = jiffies; in rtl_swlps_wq_callback()
713 rtlpriv->psc.last_action = jiffies; in rtl_swlps_wq_callback()
714 rtlpriv->psc.state = ps; in rtl_swlps_wq_callback()
721 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_p2p_noa_ie() local
723 struct rtl_p2p_ps_info *p2pinfo = &(rtlpriv->psc.p2p_ps_info); in rtl_p2p_noa_ie()
758 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, in rtl_p2p_noa_ie()
766 if (rtlpriv->psc.p2p_ps_info.p2p_ps_mode == in rtl_p2p_noa_ie()
768 RT_TRACE(rtlpriv, COMP_FW, DBG_LOUD, in rtl_p2p_noa_ie()
795 if (rtlpriv->psc.fw_current_inpsmode) in rtl_p2p_noa_ie()
820 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_p2p_action_ie() local
822 struct rtl_p2p_ps_info *p2pinfo = &(rtlpriv->psc.p2p_ps_info); in rtl_p2p_action_ie()
840 RT_TRACE(rtlpriv, COMP_FW, DBG_LOUD, "action frame find P2P IE.\n"); in rtl_p2p_action_ie()
848 RT_TRACE(rtlpriv, COMP_FW, DBG_LOUD, "find NOA IE.\n"); in rtl_p2p_action_ie()
849 RT_PRINT_DATA(rtlpriv, COMP_FW, DBG_LOUD, "noa ie ", in rtl_p2p_action_ie()
852 RT_TRACE(rtlpriv, COMP_FW, DBG_LOUD, in rtl_p2p_action_ie()
860 if (rtlpriv->psc.p2p_ps_info.p2p_ps_mode == in rtl_p2p_action_ie()
887 if (rtlpriv->psc.fw_current_inpsmode) in rtl_p2p_action_ie()
905 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_p2p_ps_cmd() local
907 struct rtl_p2p_ps_info *p2pinfo = &(rtlpriv->psc.p2p_ps_info); in rtl_p2p_ps_cmd()
909 RT_TRACE(rtlpriv, COMP_FW, DBG_LOUD, " p2p state %x\n" , p2p_ps_state); in rtl_p2p_ps_cmd()
913 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_H2C_FW_P2P_PS_OFFLOAD, in rtl_p2p_ps_cmd()
923 rtlpriv->cfg->ops->set_hw_reg(hw, in rtl_p2p_ps_cmd()
937 rtlpriv->cfg->ops->set_hw_reg(hw, in rtl_p2p_ps_cmd()
942 rtlpriv->cfg->ops->set_hw_reg(hw, in rtl_p2p_ps_cmd()
953 rtlpriv->cfg->ops->set_hw_reg(hw, in rtl_p2p_ps_cmd()
961 RT_TRACE(rtlpriv, COMP_FW, DBG_LOUD, in rtl_p2p_ps_cmd()
964 RT_TRACE(rtlpriv, COMP_FW, DBG_LOUD, in rtl_p2p_ps_cmd()
972 RT_TRACE(rtlpriv, COMP_FW, DBG_LOUD, "end\n"); in rtl_p2p_ps_cmd()
977 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_p2p_info() local
990 if (!ether_addr_equal_64bits(hdr->addr3, rtlpriv->mac80211.bssid)) in rtl_p2p_info()