| Index: chromeos/drivers/ath6kl/include/wlan_api.h
|
| diff --git a/chromeos/drivers/ath6kl/include/wlan_api.h b/chromeos/drivers/ath6kl/include/wlan_api.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..e62a5f70be32707df2482a21e67ef6b586ded278
|
| --- /dev/null
|
| +++ b/chromeos/drivers/ath6kl/include/wlan_api.h
|
| @@ -0,0 +1,116 @@
|
| +//------------------------------------------------------------------------------
|
| +// <copyright file="wlan_api.h" company="Atheros">
|
| +// Copyright (c) 2004-2010 Atheros Corporation. All rights reserved.
|
| +//
|
| +// This program is free software; you can redistribute it and/or modify
|
| +// it under the terms of the GNU General Public License version 2 as
|
| +// published by the Free Software Foundation;
|
| +//
|
| +// Software distributed under the License is distributed on an "AS
|
| +// IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
| +// implied. See the License for the specific language governing
|
| +// rights and limitations under the License.
|
| +//
|
| +//
|
| +//------------------------------------------------------------------------------
|
| +//==============================================================================
|
| +// This file contains the API for the host wlan module
|
| +//
|
| +// Author(s): ="Atheros"
|
| +//==============================================================================
|
| +#ifndef _HOST_WLAN_API_H_
|
| +#define _HOST_WLAN_API_H_
|
| +
|
| +#ifdef __cplusplus
|
| +extern "C" {
|
| +#endif
|
| +
|
| +#include <a_osapi.h>
|
| +
|
| +struct ieee80211_node_table;
|
| +struct ieee80211_frame;
|
| +
|
| +struct ieee80211_common_ie {
|
| + A_UINT16 ie_chan;
|
| + A_UINT8 *ie_tstamp;
|
| + A_UINT8 *ie_ssid;
|
| + A_UINT8 *ie_rates;
|
| + A_UINT8 *ie_xrates;
|
| + A_UINT8 *ie_country;
|
| + A_UINT8 *ie_wpa;
|
| + A_UINT8 *ie_rsn;
|
| + A_UINT8 *ie_wmm;
|
| + A_UINT8 *ie_ath;
|
| + A_UINT16 ie_capInfo;
|
| + A_UINT16 ie_beaconInt;
|
| + A_UINT8 *ie_tim;
|
| + A_UINT8 *ie_chswitch;
|
| + A_UINT8 ie_erp;
|
| + A_UINT8 *ie_wsc;
|
| + A_UINT8 *ie_htcap;
|
| + A_UINT8 *ie_htop;
|
| +#ifdef WAPI_ENABLE
|
| + A_UINT8 *ie_wapi;
|
| +#endif
|
| +};
|
| +
|
| +typedef struct bss {
|
| + A_UINT8 ni_macaddr[6];
|
| + A_UINT8 ni_snr;
|
| + A_INT16 ni_rssi;
|
| + struct bss *ni_list_next;
|
| + struct bss *ni_list_prev;
|
| + struct bss *ni_hash_next;
|
| + struct bss *ni_hash_prev;
|
| + struct ieee80211_common_ie ni_cie;
|
| + A_UINT8 *ni_buf;
|
| + A_UINT16 ni_framelen;
|
| + struct ieee80211_node_table *ni_table;
|
| + A_UINT32 ni_refcnt;
|
| + int ni_scangen;
|
| +
|
| + A_UINT32 ni_tstamp;
|
| +#ifdef OS_ROAM_MANAGEMENT
|
| + A_UINT32 ni_si_gen;
|
| +#endif
|
| +} bss_t;
|
| +
|
| +typedef void wlan_node_iter_func(void *arg, bss_t *);
|
| +
|
| +bss_t *wlan_node_alloc(struct ieee80211_node_table *nt, int wh_size);
|
| +void wlan_node_free(bss_t *ni);
|
| +void wlan_setup_node(struct ieee80211_node_table *nt, bss_t *ni,
|
| + const A_UINT8 *macaddr);
|
| +bss_t *wlan_find_node(struct ieee80211_node_table *nt, const A_UINT8 *macaddr);
|
| +void wlan_node_reclaim(struct ieee80211_node_table *nt, bss_t *ni);
|
| +void wlan_free_allnodes(struct ieee80211_node_table *nt);
|
| +void wlan_iterate_nodes(struct ieee80211_node_table *nt, wlan_node_iter_func *f,
|
| + void *arg);
|
| +
|
| +void wlan_node_table_init(void *wmip, struct ieee80211_node_table *nt);
|
| +void wlan_node_table_reset(struct ieee80211_node_table *nt);
|
| +void wlan_node_table_cleanup(struct ieee80211_node_table *nt);
|
| +
|
| +A_STATUS wlan_parse_beacon(A_UINT8 *buf, int framelen,
|
| + struct ieee80211_common_ie *cie);
|
| +
|
| +A_UINT16 wlan_ieee2freq(int chan);
|
| +A_UINT32 wlan_freq2ieee(A_UINT16 freq);
|
| +
|
| +void wlan_set_nodeage(struct ieee80211_node_table *nt, A_UINT32 nodeAge);
|
| +
|
| +
|
| +bss_t *
|
| +wlan_find_Ssidnode (struct ieee80211_node_table *nt, A_UCHAR *pSsid,
|
| + A_UINT32 ssidLength, A_BOOL bIsWPA2, A_BOOL bMatchSSID);
|
| +
|
| +void
|
| +wlan_node_return (struct ieee80211_node_table *nt, bss_t *ni);
|
| +
|
| +bss_t *wlan_node_remove(struct ieee80211_node_table *nt, A_UINT8 *bssid);
|
| +
|
| +#ifdef __cplusplus
|
| +}
|
| +#endif
|
| +
|
| +#endif /* _HOST_WLAN_API_H_ */
|
|
|