qcacmn: Support HW Tx delay for MLO
Add delta_tqm, delta_tsf2 and mlo timestamp offset for BE. These offsets are used to calculate hardware Tx completion delay. delta_tsf2 and delta_tqm are updated during init. mlo timestamp offset is updated whenever target sends the update event. Also, adding CDP ops to set the offsets. Change-Id: I55665982798c3a795481fa96c023bb851ea17476 CRs-Fixed: 3220906
This commit is contained in:

committed by
Madan Koyyalamudi

szülő
460260d38a
commit
b8fadd7061
@@ -2943,6 +2943,21 @@ dp_offload_ind_handler(struct htt_soc *soc, uint32_t *msg_word)
|
||||
#endif
|
||||
|
||||
#ifdef WLAN_FEATURE_11BE_MLO
|
||||
#ifdef WLAN_MLO_MULTI_CHIP
|
||||
static inline void dp_update_mlo_ts_offset(struct dp_soc *soc,
|
||||
uint32_t ts_lo, uint32_t ts_hi)
|
||||
{
|
||||
uint64_t mlo_offset;
|
||||
|
||||
mlo_offset = ((uint64_t)(ts_hi) << 32 | ts_lo);
|
||||
soc->cdp_soc.ops->mlo_ops->mlo_update_mlo_ts_offset
|
||||
((struct cdp_soc_t *)soc, mlo_offset);
|
||||
}
|
||||
#else
|
||||
static inline void dp_update_mlo_ts_offset(struct dp_soc *soc,
|
||||
uint32_t ts_lo, uint32_t ts_hi)
|
||||
{}
|
||||
#endif
|
||||
static void dp_htt_mlo_peer_map_handler(struct htt_soc *soc,
|
||||
uint32_t *msg_word)
|
||||
{
|
||||
@@ -3097,6 +3112,10 @@ dp_rx_mlo_timestamp_ind_handler(struct dp_soc *soc,
|
||||
pdev->timestamp.mlo_offset_hi_us);
|
||||
|
||||
qdf_spin_unlock_bh(&soc->htt_stats.lock);
|
||||
|
||||
dp_update_mlo_ts_offset(soc,
|
||||
pdev->timestamp.mlo_offset_lo_us,
|
||||
pdev->timestamp.mlo_offset_hi_us);
|
||||
}
|
||||
#else
|
||||
static void dp_htt_mlo_peer_map_handler(struct htt_soc *soc,
|
||||
|
Reference in New Issue
Block a user