Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0c9a0a1d authored by Seth Forshee's avatar Seth Forshee Committed by John W. Linville
Browse files

brcmsmac: Add tracepoint for AMPDU session information

parent e3c0d8a6
Loading
Loading
Loading
Loading
+28 −0
Original line number Diff line number Diff line
@@ -156,6 +156,34 @@ TRACE_EVENT(brcms_txstatus,
		  __entry->ackphyrxsh)
);

TRACE_EVENT(brcms_ampdu_session,
	TP_PROTO(const struct device *dev, unsigned max_ampdu_len,
		 u16 max_ampdu_frames, u16 ampdu_len, u16 ampdu_frames,
		 u16 dma_len),
	TP_ARGS(dev, max_ampdu_len, max_ampdu_frames, ampdu_len, ampdu_frames,
		dma_len),
	TP_STRUCT__entry(
		__string(dev, dev_name(dev))
		__field(unsigned, max_ampdu_len)
		__field(u16, max_ampdu_frames)
		__field(u16, ampdu_len)
		__field(u16, ampdu_frames)
		__field(u16, dma_len)
	),
	TP_fast_assign(
		__assign_str(dev, dev_name(dev));
		__entry->max_ampdu_len = max_ampdu_len;
		__entry->max_ampdu_frames = max_ampdu_frames;
		__entry->ampdu_len = ampdu_len;
		__entry->ampdu_frames = ampdu_frames;
		__entry->dma_len = dma_len;
	),
	TP_printk("[%s] ampdu session max_len=%u max_frames=%u len=%u frames=%u dma_len=%u",
		  __get_str(dev), __entry->max_ampdu_len,
		  __entry->max_ampdu_frames, __entry->ampdu_len,
		  __entry->ampdu_frames, __entry->dma_len)
);

#undef TRACE_SYSTEM
#define TRACE_SYSTEM brcmsmac_msg

+8 −0
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@
#include "scb.h"
#include "ampdu.h"
#include "debug.h"
#include "brcms_trace_events.h"

/*
 * dma register field offset calculation
@@ -1311,6 +1312,13 @@ static void ampdu_finalize(struct dma_info *di)
	struct brcms_ampdu_session *session = &di->ampdu_session;
	struct sk_buff *p;

	trace_brcms_ampdu_session(&session->wlc->hw->d11core->dev,
				  session->max_ampdu_len,
				  session->max_ampdu_frames,
				  session->ampdu_len,
				  skb_queue_len(&session->skb_list),
				  session->dma_len);

	if (WARN_ON(skb_queue_empty(&session->skb_list)))
		return;