OSDN Git Service

rtlwifi: 8821a: btcoexist: add comments to explain why if-else branches are identical
authorPing-Ke Shih <pkshih@realtek.com>
Thu, 6 May 2021 01:37:38 +0000 (09:37 +0800)
committerKalle Valo <kvalo@codeaurora.org>
Tue, 15 Jun 2021 13:36:44 +0000 (16:36 +0300)
The coexistence programmers preserve the same code of branches
intentionally to fine tune performance easier, because bandwidth and RSSI
strength are highly related to coexistence performance. The basic rule of
performance tuning is to assign most time slot to BT for realtime
application, and WiFi uses remaining time slot but don't lower than low
bound.

Reported-by: Inigo Huguet <ihuguet@redhat.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/20210506013738.5943-1-pkshih@realtek.com
drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8821a2ant.c

index 447caa4..b998a0e 100644 (file)
@@ -2810,6 +2810,7 @@ static void btc8821a2ant_action_a2dp(struct btc_coexist *btcoexist)
                                              0x4);
        }
 
+       /* preserve identical branches for further fine-tuning */
        if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) ||
            (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) {
                btc8821a2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 23);
@@ -2944,6 +2945,7 @@ static void btc8821a2ant_action_pan_edr(struct btc_coexist *btcoexist)
                                              0x4);
        }
 
+       /* preserve identical branches for further fine-tuning */
        if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) ||
            (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH))
                btc8821a2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 26);
@@ -3132,6 +3134,7 @@ static void btc8821a2ant_action_pan_edr_hid(struct btc_coexist *btcoexist)
 
        btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw);
 
+       /* preserve identical branches for further fine-tuning */
        if (wifi_bw == BTC_WIFI_BW_LEGACY) {
                /* for HID at 11b/g mode */
                btc8821a2ant_coex_table(btcoexist, NORMAL_EXEC, 0x55ff55ff,
@@ -3321,6 +3324,7 @@ static void btc8821a2ant_action_hid_a2dp(struct btc_coexist *btcoexist)
                                              0x4);
        }
 
+       /* preserve identical branches for further fine-tuning */
        if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) ||
            (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) {
                btc8821a2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 23);