Commit 7e1e3864 authored by Ben Greear's avatar Ben Greear Committed by John W. Linville

ath9k: Improve debugfs printout for stations.

Add interface address so it can be mapped to a local
interface.  Add max-ampdu and mpdu-density.

Print out the tid->baw_size
Signed-off-by: default avatarBen Greear <greearb@candelatech.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 7b7eab6f
...@@ -253,6 +253,7 @@ struct ath_node { ...@@ -253,6 +253,7 @@ struct ath_node {
#ifdef CONFIG_ATH9K_DEBUGFS #ifdef CONFIG_ATH9K_DEBUGFS
struct list_head list; /* for sc->nodes */ struct list_head list; /* for sc->nodes */
struct ieee80211_sta *sta; /* station struct we're part of */ struct ieee80211_sta *sta; /* station struct we're part of */
struct ieee80211_vif *vif; /* interface with which we're associated */
#endif #endif
struct ath_atx_tid tid[WME_NUM_TID]; struct ath_atx_tid tid[WME_NUM_TID];
struct ath_atx_ac ac[WME_NUM_AC]; struct ath_atx_ac ac[WME_NUM_AC];
......
...@@ -708,24 +708,29 @@ static ssize_t read_file_stations(struct file *file, char __user *user_buf, ...@@ -708,24 +708,29 @@ static ssize_t read_file_stations(struct file *file, char __user *user_buf,
len += snprintf(buf + len, size - len, len += snprintf(buf + len, size - len,
"Stations:\n" "Stations:\n"
" tid: addr sched paused buf_q-empty an ac\n" " tid: addr sched paused buf_q-empty an ac baw\n"
" ac: addr sched tid_q-empty txq\n"); " ac: addr sched tid_q-empty txq\n");
spin_lock(&sc->nodes_lock); spin_lock(&sc->nodes_lock);
list_for_each_entry(an, &sc->nodes, list) { list_for_each_entry(an, &sc->nodes, list) {
unsigned short ma = an->maxampdu;
if (ma == 0)
ma = 65535; /* see ath_lookup_rate */
len += snprintf(buf + len, size - len, len += snprintf(buf + len, size - len,
"%pM\n", an->sta->addr); "iface: %pM sta: %pM max-ampdu: %hu mpdu-density: %uus\n",
an->vif->addr, an->sta->addr, ma,
(unsigned int)(an->mpdudensity));
if (len >= size) if (len >= size)
goto done; goto done;
for (q = 0; q < WME_NUM_TID; q++) { for (q = 0; q < WME_NUM_TID; q++) {
struct ath_atx_tid *tid = &(an->tid[q]); struct ath_atx_tid *tid = &(an->tid[q]);
len += snprintf(buf + len, size - len, len += snprintf(buf + len, size - len,
" tid: %p %s %s %i %p %p\n", " tid: %p %s %s %i %p %p %hu\n",
tid, tid->sched ? "sched" : "idle", tid, tid->sched ? "sched" : "idle",
tid->paused ? "paused" : "running", tid->paused ? "paused" : "running",
skb_queue_empty(&tid->buf_q), skb_queue_empty(&tid->buf_q),
tid->an, tid->ac); tid->an, tid->ac, tid->baw_size);
if (len >= size) if (len >= size)
goto done; goto done;
} }
......
...@@ -630,7 +630,8 @@ void ath_ani_calibrate(unsigned long data) ...@@ -630,7 +630,8 @@ void ath_ani_calibrate(unsigned long data)
} }
} }
static void ath_node_attach(struct ath_softc *sc, struct ieee80211_sta *sta) static void ath_node_attach(struct ath_softc *sc, struct ieee80211_sta *sta,
struct ieee80211_vif *vif)
{ {
struct ath_node *an; struct ath_node *an;
an = (struct ath_node *)sta->drv_priv; an = (struct ath_node *)sta->drv_priv;
...@@ -640,6 +641,7 @@ static void ath_node_attach(struct ath_softc *sc, struct ieee80211_sta *sta) ...@@ -640,6 +641,7 @@ static void ath_node_attach(struct ath_softc *sc, struct ieee80211_sta *sta)
list_add(&an->list, &sc->nodes); list_add(&an->list, &sc->nodes);
spin_unlock(&sc->nodes_lock); spin_unlock(&sc->nodes_lock);
an->sta = sta; an->sta = sta;
an->vif = vif;
#endif #endif
if (sc->sc_flags & SC_OP_TXAGGR) { if (sc->sc_flags & SC_OP_TXAGGR) {
ath_tx_node_init(sc, an); ath_tx_node_init(sc, an);
...@@ -1800,7 +1802,7 @@ static int ath9k_sta_add(struct ieee80211_hw *hw, ...@@ -1800,7 +1802,7 @@ static int ath9k_sta_add(struct ieee80211_hw *hw,
struct ath_node *an = (struct ath_node *) sta->drv_priv; struct ath_node *an = (struct ath_node *) sta->drv_priv;
struct ieee80211_key_conf ps_key = { }; struct ieee80211_key_conf ps_key = { };
ath_node_attach(sc, sta); ath_node_attach(sc, sta, vif);
if (vif->type != NL80211_IFTYPE_AP && if (vif->type != NL80211_IFTYPE_AP &&
vif->type != NL80211_IFTYPE_AP_VLAN) vif->type != NL80211_IFTYPE_AP_VLAN)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment