sync bes2600/ to v7.0-danctnix1 baseline (rebasing reference)

This commit is contained in:
2026-05-19 09:04:33 +02:00
parent fe73571183
commit e0d752aae9
15 changed files with 1410 additions and 43 deletions
+10 -3
View File
@@ -22,6 +22,7 @@
#include "debug.h"
#include "epta_coex.h"
#include "bes_chardev.h"
#include "txrx_opt.h"
#include "sta.h"
#include "bes_log.h"
@@ -1259,6 +1260,8 @@ int bes2600_bh_sw_process(struct bes2600_common *hw_priv,
delta_time = jiffies + ((unsigned long)0xffffffff - timestamp);
else
delta_time = jiffies - timestamp;
bes2600_add_tx_delta_time(delta_time);
bes2600_add_tx_ac_delta_time(queue_id, delta_time);
if (bes2600_need_retry_type(skb, tx_confirm->status) == 0)
return -1;
@@ -1267,8 +1270,12 @@ int bes2600_bh_sw_process(struct bes2600_common *hw_priv,
return -1;
if (txpriv->retry_count < CW1200_MAX_SW_RETRY_CNT ) {
struct bes2600_vif *priv =
__cw12xx_hwpriv_to_vifpriv(hw_priv, txpriv->if_id);
txpriv->retry_count++;
bes2600_tx_status(priv,skb);
bes2600_pwr_set_busy_event_with_timeout_async(
hw_priv, BES_PWR_LOCK_ON_TX, BES_PWR_EVENT_TX_TIMEOUT);
@@ -1304,14 +1311,14 @@ void bes2600_bh_dec_pending_count(struct bes2600_common *hw_priv, int idx)
}
if (--hw_priv->wsm_tx_pending[idx] == 0)
del_timer_sync(timer);
timer_delete_sync(timer);
else
mod_timer(timer, jiffies + 3 * HZ);
}
void bes2600_bh_mcu_active_monitor(struct timer_list* t)
{
struct bes2600_common *hw_priv = from_timer(hw_priv, t, mcu_mon_timer);
struct bes2600_common *hw_priv = timer_container_of(hw_priv, t, mcu_mon_timer);
bes_err("link break between mcu and host, hw_buf_used:%d pending:%d\n",
hw_priv->hw_bufs_used, hw_priv->wsm_tx_pending[1]);
@@ -1320,7 +1327,7 @@ void bes2600_bh_mcu_active_monitor(struct timer_list* t)
void bes2600_bh_lmac_active_monitor(struct timer_list* t)
{
struct bes2600_common *hw_priv = from_timer(hw_priv, t, lmac_mon_timer);
struct bes2600_common *hw_priv = timer_container_of(hw_priv, t, lmac_mon_timer);
bes_err("link break between lmac and host, hw_buf_used:%d pending:%d\n",
hw_priv->hw_bufs_used, hw_priv->wsm_tx_pending[0]);