rtw89: extend mac tx_en bits from 16 to 32
authorPing-Ke Shih <pkshih@realtek.com>
Thu, 17 Mar 2022 05:55:42 +0000 (13:55 +0800)
committerKalle Valo <kvalo@kernel.org>
Thu, 17 Mar 2022 14:21:41 +0000 (16:21 +0200)
In order to support 8852C that uses 32 bits to control TX types.

This patch doesn't really use 32 bits tx_en yet, but next patch will
use it.

Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20220317055543.40514-12-pkshih@realtek.com
drivers/net/wireless/realtek/rtw89/core.h
drivers/net/wireless/realtek/rtw89/mac.c
drivers/net/wireless/realtek/rtw89/mac.h
drivers/net/wireless/realtek/rtw89/rtw8852a_rfk.c

index 08416f0..0ffb163 100644 (file)
@@ -609,7 +609,7 @@ struct rtw89_channel_params {
 };
 
 struct rtw89_channel_help_params {
-       u16 tx_en;
+       u32 tx_en;
 };
 
 struct rtw89_port_reg {
index dd53841..2b50727 100644 (file)
@@ -2247,7 +2247,7 @@ static int rtw89_set_hw_sch_tx_en(struct rtw89_dev *rtwdev, u8 mac_idx,
 }
 
 int rtw89_mac_stop_sch_tx(struct rtw89_dev *rtwdev, u8 mac_idx,
-                         u16 *tx_en, enum rtw89_sch_tx_sel sel)
+                         u32 *tx_en, enum rtw89_sch_tx_sel sel)
 {
        int ret;
 
@@ -2285,7 +2285,7 @@ int rtw89_mac_stop_sch_tx(struct rtw89_dev *rtwdev, u8 mac_idx,
 }
 EXPORT_SYMBOL(rtw89_mac_stop_sch_tx);
 
-int rtw89_mac_resume_sch_tx(struct rtw89_dev *rtwdev, u8 mac_idx, u16 tx_en)
+int rtw89_mac_resume_sch_tx(struct rtw89_dev *rtwdev, u8 mac_idx, u32 tx_en)
 {
        int ret;
 
@@ -2459,7 +2459,7 @@ static int band1_enable(struct rtw89_dev *rtwdev)
        int ret, i;
        u32 sleep_bak[4] = {0};
        u32 pause_bak[4] = {0};
-       u16 tx_en;
+       u32 tx_en;
 
        ret = rtw89_mac_stop_sch_tx(rtwdev, 0, &tx_en, RTW89_SCH_TX_SEL_ALL);
        if (ret) {
index 0fb09d6..07a8c7c 100644 (file)
@@ -791,8 +791,8 @@ void rtw89_mac_c2h_handle(struct rtw89_dev *rtwdev, struct sk_buff *skb,
                          u32 len, u8 class, u8 func);
 int rtw89_mac_setup_phycap(struct rtw89_dev *rtwdev);
 int rtw89_mac_stop_sch_tx(struct rtw89_dev *rtwdev, u8 mac_idx,
-                         u16 *tx_en, enum rtw89_sch_tx_sel sel);
-int rtw89_mac_resume_sch_tx(struct rtw89_dev *rtwdev, u8 mac_idx, u16 tx_en);
+                         u32 *tx_en, enum rtw89_sch_tx_sel sel);
+int rtw89_mac_resume_sch_tx(struct rtw89_dev *rtwdev, u8 mac_idx, u32 tx_en);
 int rtw89_mac_cfg_ppdu_status(struct rtw89_dev *rtwdev, u8 mac_ids, bool enable);
 void rtw89_mac_update_rts_threshold(struct rtw89_dev *rtwdev, u8 mac_idx);
 void rtw89_mac_flush_txq(struct rtw89_dev *rtwdev, u32 queues, bool drop);
index acdad5a..4b29dc9 100644 (file)
@@ -3526,7 +3526,7 @@ static void _tssi_pre_tx(struct rtw89_dev *rtwdev, enum rtw89_phy_idx phy)
        const struct rtw89_chip_info *mac_reg = rtwdev->chip;
        u8 ch = rtwdev->hal.current_channel, ch_tmp;
        u8 bw = rtwdev->hal.current_band_width;
-       u16 tx_en;
+       u32 tx_en;
        u8 phy_map = rtw89_btc_phymap(rtwdev, phy, 0);
        s8 power;
        s16 xdbm;
@@ -3623,7 +3623,7 @@ void rtw8852a_dack(struct rtw89_dev *rtwdev)
 
 void rtw8852a_iqk(struct rtw89_dev *rtwdev, enum rtw89_phy_idx phy_idx)
 {
-       u16 tx_en;
+       u32 tx_en;
        u8 phy_map = rtw89_btc_phymap(rtwdev, phy_idx, 0);
 
        rtw89_btc_ntfy_wl_rfk(rtwdev, phy_map, BTC_WRFKT_IQK, BTC_WRFK_START);
@@ -3648,7 +3648,7 @@ void rtw8852a_iqk_track(struct rtw89_dev *rtwdev)
 void rtw8852a_rx_dck(struct rtw89_dev *rtwdev, enum rtw89_phy_idx phy_idx,
                     bool is_afe)
 {
-       u16 tx_en;
+       u32 tx_en;
        u8 phy_map = rtw89_btc_phymap(rtwdev, phy_idx, 0);
 
        rtw89_btc_ntfy_wl_rfk(rtwdev, phy_map, BTC_WRFKT_RXDCK, BTC_WRFK_START);
@@ -3663,7 +3663,7 @@ void rtw8852a_rx_dck(struct rtw89_dev *rtwdev, enum rtw89_phy_idx phy_idx,
 
 void rtw8852a_dpk(struct rtw89_dev *rtwdev, enum rtw89_phy_idx phy_idx)
 {
-       u16 tx_en;
+       u32 tx_en;
        u8 phy_map = rtw89_btc_phymap(rtwdev, phy_idx, 0);
 
        rtw89_btc_ntfy_wl_rfk(rtwdev, phy_map, BTC_WRFKT_DPK, BTC_WRFK_START);