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

Commit 67c3e1b4 authored by Vladimir Kondratiev's avatar Vladimir Kondratiev Committed by John W. Linville
Browse files

wil6210: more debug info for vring



print used/available counters on debugfs;
print to dmesg when Tx vring becomes empty

This aids with performance investigation

Signed-off-by: default avatarVladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 8eea944a
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -72,11 +72,16 @@ static int wil_vring_debugfs_show(struct seq_file *s, void *data)
		if (vring->va) {
			int cid = wil->vring2cid_tid[i][0];
			int tid = wil->vring2cid_tid[i][1];
			u32 swhead = vring->swhead;
			u32 swtail = vring->swtail;
			int used = (vring->size + swhead - swtail)
				   % vring->size;
			int avail = vring->size - used - 1;
			char name[10];
			snprintf(name, sizeof(name), "tx_%2d", i);

			seq_printf(s, "\n%pM CID %d TID %d\n",
				   wil->sta[cid].addr, cid, tid);
			seq_printf(s, "\n%pM CID %d TID %d [%3d|%3d]\n",
				   wil->sta[cid].addr, cid, tid, used, avail);
			wil_print_vring(s, wil, name, vring, '_', 'H');
		}
	}
+4 −0
Original line number Diff line number Diff line
@@ -1132,6 +1132,10 @@ int wil_tx_complete(struct wil6210_priv *wil, int ringid)
			done++;
		}
	}

	if (wil_vring_is_empty(vring))
		wil_dbg_txrx(wil, "Ring[%2d] empty\n", ringid);

	if (wil_vring_avail_tx(vring) > wil_vring_wmark_high(vring))
		netif_tx_wake_all_queues(wil_to_ndev(wil));