summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authoradrian <adrian@FreeBSD.org>2013-05-05 09:38:02 +0000
committeradrian <adrian@FreeBSD.org>2013-05-05 09:38:02 +0000
commitb39866a58247217436763acd68e49cd81594d017 (patch)
treeb2c6689dcd8ff7fd4a1ecdcaffcb3e90fe715e92 /tools
parentf6095fb25a03adbe42501dd5a42c59fd3d6992ba (diff)
downloadFreeBSD-src-b39866a58247217436763acd68e49cd81594d017.zip
FreeBSD-src-b39866a58247217436763acd68e49cd81594d017.tar.gz
This is a simple script to output the delta between each TX and TXSTATUS.
Useful for debugging TDMA.
Diffstat (limited to 'tools')
-rwxr-xr-xtools/tools/ath/athalq/txdiff.pl34
1 files changed, 34 insertions, 0 deletions
diff --git a/tools/tools/ath/athalq/txdiff.pl b/tools/tools/ath/athalq/txdiff.pl
new file mode 100755
index 0000000..dff9405
--- /dev/null
+++ b/tools/tools/ath/athalq/txdiff.pl
@@ -0,0 +1,34 @@
+#!/usr/bin/perl -w
+
+use strict;
+
+# $FreeBSD$
+
+# [1360537229.753890] [100494] TXD
+# [1360537229.754292] [100494] TXSTATUS: TxDone=1, TS=0x5ccfa5c7
+
+my ($tv_sec) = 0;
+my ($tv_usec) = 0;
+
+sub tvdiff($$$$) {
+ my ($tv1_sec, $tv1_usec, $tv2_sec, $tv2_usec) = @_;
+
+ if ($tv2_usec < $tv1_usec) {
+ $tv2_usec += 1000000;
+ $tv1_sec = $tv1_sec + 1;
+ }
+
+ return ($tv2_sec - $tv1_sec) * 1000000 + ($tv2_usec - $tv1_usec);
+}
+
+while (<>) {
+ chomp;
+ m/^\[(.*?)\.(.*?)\]/ || next;
+ printf "%d\t| %s\n", tvdiff($tv_sec, $tv_usec, $1, $2), $_;
+# if (tvdiff($tv_sec, $tv_usec, $1, $2) > 500) {
+# printf "%d\t| %s\n", tvdiff($tv_sec, $tv_usec, $1, $2), $_;
+# }
+ $tv_sec = $1;
+ $tv_usec = $2;
+}
+
OpenPOWER on IntegriCloud