diff options
Diffstat (limited to 'drivers/staging/brcm80211/include/wlioctl.h')
-rw-r--r-- | drivers/staging/brcm80211/include/wlioctl.h | 349 |
1 files changed, 1 insertions, 348 deletions
diff --git a/drivers/staging/brcm80211/include/wlioctl.h b/drivers/staging/brcm80211/include/wlioctl.h index 5e2b11bcfc6f..2876bd9eff85 100644 --- a/drivers/staging/brcm80211/include/wlioctl.h +++ b/drivers/staging/brcm80211/include/wlioctl.h @@ -259,6 +259,7 @@ typedef struct wl_u32_list { /* used for association with a specific BSSID and chanspec list */ typedef struct wl_assoc_params { u8 bssid[ETH_ALEN]; /* 00:00:00:00:00:00: broadcast scan */ + u16 bssid_cnt; s32 chanspec_num; /* 0: all available channels, * otherwise count of chanspecs in chanspec_list */ @@ -585,15 +586,6 @@ struct maclist { u8 ea[1][ETH_ALEN]; /* variable length array of MAC addresses */ }; -/* get pkt count struct passed through ioctl */ -typedef struct get_pktcnt { - uint rx_good_pkt; - uint rx_bad_pkt; - uint tx_good_pkt; - uint tx_bad_pkt; - uint rx_ocast_good_pkt; /* unicast packets destined for others */ -} get_pktcnt_t; - #ifdef BRCM_FULLMAC /* Linux network driver ioctl encoding */ typedef struct wl_ioctl { @@ -1247,8 +1239,6 @@ typedef struct tx_inst_power { /* Message levels */ #define WL_ERROR_VAL 0x00000001 #define WL_TRACE_VAL 0x00000002 -#define WL_AMPDU_VAL 0x20000000 -#define WL_FFPLD_VAL 0x40000000 /* maximum channels returned by the get valid channels iovar */ #define WL_NUMCHANNELS 64 @@ -1260,348 +1250,11 @@ struct tsinfo_arg { #define NFIFO 6 /* # tx/rx fifopairs */ -#define WL_CNT_T_VERSION 7 /* current version of wl_cnt_t struct */ - -struct wl_cnt { - u16 version; /* see definition of WL_CNT_T_VERSION */ - u16 length; /* length of entire structure */ - - /* transmit stat counters */ - u32 txframe; /* tx data frames */ - u32 txbyte; /* tx data bytes */ - u32 txretrans; /* tx mac retransmits */ - u32 txerror; /* tx data errors (derived: sum of others) */ - u32 txctl; /* tx management frames */ - u32 txprshort; /* tx short preamble frames */ - u32 txserr; /* tx status errors */ - u32 txnobuf; /* tx out of buffers errors */ - u32 txnoassoc; /* tx discard because we're not associated */ - u32 txrunt; /* tx runt frames */ - u32 txchit; /* tx header cache hit (fastpath) */ - u32 txcmiss; /* tx header cache miss (slowpath) */ - u32 ieee_tx_status; /* calls to ieee80211_tx_status */ - u32 ieee_tx; /* tx calls frm mac0211 */ - u32 ieee_rx; /* calls to ieee_rx */ - - /* transmit chip error counters */ - u32 txuflo; /* tx fifo underflows */ - u32 txphyerr; /* tx phy errors (indicated in tx status) */ - u32 txphycrs; - - /* receive stat counters */ - u32 rxframe; /* rx data frames */ - u32 rxbyte; /* rx data bytes */ - u32 rxerror; /* rx data errors (derived: sum of others) */ - u32 rxctl; /* rx management frames */ - u32 rxnobuf; /* rx out of buffers errors */ - u32 rxnondata; /* rx non data frames in the data channel errors */ - u32 rxbadds; /* rx bad DS errors */ - u32 rxbadcm; /* rx bad control or management frames */ - u32 rxfragerr; /* rx fragmentation errors */ - u32 rxrunt; /* rx runt frames */ - u32 rxgiant; /* rx giant frames */ - u32 rxnoscb; /* rx no scb error */ - u32 rxbadproto; /* rx invalid frames */ - u32 rxbadsrcmac; /* rx frames with Invalid Src Mac */ - u32 rxbadda; /* rx frames tossed for invalid da */ - u32 rxfilter; /* rx frames filtered out */ - - /* receive chip error counters */ - u32 rxoflo; /* rx fifo overflow errors */ - u32 rxuflo[NFIFO]; /* rx dma descriptor underflow errors */ - - u32 d11cnt_txrts_off; /* d11cnt txrts value when reset d11cnt */ - u32 d11cnt_rxcrc_off; /* d11cnt rxcrc value when reset d11cnt */ - u32 d11cnt_txnocts_off; /* d11cnt txnocts value when reset d11cnt */ - - /* misc counters */ - u32 dmade; /* tx/rx dma descriptor errors */ - u32 dmada; /* tx/rx dma data errors */ - u32 dmape; /* tx/rx dma descriptor protocol errors */ - u32 reset; /* reset count */ - u32 tbtt; /* cnts the TBTT int's */ - u32 txdmawar; - u32 pkt_callback_reg_fail; /* callbacks register failure */ - - /* MAC counters: 32-bit version of d11.h's macstat_t */ - u32 txallfrm; /* total number of frames sent, incl. Data, ACK, RTS, CTS, - * Control Management (includes retransmissions) - */ - u32 txrtsfrm; /* number of RTS sent out by the MAC */ - u32 txctsfrm; /* number of CTS sent out by the MAC */ - u32 txackfrm; /* number of ACK frames sent out */ - u32 txdnlfrm; /* Not used */ - u32 txbcnfrm; /* beacons transmitted */ - u32 txfunfl[8]; /* per-fifo tx underflows */ - u32 txtplunfl; /* Template underflows (mac was too slow to transmit ACK/CTS - * or BCN) - */ - u32 txphyerror; /* Transmit phy error, type of error is reported in tx-status for - * driver enqueued frames - */ - u32 rxfrmtoolong; /* Received frame longer than legal limit (2346 bytes) */ - u32 rxfrmtooshrt; /* Received frame did not contain enough bytes for its frame type */ - u32 rxinvmachdr; /* Either the protocol version != 0 or frame type not - * data/control/management - */ - u32 rxbadfcs; /* number of frames for which the CRC check failed in the MAC */ - u32 rxbadplcp; /* parity check of the PLCP header failed */ - u32 rxcrsglitch; /* PHY was able to correlate the preamble but not the header */ - u32 rxstrt; /* Number of received frames with a good PLCP - * (i.e. passing parity check) - */ - u32 rxdfrmucastmbss; /* Number of received DATA frames with good FCS and matching RA */ - u32 rxmfrmucastmbss; /* number of received mgmt frames with good FCS and matching RA */ - u32 rxcfrmucast; /* number of received CNTRL frames with good FCS and matching RA */ - u32 rxrtsucast; /* number of unicast RTS addressed to the MAC (good FCS) */ - u32 rxctsucast; /* number of unicast CTS addressed to the MAC (good FCS) */ - u32 rxackucast; /* number of ucast ACKS received (good FCS) */ - u32 rxdfrmocast; /* number of received DATA frames (good FCS and not matching RA) */ - u32 rxmfrmocast; /* number of received MGMT frames (good FCS and not matching RA) */ - u32 rxcfrmocast; /* number of received CNTRL frame (good FCS and not matching RA) */ - u32 rxrtsocast; /* number of received RTS not addressed to the MAC */ - u32 rxctsocast; /* number of received CTS not addressed to the MAC */ - u32 rxdfrmmcast; /* number of RX Data multicast frames received by the MAC */ - u32 rxmfrmmcast; /* number of RX Management multicast frames received by the MAC */ - u32 rxcfrmmcast; /* number of RX Control multicast frames received by the MAC - * (unlikely to see these) - */ - u32 rxbeaconmbss; /* beacons received from member of BSS */ - u32 rxdfrmucastobss; /* number of unicast frames addressed to the MAC from - * other BSS (WDS FRAME) - */ - u32 rxbeaconobss; /* beacons received from other BSS */ - u32 rxrsptmout; /* Number of response timeouts for transmitted frames - * expecting a response - */ - u32 bcntxcancl; /* transmit beacons canceled due to receipt of beacon (IBSS) */ - u32 rxf0ovfl; /* Number of receive fifo 0 overflows */ - u32 rxf1ovfl; /* Number of receive fifo 1 overflows (obsolete) */ - u32 rxf2ovfl; /* Number of receive fifo 2 overflows (obsolete) */ - u32 txsfovfl; /* Number of transmit status fifo overflows (obsolete) */ - u32 pmqovfl; /* Number of PMQ overflows */ - u32 rxcgprqfrm; /* Number of received Probe requests that made it into - * the PRQ fifo - */ - u32 rxcgprsqovfl; /* Rx Probe Request Que overflow in the AP */ - u32 txcgprsfail; /* Tx Probe Response Fail. AP sent probe response but did - * not get ACK - */ - u32 txcgprssuc; /* Tx Probe Response Success (ACK was received) */ - u32 prs_timeout; /* Number of probe requests that were dropped from the PRQ - * fifo because a probe response could not be sent out within - * the time limit defined in M_PRS_MAXTIME - */ - u32 rxnack; - u32 frmscons; - u32 txnack; - u32 txglitch_nack; /* obsolete */ - u32 txburst; /* obsolete */ - - /* 802.11 MIB counters, pp. 614 of 802.11 reaff doc. */ - u32 txfrag; /* dot11TransmittedFragmentCount */ - u32 txmulti; /* dot11MulticastTransmittedFrameCount */ - u32 txfail; /* dot11FailedCount */ - u32 txretry; /* dot11RetryCount */ - u32 txretrie; /* dot11MultipleRetryCount */ - u32 rxdup; /* dot11FrameduplicateCount */ - u32 txrts; /* dot11RTSSuccessCount */ - u32 txnocts; /* dot11RTSFailureCount */ - u32 txnoack; /* dot11ACKFailureCount */ - u32 rxfrag; /* dot11ReceivedFragmentCount */ - u32 rxmulti; /* dot11MulticastReceivedFrameCount */ - u32 rxcrc; /* dot11FCSErrorCount */ - u32 txfrmsnt; /* dot11TransmittedFrameCount (bogus MIB?) */ - u32 rxundec; /* dot11WEPUndecryptableCount */ - - /* WPA2 counters (see rxundec for DecryptFailureCount) */ - u32 tkipmicfaill; /* TKIPLocalMICFailures */ - u32 tkipcntrmsr; /* TKIPCounterMeasuresInvoked */ - u32 tkipreplay; /* TKIPReplays */ - u32 ccmpfmterr; /* CCMPFormatErrors */ - u32 ccmpreplay; /* CCMPReplays */ - u32 ccmpundec; /* CCMPDecryptErrors */ - u32 fourwayfail; /* FourWayHandshakeFailures */ - u32 wepundec; /* dot11WEPUndecryptableCount */ - u32 wepicverr; /* dot11WEPICVErrorCount */ - u32 decsuccess; /* DecryptSuccessCount */ - u32 tkipicverr; /* TKIPICVErrorCount */ - u32 wepexcluded; /* dot11WEPExcludedCount */ - - u32 rxundec_mcst; /* dot11WEPUndecryptableCount */ - - /* WPA2 counters (see rxundec for DecryptFailureCount) */ - u32 tkipmicfaill_mcst; /* TKIPLocalMICFailures */ - u32 tkipcntrmsr_mcst; /* TKIPCounterMeasuresInvoked */ - u32 tkipreplay_mcst; /* TKIPReplays */ - u32 ccmpfmterr_mcst; /* CCMPFormatErrors */ - u32 ccmpreplay_mcst; /* CCMPReplays */ - u32 ccmpundec_mcst; /* CCMPDecryptErrors */ - u32 fourwayfail_mcst; /* FourWayHandshakeFailures */ - u32 wepundec_mcst; /* dot11WEPUndecryptableCount */ - u32 wepicverr_mcst; /* dot11WEPICVErrorCount */ - u32 decsuccess_mcst; /* DecryptSuccessCount */ - u32 tkipicverr_mcst; /* TKIPICVErrorCount */ - u32 wepexcluded_mcst; /* dot11WEPExcludedCount */ - - u32 txchanrej; /* Tx frames suppressed due to channel rejection */ - u32 txexptime; /* Tx frames suppressed due to timer expiration */ - u32 psmwds; /* Count PSM watchdogs */ - u32 phywatchdog; /* Count Phy watchdogs (triggered by ucode) */ - - /* MBSS counters, AP only */ - u32 prq_entries_handled; /* PRQ entries read in */ - u32 prq_undirected_entries; /* which were bcast bss & ssid */ - u32 prq_bad_entries; /* which could not be translated to info */ - u32 atim_suppress_count; /* TX suppressions on ATIM fifo */ - u32 bcn_template_not_ready; /* Template marked in use on send bcn ... */ - u32 bcn_template_not_ready_done; /* ...but "DMA done" interrupt rcvd */ - u32 late_tbtt_dpc; /* TBTT DPC did not happen in time */ - - /* per-rate receive stat counters */ - u32 rx1mbps; /* packets rx at 1Mbps */ - u32 rx2mbps; /* packets rx at 2Mbps */ - u32 rx5mbps5; /* packets rx at 5.5Mbps */ - u32 rx6mbps; /* packets rx at 6Mbps */ - u32 rx9mbps; /* packets rx at 9Mbps */ - u32 rx11mbps; /* packets rx at 11Mbps */ - u32 rx12mbps; /* packets rx at 12Mbps */ - u32 rx18mbps; /* packets rx at 18Mbps */ - u32 rx24mbps; /* packets rx at 24Mbps */ - u32 rx36mbps; /* packets rx at 36Mbps */ - u32 rx48mbps; /* packets rx at 48Mbps */ - u32 rx54mbps; /* packets rx at 54Mbps */ - u32 rx108mbps; /* packets rx at 108mbps */ - u32 rx162mbps; /* packets rx at 162mbps */ - u32 rx216mbps; /* packets rx at 216 mbps */ - u32 rx270mbps; /* packets rx at 270 mbps */ - u32 rx324mbps; /* packets rx at 324 mbps */ - u32 rx378mbps; /* packets rx at 378 mbps */ - u32 rx432mbps; /* packets rx at 432 mbps */ - u32 rx486mbps; /* packets rx at 486 mbps */ - u32 rx540mbps; /* packets rx at 540 mbps */ - - /* pkteng rx frame stats */ - u32 pktengrxducast; /* unicast frames rxed by the pkteng code */ - u32 pktengrxdmcast; /* multicast frames rxed by the pkteng code */ - - u32 rfdisable; /* count of radio disables */ - u32 bphy_rxcrsglitch; /* PHY count of bphy glitches */ - - u32 txmpdu_sgi; /* count for sgi transmit */ - u32 rxmpdu_sgi; /* count for sgi received */ - u32 txmpdu_stbc; /* count for stbc transmit */ - u32 rxmpdu_stbc; /* count for stbc received */ -}; - -#define WL_DELTA_STATS_T_VERSION 1 /* current version of wl_delta_stats_t struct */ - -typedef struct { - u16 version; /* see definition of WL_DELTA_STATS_T_VERSION */ - u16 length; /* length of entire structure */ - - /* transmit stat counters */ - u32 txframe; /* tx data frames */ - u32 txbyte; /* tx data bytes */ - u32 txretrans; /* tx mac retransmits */ - u32 txfail; /* tx failures */ - - /* receive stat counters */ - u32 rxframe; /* rx data frames */ - u32 rxbyte; /* rx data bytes */ - - /* per-rate receive stat counters */ - u32 rx1mbps; /* packets rx at 1Mbps */ - u32 rx2mbps; /* packets rx at 2Mbps */ - u32 rx5mbps5; /* packets rx at 5.5Mbps */ - u32 rx6mbps; /* packets rx at 6Mbps */ - u32 rx9mbps; /* packets rx at 9Mbps */ - u32 rx11mbps; /* packets rx at 11Mbps */ - u32 rx12mbps; /* packets rx at 12Mbps */ - u32 rx18mbps; /* packets rx at 18Mbps */ - u32 rx24mbps; /* packets rx at 24Mbps */ - u32 rx36mbps; /* packets rx at 36Mbps */ - u32 rx48mbps; /* packets rx at 48Mbps */ - u32 rx54mbps; /* packets rx at 54Mbps */ - u32 rx108mbps; /* packets rx at 108mbps */ - u32 rx162mbps; /* packets rx at 162mbps */ - u32 rx216mbps; /* packets rx at 216 mbps */ - u32 rx270mbps; /* packets rx at 270 mbps */ - u32 rx324mbps; /* packets rx at 324 mbps */ - u32 rx378mbps; /* packets rx at 378 mbps */ - u32 rx432mbps; /* packets rx at 432 mbps */ - u32 rx486mbps; /* packets rx at 486 mbps */ - u32 rx540mbps; /* packets rx at 540 mbps */ -} wl_delta_stats_t; - -#define WL_WME_CNT_VERSION 1 /* current version of wl_wme_cnt_t */ - -typedef struct { - u32 packets; - u32 bytes; -} wl_traffic_stats_t; - -typedef struct { - u16 version; /* see definition of WL_WME_CNT_VERSION */ - u16 length; /* length of entire structure */ - - wl_traffic_stats_t tx[AC_COUNT]; /* Packets transmitted */ - wl_traffic_stats_t tx_failed[AC_COUNT]; /* Packets dropped or failed to transmit */ - wl_traffic_stats_t rx[AC_COUNT]; /* Packets received */ - wl_traffic_stats_t rx_failed[AC_COUNT]; /* Packets failed to receive */ - - wl_traffic_stats_t forward[AC_COUNT]; /* Packets forwarded by AP */ - - wl_traffic_stats_t tx_expired[AC_COUNT]; /* packets dropped due to lifetime expiry */ - -} wl_wme_cnt_t; - struct wl_msglevel2 { u32 low; u32 high; }; -#ifdef WLBA - -#define WLC_BA_CNT_VERSION 1 /* current version of wlc_ba_cnt_t */ - -/* block ack related stats */ -typedef struct wlc_ba_cnt { - u16 version; /* WLC_BA_CNT_VERSION */ - u16 length; /* length of entire structure */ - - /* transmit stat counters */ - u32 txpdu; /* pdus sent */ - u32 txsdu; /* sdus sent */ - u32 txfc; /* tx side flow controlled packets */ - u32 txfci; /* tx side flow control initiated */ - u32 txretrans; /* retransmitted pdus */ - u32 txbatimer; /* ba resend due to timer */ - u32 txdrop; /* dropped packets */ - u32 txaddbareq; /* addba req sent */ - u32 txaddbaresp; /* addba resp sent */ - u32 txdelba; /* delba sent */ - u32 txba; /* ba sent */ - u32 txbar; /* bar sent */ - u32 txpad[4]; /* future */ - - /* receive side counters */ - u32 rxpdu; /* pdus recd */ - u32 rxqed; /* pdus buffered before sending up */ - u32 rxdup; /* duplicate pdus */ - u32 rxnobuf; /* pdus discarded due to no buf */ - u32 rxaddbareq; /* addba req recd */ - u32 rxaddbaresp; /* addba resp recd */ - u32 rxdelba; /* delba recd */ - u32 rxba; /* ba recd */ - u32 rxbar; /* bar recd */ - u32 rxinvba; /* invalid ba recd */ - u32 rxbaholes; /* ba recd with holes */ - u32 rxunexp; /* unexpected packets */ - u32 rxpad[4]; /* future */ -} wlc_ba_cnt_t; -#endif /* WLBA */ - /* structure for per-tid ampdu control */ struct ampdu_tid_control { u8 tid; /* tid */ |