Date: Tue, 26 Apr 2016 03:24:28 +0000 (UTC) From: Adrian Chadd <adrian@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r298611 - head/sys/dev/iwm Message-ID: <201604260324.u3Q3OSbp024614@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: adrian Date: Tue Apr 26 03:24:28 2016 New Revision: 298611 URL: https://svnweb.freebsd.org/changeset/base/298611 Log: [iwm] add extra transmit setup/completion logging so I can see what's going on. I'm seeing 5GHz association work but data not work until the rate drops, so I need way more information about what's being programmed into the transmit descriptors. Tested: * 7260AC, STA mode Modified: head/sys/dev/iwm/if_iwm.c Modified: head/sys/dev/iwm/if_iwm.c ============================================================================== --- head/sys/dev/iwm/if_iwm.c Tue Apr 26 01:52:35 2016 (r298610) +++ head/sys/dev/iwm/if_iwm.c Tue Apr 26 03:24:28 2016 (r298611) @@ -2410,6 +2410,17 @@ iwm_mvm_rx_tx_cmd_single(struct iwm_soft KASSERT(tx_resp->frame_count == 1, ("too many frames")); /* Update rate control statistics. */ + IWM_DPRINTF(sc, IWM_DEBUG_XMIT, "%s: status=0x%04x, seq=%d, fc=%d, btc=%d, frts=%d, ff=%d, irate=%08x, wmt=%d\n", + __func__, + (int) le16toh(tx_resp->status.status), + (int) le16toh(tx_resp->status.sequence), + tx_resp->frame_count, + tx_resp->bt_kill_count, + tx_resp->failure_rts, + tx_resp->failure_frame, + le32toh(tx_resp->initial_rate), + (int) le16toh(tx_resp->wireless_media_time)); + if (status != IWM_TX_STATUS_SUCCESS && status != IWM_TX_STATUS_DIRECT_DONE) { ieee80211_ratectl_tx_complete(vap, ni, @@ -2802,8 +2813,12 @@ iwm_tx(struct iwm_softc *sc, struct mbuf KASSERT(data->in != NULL, ("node is NULL")); IWM_DPRINTF(sc, IWM_DEBUG_XMIT, - "sending data: qid=%d idx=%d len=%d nsegs=%d\n", - ring->qid, ring->cur, totlen, nsegs); + "sending data: qid=%d idx=%d len=%d nsegs=%d txflags=0x%08x rate_n_flags=0x%08x rateidx=%d\n", + ring->qid, ring->cur, totlen, nsegs, + le32toh(tx->tx_flags), + le32toh(tx->rate_n_flags), + (int) tx->initial_rate_index + ); /* Fill TX descriptor. */ desc->num_tbs = 2 + nsegs;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201604260324.u3Q3OSbp024614>