[PATCH] mt76: report Rx timestamp

Felix Fietkau nbd at nbd.name
Sat Mar 27 19:28:20 GMT 2021


On 2021-03-27 08:55, Ryder Lee wrote:
> Frame reception timestamp (low 32-bits) that indicates the value of the
> local TSF timer value at the time the first bit of the MAC header in the
> received frame (PPDU unit) arriving at the MAC.
> 
> Signed-off-by: Ryder Lee <ryder.lee at mediatek.com>
> ---
>  drivers/net/wireless/mediatek/mt76/agg-rx.c   |  2 +-
>  drivers/net/wireless/mediatek/mt76/mac80211.c |  1 +
>  drivers/net/wireless/mediatek/mt76/mt76.h     |  3 +-
>  .../net/wireless/mediatek/mt76/mt7603/mac.c   | 31 ++++++++++--------
>  .../wireless/mediatek/mt76/mt7603/mt7603.h    |  2 +-
>  .../net/wireless/mediatek/mt76/mt7615/mac.c   | 32 ++++++++++---------
>  .../wireless/mediatek/mt76/mt7615/mt7615.h    |  2 +-
>  .../net/wireless/mediatek/mt76/mt7915/mac.c   | 29 +++++++++--------
>  .../wireless/mediatek/mt76/mt7915/mt7915.h    |  2 +-
>  .../net/wireless/mediatek/mt76/mt7921/mac.c   | 29 +++++++++--------
>  .../wireless/mediatek/mt76/mt7921/mt7921.h    |  2 +-
>  11 files changed, 74 insertions(+), 61 deletions(-)
> 
> diff --git a/drivers/net/wireless/mediatek/mt76/agg-rx.c b/drivers/net/wireless/mediatek/mt76/agg-rx.c
> index 144e8a8910ba..a37b8db979c6 100644
> --- a/drivers/net/wireless/mediatek/mt76/agg-rx.c
> +++ b/drivers/net/wireless/mediatek/mt76/agg-rx.c
> @@ -77,7 +77,7 @@ mt76_rx_aggr_check_release(struct mt76_rx_tid *tid, struct sk_buff_head *frames)
>  		nframes--;
>  		status = (struct mt76_rx_status *)skb->cb;
>  		if (!time_after(jiffies,
> -				status->reorder_time +
> +				(unsigned long)status->reorder_time +
>  				mt76_aggr_tid_to_timeo(tid->num)))
>  			continue;
This doesn't work, you need to replace the time_after with a function
that takes u32 wraparound into account.

- Felix



More information about the Linux-mediatek mailing list