Changeset View
Changeset View
Standalone View
Standalone View
sys/net80211/ieee80211_var.h
Show First 20 Lines • Show All 80 Lines • ▼ Show 20 Lines | |||||
#define IEEE80211_RTS_DEFAULT IEEE80211_RTS_MAX | #define IEEE80211_RTS_DEFAULT IEEE80211_RTS_MAX | ||||
#define IEEE80211_FRAG_DEFAULT IEEE80211_FRAG_MAX | #define IEEE80211_FRAG_DEFAULT IEEE80211_FRAG_MAX | ||||
#define IEEE80211_MS_TO_TU(x) (((x) * 1000) / 1024) | #define IEEE80211_MS_TO_TU(x) (((x) * 1000) / 1024) | ||||
#define IEEE80211_TU_TO_MS(x) (((x) * 1024) / 1000) | #define IEEE80211_TU_TO_MS(x) (((x) * 1024) / 1000) | ||||
#define IEEE80211_TU_TO_TICKS(x)(((x) * 1024 * hz) / (1000 * 1000)) | #define IEEE80211_TU_TO_TICKS(x)(((x) * 1024 * hz) / (1000 * 1000)) | ||||
#define IEEE80211_WATCHDOG_TIMEOUT 5 | |||||
/* | /* | ||||
* 802.11 control state is split into a common portion that maps | * 802.11 control state is split into a common portion that maps | ||||
* 1-1 to a physical device and one or more "Virtual AP's" (VAP) | * 1-1 to a physical device and one or more "Virtual AP's" (VAP) | ||||
* that are bound to an ieee80211com instance and share a single | * that are bound to an ieee80211com instance and share a single | ||||
* underlying device. Each VAP has a corresponding OS device | * underlying device. Each VAP has a corresponding OS device | ||||
* entity through which traffic flows and that applications use | * entity through which traffic flows and that applications use | ||||
* for issuing ioctls, etc. | * for issuing ioctls, etc. | ||||
*/ | */ | ||||
Show All 18 Lines | |||||
struct ieee80211_superg; | struct ieee80211_superg; | ||||
struct ieee80211_frame; | struct ieee80211_frame; | ||||
struct ieee80211com { | struct ieee80211com { | ||||
void *ic_softc; /* driver softc */ | void *ic_softc; /* driver softc */ | ||||
const char *ic_name; /* usually device name */ | const char *ic_name; /* usually device name */ | ||||
ieee80211_com_lock_t ic_comlock; /* state update lock */ | ieee80211_com_lock_t ic_comlock; /* state update lock */ | ||||
ieee80211_tx_lock_t ic_txlock; /* ic/vap TX lock */ | ieee80211_tx_lock_t ic_txlock; /* ic/vap TX lock */ | ||||
ieee80211_wt_lock_t ic_wtlock; /* watchdog lock */ | |||||
LIST_ENTRY(ieee80211com) ic_next; /* on global list */ | LIST_ENTRY(ieee80211com) ic_next; /* on global list */ | ||||
TAILQ_HEAD(, ieee80211vap) ic_vaps; /* list of vap instances */ | TAILQ_HEAD(, ieee80211vap) ic_vaps; /* list of vap instances */ | ||||
int ic_headroom; /* driver tx headroom needs */ | int ic_headroom; /* driver tx headroom needs */ | ||||
enum ieee80211_phytype ic_phytype; /* XXX wrong for multi-mode */ | enum ieee80211_phytype ic_phytype; /* XXX wrong for multi-mode */ | ||||
enum ieee80211_opmode ic_opmode; /* operation mode */ | enum ieee80211_opmode ic_opmode; /* operation mode */ | ||||
struct callout ic_inact; /* inactivity processing */ | struct callout ic_inact; /* inactivity processing */ | ||||
struct callout ic_tx_watchdog; /* TX watchdog */ | |||||
struct taskqueue *ic_tq; /* deferred state thread */ | struct taskqueue *ic_tq; /* deferred state thread */ | ||||
struct task ic_parent_task; /* deferred parent processing */ | struct task ic_parent_task; /* deferred parent processing */ | ||||
struct task ic_promisc_task;/* deferred promisc update */ | struct task ic_promisc_task;/* deferred promisc update */ | ||||
struct task ic_mcast_task; /* deferred mcast update */ | struct task ic_mcast_task; /* deferred mcast update */ | ||||
struct task ic_chan_task; /* deferred channel change */ | struct task ic_chan_task; /* deferred channel change */ | ||||
struct task ic_bmiss_task; /* deferred beacon miss hndlr */ | struct task ic_bmiss_task; /* deferred beacon miss hndlr */ | ||||
struct task ic_chw_task; /* deferred HT CHW update */ | struct task ic_chw_task; /* deferred HT CHW update */ | ||||
struct task ic_wme_task; /* deferred WME update */ | struct task ic_wme_task; /* deferred WME update */ | ||||
struct task ic_restart_task; /* deferred device restart */ | struct task ic_restart_task; /* deferred device restart */ | ||||
counter_u64_t ic_ierrors; /* input errors */ | counter_u64_t ic_ierrors; /* input errors */ | ||||
counter_u64_t ic_oerrors; /* output errors */ | counter_u64_t ic_oerrors; /* output errors */ | ||||
int16_t ic_tx_queued; /* number of queued frames */ | |||||
uint8_t ic_tx_timer; /* watchdog timer */ | |||||
uint32_t ic_flags; /* state flags */ | uint32_t ic_flags; /* state flags */ | ||||
uint32_t ic_flags_ext; /* extended state flags */ | uint32_t ic_flags_ext; /* extended state flags */ | ||||
uint32_t ic_flags_ht; /* HT state flags */ | uint32_t ic_flags_ht; /* HT state flags */ | ||||
uint32_t ic_flags_ven; /* vendor state flags */ | uint32_t ic_flags_ven; /* vendor state flags */ | ||||
uint32_t ic_caps; /* capabilities */ | uint32_t ic_caps; /* capabilities */ | ||||
uint32_t ic_htcaps; /* HT capabilities */ | uint32_t ic_htcaps; /* HT capabilities */ | ||||
uint32_t ic_htextcaps; /* HT extended capabilities */ | uint32_t ic_htextcaps; /* HT extended capabilities */ | ||||
uint32_t ic_cryptocaps; /* crypto capabilities */ | uint32_t ic_cryptocaps; /* crypto capabilities */ | ||||
▲ Show 20 Lines • Show All 442 Lines • ▼ Show 20 Lines | |||||
#define IEEE80211_FEXT_DOTD 0x00001000 /* CONF: 11d enabled */ | #define IEEE80211_FEXT_DOTD 0x00001000 /* CONF: 11d enabled */ | ||||
#define IEEE80211_FEXT_STATEWAIT 0x00002000 /* STATUS: awaiting state chg */ | #define IEEE80211_FEXT_STATEWAIT 0x00002000 /* STATUS: awaiting state chg */ | ||||
#define IEEE80211_FEXT_REINIT 0x00004000 /* STATUS: INIT state first */ | #define IEEE80211_FEXT_REINIT 0x00004000 /* STATUS: INIT state first */ | ||||
#define IEEE80211_FEXT_BPF 0x00008000 /* STATUS: BPF tap present */ | #define IEEE80211_FEXT_BPF 0x00008000 /* STATUS: BPF tap present */ | ||||
/* NB: immutable: should be set only when creating a vap */ | /* NB: immutable: should be set only when creating a vap */ | ||||
#define IEEE80211_FEXT_WDSLEGACY 0x00010000 /* CONF: legacy WDS operation */ | #define IEEE80211_FEXT_WDSLEGACY 0x00010000 /* CONF: legacy WDS operation */ | ||||
#define IEEE80211_FEXT_PROBECHAN 0x00020000 /* CONF: probe passive channel*/ | #define IEEE80211_FEXT_PROBECHAN 0x00020000 /* CONF: probe passive channel*/ | ||||
#define IEEE80211_FEXT_UNIQMAC 0x00040000 /* CONF: user or computed mac */ | #define IEEE80211_FEXT_UNIQMAC 0x00040000 /* CONF: user or computed mac */ | ||||
#define IEEE80211_FEXT_WATCHDOG 0x00080000 /* CONF: track tx activity */ | |||||
#define IEEE80211_FEXT_BITS \ | #define IEEE80211_FEXT_BITS \ | ||||
"\20\2INACT\3SCANWAIT\4BGSCAN\5WPS\6TSN\7SCANREQ\10RESUME" \ | "\20\2INACT\3SCANWAIT\4BGSCAN\5WPS\6TSN\7SCANREQ\10RESUME" \ | ||||
"\0114ADDR\12NONEPR_PR\13SWBMISS\14DFS\15DOTD\16STATEWAIT\17REINIT" \ | "\0114ADDR\12NONEPR_PR\13SWBMISS\14DFS\15DOTD\16STATEWAIT\17REINIT" \ | ||||
"\20BPF\21WDSLEGACY\22PROBECHAN\23UNIQMAC" | "\20BPF\21WDSLEGACY\22PROBECHAN\23UNIQMAC" | ||||
/* ic_flags_ht/iv_flags_ht */ | /* ic_flags_ht/iv_flags_ht */ | ||||
#define IEEE80211_FHT_NONHT_PR 0x00000001 /* STATUS: non-HT sta present */ | #define IEEE80211_FHT_NONHT_PR 0x00000001 /* STATUS: non-HT sta present */ | ||||
▲ Show 20 Lines • Show All 394 Lines • Show Last 20 Lines |