/*
* Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
/*
* Copyright (c) 2006
* Damien Bergamini <damien.bergamini@free.fr>
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
#ifndef _WPIVAR_H
#define _WPIVAR_H
#ifdef __cplusplus
extern "C" {
#endif
#ifdef WPI_BPF
typedef struct wpi_rx_radiotap_header {
#define WPI_RX_RADIOTAP_PRESENT \
((1 << IEEE80211_RADIOTAP_TSFT) | \
(1 << IEEE80211_RADIOTAP_FLAGS) | \
(1 << IEEE80211_RADIOTAP_RATE) | \
(1 << IEEE80211_RADIOTAP_CHANNEL) | \
(1 << IEEE80211_RADIOTAP_DBM_ANTSIGNAL) | \
(1 << IEEE80211_RADIOTAP_DBM_ANTNOISE) | \
(1 << IEEE80211_RADIOTAP_ANTENNA))
typedef struct wpi_tx_radiotap_header {
#define WPI_TX_RADIOTAP_PRESENT \
((1 << IEEE80211_RADIOTAP_FLAGS) | \
(1 << IEEE80211_RADIOTAP_RATE) | \
(1 << IEEE80211_RADIOTAP_CHANNEL))
#endif
typedef struct wpi_dma_area {
/* >= product of above */
} wpi_dma_t;
typedef struct wpi_tx_data {
typedef struct wpi_tx_ring {
int qid;
int count;
int queued;
int cur;
typedef struct wpi_rx_data {
typedef struct wpi_rx_ring {
int cur;
typedef struct wpi_amrr {
int txcnt;
int retrycnt;
int success;
int success_threshold;
int recovery;
} wpi_amrr_t;
typedef struct wpi_softc {
enum ieee80211_state, int);
/* shared area */
/* dma */
const char *sc_boot;
const char *sc_text;
const char *sc_data;
/* kstats */
#ifdef WPI_BPF
union {
} sc_rxtapu;
int sc_rxtap_len;
union {
} sc_txtapu;
int sc_txtap_len;
#endif
} wpi_sc_t;
#define WPI_SUCCESS 0
#ifdef __cplusplus
}
#endif
#endif /* _WPIVAR_H */