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

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

brcmsmac: Add tracepoint for macintstatus

parent cdf4352f
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -85,6 +85,26 @@ TRACE_EVENT(brcms_dpc,
	)
);

TRACE_EVENT(brcms_macintstatus,
	TP_PROTO(const struct device *dev, int in_isr, u32 macintstatus,
		 u32 mask),
	TP_ARGS(dev, in_isr, macintstatus, mask),
	TP_STRUCT__entry(
		__string(dev, dev_name(dev))
		__field(int, in_isr)
		__field(u32, macintstatus)
		__field(u32, mask)
	),
	TP_fast_assign(
		__assign_str(dev, dev_name(dev));
		__entry->in_isr = in_isr;
		__entry->macintstatus = macintstatus;
		__entry->mask = mask;
	),
	TP_printk("[%s] in_isr=%d macintstatus=%#x mask=%#x", __get_str(dev),
		  __entry->in_isr, __entry->macintstatus, __entry->mask)
);

#undef TRACE_SYSTEM
#define TRACE_SYSTEM brcmsmac_tx

+4 −4
Original line number Diff line number Diff line
@@ -2552,13 +2552,13 @@ static inline u32 wlc_intstatus(struct brcms_c_info *wlc, bool in_isr)
{
	struct brcms_hardware *wlc_hw = wlc->hw;
	struct bcma_device *core = wlc_hw->d11core;
	u32 macintstatus;
	u32 macintstatus, mask;

	/* macintstatus includes a DMA interrupt summary bit */
	macintstatus = bcma_read32(core, D11REGOFFS(macintstatus));
	mask = in_isr ? wlc->macintmask : wlc->defmacintmask;

	brcms_dbg_int(core, "wl%d: macintstatus: 0x%x\n", wlc_hw->unit,
		      macintstatus);
	trace_brcms_macintstatus(&core->dev, in_isr, macintstatus, mask);

	/* detect cardbus removed, in power down(suspend) and in reset */
	if (brcms_deviceremoved(wlc))
@@ -2571,7 +2571,7 @@ static inline u32 wlc_intstatus(struct brcms_c_info *wlc, bool in_isr)
		return 0;

	/* defer unsolicited interrupts */
	macintstatus &= (in_isr ? wlc->macintmask : wlc->defmacintmask);
	macintstatus &= mask;

	/* if not for us */
	if (macintstatus == 0)