| IEEE80211(9) | Kernel Developer's Manual | IEEE80211(9) | 
ieee80211_ifattach,
  ieee80211_ifdetach,
  ieee80211_mhz2ieee,
  ieee80211_chan2ieee,
  ieee80211_ieee2mhz,
  ieee80211_media_init,
  ieee80211_media_change,
  ieee80211_media_status,
  ieee80211_watchdog,
  ieee80211_setmode,
  ieee80211_chan2mode,
  ieee80211_rate2media,
  ieee80211_media2rate —
#include
  <net80211/ieee80211_var.h>
#include
  <net80211/ieee80211_proto.h>
void
  
  ieee80211_ifattach(struct
    ieee80211com *ic);
void
  
  ieee80211_ifdetach(struct
    ieee80211com *ic);
u_int
  
  ieee80211_mhz2ieee(u_int
    freq, u_int
  flags);
u_int
  
  ieee80211_chan2ieee(struct
    ieee80211com *ic, struct
    ieee80211_channel *c);
u_int
  
  ieee80211_ieee2mhz(u_int
    chan, u_int
  flags);
void
  
  ieee80211_media_init(struct
    ieee80211com *ic, ifm_change_cb_t media_change,
    ifm_stat_cb_t media_stat);
int
  
  ieee80211_media_change(struct
    ifnet *ifp);
void
  
  ieee80211_media_status(struct
    ifnet *ifp, struct
    ifmediareq *imr);
void
  
  ieee80211_watchdog(struct
    ieee80211com *ic);
int
  
  ieee80211_setmode(struct
    ieee80211com *ic, enum
    ieee80211_phymode mode);
enum ieee80211_phymode
  
  ieee80211_chan2mode(struct
    ieee80211com *ic, struct ieee80211_channel
    *chan);
int
  
  ieee80211_rate2media(struct
    ieee80211com *ic, int rate, enum
    ieee80211_phymode mode);
int
  
  ieee80211_media2rate(int
    mword);
ieee80211 collection of functions are used to manage
  wireless network interfaces in the system which use the system's software
  802.11 network stack. Most of these functions require that attachment to the
  stack is performed before calling. Several utility functions are also
  provided; these are safe to call from any driver without prior initialization.
The ieee80211_ifattach() function attaches
    the wireless network interface ic to the 802.11
    network stack layer. This function must be called before using any of the
    ieee80211 functions which need to store driver state
    across invocations. This function also performs Ethernet and BPF attachment
    (by calling ether_ifattach() and
    bpfattach2()) on behalf of the caller.
The ieee80211_ifdetach() function frees
    any ieee80211 structures associated with the driver,
    and performs Ethernet and BPF detachment on behalf of the caller.
The ieee80211_mhz2ieee() utility function
    converts the frequency freq (specified in MHz) to an
    IEEE 802.11 channel number. The flags argument is a
    hint which specifies whether the frequency is in the 2GHz ISM band
    (IEEE80211_CHAN_2GHZ) or the 5GHz band
    (IEEE80211_CHAN_5GHZ); appropriate clipping of the
    result is then performed.
The ieee80211_chan2ieee() function
    converts the channel specified in *c to an IEEE
    channel number for the driver ic. If the conversion
    would be invalid, an error message is printed to the system console. This
    function REQUIRES that the driver is hooked up to the
    ieee80211 subsystem.
The ieee80211_ieee2mhz() utility function
    converts the IEEE channel number chan to a frequency
    (in MHz). The flags argument is a hint which specifies
    whether the frequency is in the 2GHz ISM band
    (IEEE80211_CHAN_2GHZ) or the 5GHz band
    (IEEE80211_CHAN_5GHZ); appropriate clipping of the
    result is then performed.
The ieee80211_media_init() function
    initializes media data structures used by the ifmedia
    interface for the driver ic. It must be called by the
    driver after calling ieee80211_ifattach() and before
    calling most ieee80211 functions. The
    media_change and media_stat
    arguments specify helper functions which will be invoked by the
    ifmedia framework when the user changes or queries
    media options, using a command such as
    ifconfig(8).
The ieee80211_media_status() and
    ieee80211_media_change() functions are
    device-independent handlers for ifmedia commands and
    are not intended to be called directly.
The ieee80211_watchdog() function is
    intended to be called from a driver's if_watchdog
    routine. It is used to perform periodic cleanup of state within the software
    802.11 stack, as well as timing out scans.
The ieee80211_setmode() function is called
    from within the 802.11 stack to change the mode of the driver's PHY; it is
    not intended to be called directly.
The ieee80211_chan2mode() function returns
    the PHY mode required for use with the channel chan on
    the device ic. This is typically used when selecting a
    rate set, to be advertised in beacons, for example.
The ieee80211_rate2media() function
    converts the bit rate rate (measured in units of
    0.5Mbps) to an ifmedia sub-type, for the device
    ic running in PHY mode mode. The
    ieee80211_media2rate() performs the reverse of this
    conversion, returning the bit rate (in 0.5Mbps units) corresponding to an
    ifmedia sub-type.
ieee80211 series of functions first appeared in
  NetBSD 1.5, and were later ported to
  FreeBSD 4.6.
| September 12, 2006 | NetBSD 10.0 |