mac.c (cbb145b98b63e1c479e2e23d3bc1f15bfe0e2b3a) mac.c (bb8152b386c36a3fe742a50b782da502f03b98cb)
1// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
2/* Copyright(c) 2019-2020 Realtek Corporation
3 */
4
5#include "cam.h"
6#include "chan.h"
7#include "debug.h"
8#include "fw.h"

--- 3641 unchanged lines hidden (view full) ---

3650 return band == scan_info->op_band && channel == scan_info->op_pri_ch;
3651}
3652
3653static void
3654rtw89_mac_c2h_scanofld_rsp(struct rtw89_dev *rtwdev, struct sk_buff *c2h,
3655 u32 len)
3656{
3657 struct ieee80211_vif *vif = rtwdev->scan_info.scanning_vif;
1// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
2/* Copyright(c) 2019-2020 Realtek Corporation
3 */
4
5#include "cam.h"
6#include "chan.h"
7#include "debug.h"
8#include "fw.h"

--- 3641 unchanged lines hidden (view full) ---

3650 return band == scan_info->op_band && channel == scan_info->op_pri_ch;
3651}
3652
3653static void
3654rtw89_mac_c2h_scanofld_rsp(struct rtw89_dev *rtwdev, struct sk_buff *c2h,
3655 u32 len)
3656{
3657 struct ieee80211_vif *vif = rtwdev->scan_info.scanning_vif;
3658 const struct rtw89_chan *cur = rtw89_chan_get(rtwdev, RTW89_SUB_ENTITY_0);
3659 struct rtw89_chan new;
3660 u8 reason, status, tx_fail, band;
3661 u16 chan;
3662
3663 tx_fail = RTW89_GET_MAC_C2H_SCANOFLD_TX_FAIL(c2h->data);
3664 status = RTW89_GET_MAC_C2H_SCANOFLD_STATUS(c2h->data);
3665 chan = RTW89_GET_MAC_C2H_SCANOFLD_PRI_CH(c2h->data);
3666 reason = RTW89_GET_MAC_C2H_SCANOFLD_RSP(c2h->data);

--- 10 unchanged lines hidden (view full) ---

3677 case RTW89_SCAN_LEAVE_CH_NOTIFY:
3678 if (rtw89_is_op_chan(rtwdev, band, chan))
3679 ieee80211_stop_queues(rtwdev->hw);
3680 return;
3681 case RTW89_SCAN_END_SCAN_NOTIFY:
3682 rtw89_hw_scan_complete(rtwdev, vif, false);
3683 break;
3684 case RTW89_SCAN_ENTER_CH_NOTIFY:
3658 struct rtw89_chan new;
3659 u8 reason, status, tx_fail, band;
3660 u16 chan;
3661
3662 tx_fail = RTW89_GET_MAC_C2H_SCANOFLD_TX_FAIL(c2h->data);
3663 status = RTW89_GET_MAC_C2H_SCANOFLD_STATUS(c2h->data);
3664 chan = RTW89_GET_MAC_C2H_SCANOFLD_PRI_CH(c2h->data);
3665 reason = RTW89_GET_MAC_C2H_SCANOFLD_RSP(c2h->data);

--- 10 unchanged lines hidden (view full) ---

3676 case RTW89_SCAN_LEAVE_CH_NOTIFY:
3677 if (rtw89_is_op_chan(rtwdev, band, chan))
3678 ieee80211_stop_queues(rtwdev->hw);
3679 return;
3680 case RTW89_SCAN_END_SCAN_NOTIFY:
3681 rtw89_hw_scan_complete(rtwdev, vif, false);
3682 break;
3683 case RTW89_SCAN_ENTER_CH_NOTIFY:
3685 new = *cur;
3686 new.channel = chan;
3687 new.primary_channel = chan;
3688 new.band_type = band;
3689 new.band_width = RTW89_CHANNEL_WIDTH_20;
3684 rtw89_chan_create(&new, chan, chan, band, RTW89_CHANNEL_WIDTH_20);
3690 rtw89_assign_entity_chan(rtwdev, RTW89_SUB_ENTITY_0, &new);
3691 if (rtw89_is_op_chan(rtwdev, band, chan)) {
3692 rtw89_store_op_chan(rtwdev, false);
3693 ieee80211_wake_queues(rtwdev->hw);
3694 }
3695 break;
3696 default:
3697 return;

--- 934 unchanged lines hidden ---
3685 rtw89_assign_entity_chan(rtwdev, RTW89_SUB_ENTITY_0, &new);
3686 if (rtw89_is_op_chan(rtwdev, band, chan)) {
3687 rtw89_store_op_chan(rtwdev, false);
3688 ieee80211_wake_queues(rtwdev->hw);
3689 }
3690 break;
3691 default:
3692 return;

--- 934 unchanged lines hidden ---