staging: brcm80211: Remove cruft from wlioctl.h

Signed-off-by: Brett Rudley <brudley@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Brett Rudley 2010-11-01 17:10:18 -07:00 committed by Greg Kroah-Hartman
parent 9014378bf4
commit a28792e786

View file

@ -34,82 +34,8 @@
#include <packed_section_start.h>
#ifdef BRCM_FULLMAC
/* Legacy structure to help keep backward compatible wl tool and tray app */
#define LEGACY_WL_BSS_INFO_VERSION 107 /* older version of wl_bss_info struct */
typedef struct wl_bss_info_107 {
u32 version; /* version field */
u32 length; /* byte length of data in this record,
* starting at version and including IEs
*/
struct ether_addr BSSID;
u16 beacon_period; /* units are Kusec */
u16 capability; /* Capability information */
u8 SSID_len;
u8 SSID[32];
struct {
uint count; /* # rates in this set */
u8 rates[16]; /* rates in 500kbps units w/hi bit set if basic */
} rateset; /* supported rates */
u8 channel; /* Channel no. */
u16 atim_window; /* units are Kusec */
u8 dtim_period; /* DTIM period */
s16 RSSI; /* receive signal strength (in dBm) */
s8 phy_noise; /* noise (in dBm) */
u32 ie_length; /* byte length of Information Elements */
/* variable length Information Elements */
} wl_bss_info_107_t;
/*
* Per-BSS information structure.
*/
#define LEGACY2_WL_BSS_INFO_VERSION 108 /* old version of wl_bss_info struct */
/* BSS info structure
* Applications MUST CHECK ie_offset field and length field to access IEs and
* next bss_info structure in a vector (in wl_scan_results_t)
*/
typedef struct wl_bss_info_108 {
u32 version; /* version field */
u32 length; /* byte length of data in this record,
* starting at version and including IEs
*/
struct ether_addr BSSID;
u16 beacon_period; /* units are Kusec */
u16 capability; /* Capability information */
u8 SSID_len;
u8 SSID[32];
struct {
uint count; /* # rates in this set */
u8 rates[16]; /* rates in 500kbps units w/hi bit set if basic */
} rateset; /* supported rates */
chanspec_t chanspec; /* chanspec for bss */
u16 atim_window; /* units are Kusec */
u8 dtim_period; /* DTIM period */
s16 RSSI; /* receive signal strength (in dBm) */
s8 phy_noise; /* noise (in dBm) */
u8 n_cap; /* BSS is 802.11N Capable */
u32 nbss_cap; /* 802.11N BSS Capabilities (based on HT_CAP_*) */
u8 ctl_ch; /* 802.11N BSS control channel number */
u32 reserved32[1]; /* Reserved for expansion of BSS properties */
u8 flags; /* flags */
u8 reserved[3]; /* Reserved for expansion of BSS properties */
u8 basic_mcs[MCSSET_LEN]; /* 802.11N BSS required MCS set */
u16 ie_offset; /* offset at which IEs start, from beginning */
u32 ie_length; /* byte length of Information Elements */
/* Add new fields here */
/* variable length Information Elements */
} wl_bss_info_108_t;
#ifdef BRCM_FULLMAC
#define WL_BSS_INFO_VERSION 108 /* current ver of wl_bss_info struct */
#else
#define WL_BSS_INFO_VERSION 109 /* current ver of wl_bss_info struct */
#endif
/* BSS info structure
* Applications MUST CHECK ie_offset field and length field to access IEs and
@ -633,27 +559,6 @@ typedef struct wl_led_info {
u8 activehi;
} wl_led_info_t;
/* flags */
#define WLC_ASSOC_REQ_IS_REASSOC 0x01 /* assoc req was actually a reassoc */
/* srom read/write struct passed through ioctl */
typedef struct {
uint byteoff; /* byte offset */
uint nbytes; /* number of bytes */
u16 buf[1];
} srom_rw_t;
/* similar cis (srom or otp) struct [iovar: may not be aligned] */
typedef struct {
u32 source; /* cis source */
u32 byteoff; /* byte offset */
u32 nbytes; /* number of bytes */
/* data follows here */
} cis_rw_t;
#define WLC_CIS_DEFAULT 0 /* built-in default */
#define WLC_CIS_SROM 1 /* source is sprom */
#define WLC_CIS_OTP 2 /* source is otp */
/* R_REG and W_REG struct passed through ioctl */
typedef struct {
@ -663,102 +568,14 @@ typedef struct {
uint band; /* band (optional) */
} rw_reg_t;
/* Structure used by GET/SET_ATTEN ioctls - it controls power in b/g-band */
/* PCL - Power Control Loop */
/* current gain setting is replaced by user input */
#define WL_ATTEN_APP_INPUT_PCL_OFF 0 /* turn off PCL, apply supplied input */
#define WL_ATTEN_PCL_ON 1 /* turn on PCL */
/* current gain setting is maintained */
#define WL_ATTEN_PCL_OFF 2 /* turn off PCL. */
typedef struct {
u16 auto_ctrl; /* WL_ATTEN_XX */
u16 bb; /* Baseband attenuation */
u16 radio; /* Radio attenuation */
u16 txctl1; /* Radio TX_CTL1 value */
} atten_t;
/* Per-AC retry parameters */
struct wme_tx_params_s {
u8 short_retry;
u8 short_fallback;
u8 long_retry;
u8 long_fallback;
u16 max_rate; /* In units of 512 Kbps */
};
typedef struct wme_tx_params_s wme_tx_params_t;
#define WL_WME_TX_PARAMS_IO_BYTES (sizeof(wme_tx_params_t) * AC_COUNT)
/* defines used by poweridx iovar - it controls power in a-band */
/* current gain setting is maintained */
#define WL_PWRIDX_PCL_OFF -2 /* turn off PCL. */
#define WL_PWRIDX_PCL_ON -1 /* turn on PCL */
#define WL_PWRIDX_LOWER_LIMIT -2 /* lower limit */
#define WL_PWRIDX_UPPER_LIMIT 63 /* upper limit */
/* value >= 0 causes
* - input to be set to that value
* - PCL to be off
*/
/* Used to get specific link/ac parameters */
typedef struct {
int ac;
u8 val;
struct ether_addr ea;
} link_val_t;
#define BCM_MAC_STATUS_INDICATION (0x40010200L)
typedef struct {
u16 ver; /* version of this struct */
u16 len; /* length in bytes of this structure */
u16 cap; /* sta's advertised capabilities */
u32 flags; /* flags defined below */
u32 idle; /* time since data pkt rx'd from sta */
struct ether_addr ea; /* Station address */
wl_rateset_t rateset; /* rateset in use */
u32 in; /* seconds elapsed since associated */
u32 listen_interval_inms; /* Min Listen interval in ms for this STA */
u32 tx_pkts; /* # of packets transmitted */
u32 tx_failures; /* # of packets failed */
u32 rx_ucast_pkts; /* # of unicast packets received */
u32 rx_mcast_pkts; /* # of multicast packets received */
u32 tx_rate; /* Rate of last successful tx frame */
u32 rx_rate; /* Rate of last successful rx frame */
u32 rx_decrypt_succeeds; /* # of packet decrypted successfully */
u32 rx_decrypt_failures; /* # of packet decrypted unsuccessfully */
} sta_info_t;
#define WL_OLD_STAINFO_SIZE offsetof(sta_info_t, tx_pkts)
#define WL_STA_VER 3
/* Flags for sta_info_t indicating properties of STA */
#define WL_STA_BRCM 0x1 /* Running a Broadcom driver */
#define WL_STA_WME 0x2 /* WMM association */
#define WL_STA_ABCAP 0x4
#define WL_STA_AUTHE 0x8 /* Authenticated */
#define WL_STA_ASSOC 0x10 /* Associated */
#define WL_STA_AUTHO 0x20 /* Authorized */
#define WL_STA_WDS 0x40 /* Wireless Distribution System */
#define WL_STA_WDS_LINKUP 0x80 /* WDS traffic/probes flowing properly */
#define WL_STA_PS 0x100 /* STA is in power save mode from AP's viewpoint */
#define WL_STA_APSD_BE 0x200 /* APSD delv/trigger for AC_BE is default enabled */
#define WL_STA_APSD_BK 0x400 /* APSD delv/trigger for AC_BK is default enabled */
#define WL_STA_APSD_VI 0x800 /* APSD delv/trigger for AC_VI is default enabled */
#define WL_STA_APSD_VO 0x1000 /* APSD delv/trigger for AC_VO is default enabled */
#define WL_STA_N_CAP 0x2000 /* STA 802.11n capable */
#define WL_STA_SCBSTATS 0x4000 /* Per STA debug stats */
#define WL_WDS_LINKUP WL_STA_WDS_LINKUP /* deprecated */
#ifdef BRCM_FULLMAC
/* Used to get specific STA parameters */
typedef struct {
u32 val;
struct ether_addr ea;
} scb_val_t;
#endif /* BRCM_FULLMAC */
/* channel encoding */
typedef struct channel_info {
@ -782,6 +599,7 @@ typedef struct get_pktcnt {
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 {
uint cmd; /* common ioctl definition */
@ -791,11 +609,8 @@ typedef struct wl_ioctl {
uint used; /* bytes read or written (optional) */
uint needed; /* bytes needed (optional) */
} wl_ioctl_t;
#endif /* BRCM_FULLMAC */
/* reference to wl_ioctl_t struct used by usermode driver */
#define ioctl_subtype set /* subtype param */
#define ioctl_pid used /* pid param */
#define ioctl_status needed /* status param */
/*
* Structure for passing hardware and software
@ -822,45 +637,11 @@ typedef struct wlc_rev_info {
#define WL_REV_INFO_LEGACY_LENGTH 48
#define WL_BRAND_MAX 10
typedef struct wl_instance_info {
uint instance;
char brand[WL_BRAND_MAX];
} wl_instance_info_t;
/* structure to change size of tx fifo */
typedef struct wl_txfifo_sz {
u16 magic;
u16 fifo;
u16 size;
} wl_txfifo_sz_t;
/* magic pattern used for mismatch driver and wl */
#define WL_TXFIFO_SZ_MAGIC 0xa5a5
/* Transfer info about an IOVar from the driver */
/* Max supported IOV name size in bytes, + 1 for nul termination */
#define WLC_IOV_NAME_LEN 30
typedef struct wlc_iov_trx_s {
u8 module;
u8 type;
char name[WLC_IOV_NAME_LEN];
} wlc_iov_trx_t;
/* check this magic number */
#define WLC_IOCTL_MAGIC 0x14e46c77
#define PROC_ENTRY_NAME "brcm_debug"
/* bump this number if you change the ioctl interface */
#define WLC_IOCTL_VERSION 1
#ifdef BRCM_FULLMAC
#define WLC_IOCTL_MAXLEN 8192
#else
#define WLC_IOCTL_MAXLEN 3072 /* max length ioctl buffer required */
#endif
#define WLC_IOCTL_SMLEN 256 /* "small" length ioctl buffer required */
#define WLC_IOCTL_MEDLEN 1536 /* "med" length ioctl buffer required */
#define WLC_SAMPLECOLLECT_MAXLEN 10240 /* Max Sample Collect buffer for two cores */
#define WLC_IOCTL_MAXLEN 8192
#endif
/* common ioctl definitions */
#define WLC_GET_MAGIC 0
@ -1411,23 +1192,6 @@ typedef struct {
#define WL_TX_POWER_MCS40_FIRST 28
#define WL_TX_POWER_MCS40_NUM 17
typedef struct {
u32 flags;
chanspec_t chanspec; /* txpwr report for this channel */
chanspec_t local_chanspec; /* channel on which we are associated */
u8 local_max; /* local max according to the AP */
u8 local_constraint; /* local constraint according to the AP */
s8 antgain[2]; /* Ant gain for each band - from SROM */
u8 rf_cores; /* count of RF Cores being reported */
u8 est_Pout[4]; /* Latest tx power out estimate per RF
* chain without adjustment
*/
u8 est_Pout_cck; /* Latest CCK tx power out estimate */
u8 user_limit[WL_TX_POWER_RATES_LEGACY]; /* User limit */
u8 reg_limit[WL_TX_POWER_RATES_LEGACY]; /* Regulatory power limit */
u8 board_limit[WL_TX_POWER_RATES_LEGACY]; /* Max power board can support (SROM) */
u8 target[WL_TX_POWER_RATES_LEGACY]; /* Latest target power */
} tx_power_legacy2_t;
#define WL_TX_POWER_RATES 101
#define WL_TX_POWER_CCK_FIRST 0
@ -1860,63 +1624,6 @@ struct ampdu_retry_tid {
u8 retry; /* retry value */
};
/* structure for addts arguments */
/* For ioctls that take a list of TSPEC */
struct tslist {
int count; /* number of tspecs */
struct tsinfo_arg tsinfo[1]; /* variable length array of tsinfo */
};
/* structure for addts/delts arguments */
typedef struct tspec_arg {
u16 version; /* see definition of TSPEC_ARG_VERSION */
u16 length; /* length of entire structure */
uint flag; /* bit field */
/* TSPEC Arguments */
struct tsinfo_arg tsinfo; /* TS Info bit field */
u16 nom_msdu_size; /* (Nominal or fixed) MSDU Size (bytes) */
u16 max_msdu_size; /* Maximum MSDU Size (bytes) */
uint min_srv_interval; /* Minimum Service Interval (us) */
uint max_srv_interval; /* Maximum Service Interval (us) */
uint inactivity_interval; /* Inactivity Interval (us) */
uint suspension_interval; /* Suspension Interval (us) */
uint srv_start_time; /* Service Start Time (us) */
uint min_data_rate; /* Minimum Data Rate (bps) */
uint mean_data_rate; /* Mean Data Rate (bps) */
uint peak_data_rate; /* Peak Data Rate (bps) */
uint max_burst_size; /* Maximum Burst Size (bytes) */
uint delay_bound; /* Delay Bound (us) */
uint min_phy_rate; /* Minimum PHY Rate (bps) */
u16 surplus_bw; /* Surplus Bandwidth Allowance (range 1.0 to 8.0) */
u16 medium_time; /* Medium Time (32 us/s periods) */
u8 dialog_token; /* dialog token */
} tspec_arg_t;
/* tspec arg for desired station */
typedef struct tspec_per_sta_arg {
struct ether_addr ea;
struct tspec_arg ts;
} tspec_per_sta_arg_t;
/* structure for max bandwidth for each access category */
typedef struct wme_max_bandwidth {
u32 ac[AC_COUNT]; /* max bandwidth for each access category */
} wme_max_bandwidth_t;
#define WL_WME_MBW_PARAMS_IO_BYTES (sizeof(wme_max_bandwidth_t))
/* current version of wl_tspec_arg_t struct */
#define TSPEC_ARG_VERSION 2 /* current version of wl_tspec_arg_t struct */
#define TSPEC_ARG_LENGTH 55 /* argument length from tsinfo to medium_time */
#define TSPEC_DEFAULT_DIALOG_TOKEN 42 /* default dialog token */
#define TSPEC_DEFAULT_SBW_FACTOR 0x3000 /* default surplus bw */
/* define for flag */
#define TSPEC_PENDING 0 /* TSPEC pending */
#define TSPEC_ACCEPTED 1 /* TSPEC accepted */
#define TSPEC_REJECTED 2 /* TSPEC rejected */
#define TSPEC_UNKNOWN 3 /* TSPEC unknown */
#define TSPEC_STATUS_MASK 7 /* TSPEC status mask */
/* Software feature flag defines used by wlfeatureflag */
#define WL_SWFL_NOHWRADIO 0x0004
@ -1925,16 +1632,6 @@ typedef struct wme_max_bandwidth {
#define WL_LIFETIME_MAX 0xFFFF /* Max value in ms */
/*
* Dongle pattern matching filter.
*/
/* Packet filter types. Currently, only pattern matching is supported. */
typedef enum wl_pkt_filter_type {
WL_PKT_FILTER_TYPE_PATTERN_MATCH /* Pattern matching filter */
} wl_pkt_filter_type_t;
#define WL_PKT_FILTER_TYPE wl_pkt_filter_type_t
/* Pattern matching filter. Specifies an offset within received packets to
* start matching, the pattern to match, the size of the pattern, and a bitmask
@ -1969,20 +1666,6 @@ typedef struct wl_pkt_filter_enable {
u32 enable; /* Enable/disable bool */
} wl_pkt_filter_enable_t;
/* IOVAR "pkt_filter_list" parameter. Used to retrieve a list of installed filters. */
typedef struct wl_pkt_filter_list {
u32 num; /* Number of installed packet filters */
wl_pkt_filter_t filter[1]; /* Variable array of packet filters. */
} wl_pkt_filter_list_t;
#define WL_PKT_FILTER_LIST_FIXED_LEN offsetof(wl_pkt_filter_list_t, filter)
/* IOVAR "pkt_filter_stats" parameter. Used to retrieve debug statistics. */
typedef struct wl_pkt_filter_stats {
u32 num_pkts_matched; /* # filter matches for specified filter id */
u32 num_pkts_forwarded; /* # packets fwded from dongle to host for all filters */
u32 num_pkts_discarded; /* # packets discarded by dongle for all filters */
} wl_pkt_filter_stats_t;
#define WLC_RSSI_INVALID 0 /* invalid RSSI value */