From 02ababff437b5a656d8565a8eee25b532755dee6 Mon Sep 17 00:00:00 2001 From: nbd Date: Thu, 26 Mar 2009 20:56:58 +0000 Subject: implement support for wprobe in madwifi git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15051 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/madwifi/extra/wprobe.spatch | 84 +++++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 package/madwifi/extra/wprobe.spatch (limited to 'package/madwifi/extra') diff --git a/package/madwifi/extra/wprobe.spatch b/package/madwifi/extra/wprobe.spatch new file mode 100644 index 0000000000..78718aa54c --- /dev/null +++ b/package/madwifi/extra/wprobe.spatch @@ -0,0 +1,84 @@ +@@ +@@ + #include "if_athioctl.h" ++#include "wprobe.h" + +@@ +@@ + struct ath_vap { + ... ++ struct wprobe_iface av_wpif; + }; + +@@ +@@ + struct ath_node { + ... ++ struct wprobe_link an_wplink; ++ uint8_t an_wplink_active; ++ struct work_struct an_destroy; + u_int16_t an_decomp_index; + ... + }; + +@@ +@@ + ath_vap_create(...) { + <... ++ ath_init_wprobe_dev(avp); + return vap; + ...> + } + +@ rule5 @ +expression vap; +@@ + ath_vap_delete(...) { + <... + ieee80211_vap_detach(vap); ++ ath_remove_wprobe_dev(ATH_VAP(vap)); + ...> + } + +@ rule6 @ +@@ + static int xchanmode = -1; ++ ++#include "ath_wprobe.c" + + +@ rule7 @ +expression sc, ni; +@@ + <... + sc->sc_rc->ops->newassoc(sc, ATH_NODE(ni), isnew); ++ ath_wprobe_node_join(ni->ni_vap, ni); + ...> + +@ rule8 @ +expression ni; +expression sc; +@@ + <... + sc->sc_rc->ops->node_cleanup(sc, ATH_NODE(ni)); ++ ath_wprobe_node_leave(ni->ni_vap, ni); + ...> + +@ rule9 @ +expression ni; +expression rs; +@@ + <... + ATH_RSSI_LPF(ATH_NODE(ni)->an_avgrssi, rs->rs_rssi); ++ ath_node_sample_rx(ni, rs); + ...> + +@ rule10 @ +expression an; +expression ts; +@@ + <... + ATH_RSSI_LPF(an->an_halstats.ns_avgtxrssi, ts->ts_rssi); ++ ath_node_sample_tx(&an->an_node, ts, bf->bf_skb->len); + ...> + -- cgit v1.2.3