struct rtw89_btc_dm *dm = &btc->dm;
        struct rtw89_btc_wl_info *wl = &btc->cx.wl;
        struct rtw89_btc_bt_info *bt = &btc->cx.bt;
+       struct rtw89_btc_bt_link_info *b = &bt->link_info;
        struct rtw89_btc_rf_trx_para para;
        u32 wl_stb_chg = 0;
        u8 level_id = 0;
 
        if (!dm->freerun) {
-               dm->trx_para_level = 0;
-               chip->ops->btc_bt_aci_imp(rtwdev);
+               /* fix LNA2 = level-5 for BT ACI issue at BTG */
+               if ((btc->dm.wl_btg_rx && b->profile_cnt.now != 0) ||
+                   dm->bt_only == 1)
+                       dm->trx_para_level = 1;
+               else
+                       dm->trx_para_level = 0;
        }
 
        level_id = (u8)dm->trx_para_level;
 
        void (*btc_set_wl_pri)(struct rtw89_dev *rtwdev, u8 map, bool state);
        void (*btc_set_wl_txpwr_ctrl)(struct rtw89_dev *rtwdev, u32 txpwr_val);
        s8 (*btc_get_bt_rssi)(struct rtw89_dev *rtwdev, s8 val);
-       void (*btc_bt_aci_imp)(struct rtw89_dev *rtwdev);
        void (*btc_update_bt_cnt)(struct rtw89_dev *rtwdev);
        void (*btc_wl_s1_standby)(struct rtw89_dev *rtwdev, bool state);
        void (*btc_set_policy)(struct rtw89_dev *rtwdev, u16 policy_type);
 
        RTW89_DEF_FBTC_MREG(REG_BT_MODEM, 4, 0x178),
 };
 
-static
-void rtw8852a_btc_bt_aci_imp(struct rtw89_dev *rtwdev)
-{
-       struct rtw89_btc *btc = &rtwdev->btc;
-       struct rtw89_btc_dm *dm = &btc->dm;
-       struct rtw89_btc_bt_info *bt = &btc->cx.bt;
-       struct rtw89_btc_bt_link_info *b = &bt->link_info;
-
-       /* fix LNA2 = level-5 for BT ACI issue at BTG */
-       if (btc->dm.wl_btg_rx && b->profile_cnt.now != 0)
-               dm->trx_para_level = 1;
-}
-
 static
 void rtw8852a_btc_update_bt_cnt(struct rtw89_dev *rtwdev)
 {
        .btc_set_wl_pri         = rtw8852a_btc_set_wl_pri,
        .btc_set_wl_txpwr_ctrl  = rtw8852a_btc_set_wl_txpwr_ctrl,
        .btc_get_bt_rssi        = rtw8852a_btc_get_bt_rssi,
-       .btc_bt_aci_imp         = rtw8852a_btc_bt_aci_imp,
        .btc_update_bt_cnt      = rtw8852a_btc_update_bt_cnt,
        .btc_wl_s1_standby      = rtw8852a_btc_wl_s1_standby,
        .btc_set_wl_rx_gain     = rtw8852a_btc_set_wl_rx_gain,
 
        RTW89_DEF_FBTC_MREG(REG_BB, 4, 0x980),
 };
 
-static
-void rtw8852c_btc_bt_aci_imp(struct rtw89_dev *rtwdev)
-{
-       struct rtw89_btc *btc = &rtwdev->btc;
-       struct rtw89_btc_dm *dm = &btc->dm;
-       struct rtw89_btc_bt_info *bt = &btc->cx.bt;
-       struct rtw89_btc_bt_link_info *b = &bt->link_info;
-
-       /* fix LNA2 = level-5 for BT ACI issue at BTG */
-       if (btc->dm.wl_btg_rx && b->profile_cnt.now != 0)
-               dm->trx_para_level = 1;
-}
-
 static
 void rtw8852c_btc_update_bt_cnt(struct rtw89_dev *rtwdev)
 {
        .btc_set_wl_pri         = rtw8852c_btc_set_wl_pri,
        .btc_set_wl_txpwr_ctrl  = rtw8852c_btc_set_wl_txpwr_ctrl,
        .btc_get_bt_rssi        = rtw8852c_btc_get_bt_rssi,
-       .btc_bt_aci_imp         = rtw8852c_btc_bt_aci_imp,
        .btc_update_bt_cnt      = rtw8852c_btc_update_bt_cnt,
        .btc_wl_s1_standby      = rtw8852c_btc_wl_s1_standby,
        .btc_set_wl_rx_gain     = rtw8852c_btc_set_wl_rx_gain,