Go to the documentation of this file.00001 #ifndef _ATH5K_INTERFACE_H_
00002 #define _ATH5K_INTERFACE_H_
00003
00004 #include <stdbool.h>
00005
00006
00007 #define SIO_SEND_PACKET (SIOCDEVPRIVATE + 0)
00008 #define SIO_RECV_PACKET (SIOCDEVPRIVATE + 1)
00009 #define SIO_SET_CONFIG (SIOCDEVPRIVATE + 2)
00010 #define SIO_SET_DEBUG (SIOCDEVPRIVATE + 3)
00011 #define SIO_SET_RXFILTER (SIOCDEVPRIVATE + 4)
00012 #define SIO_SET_TXCONTROL (SIOCDEVPRIVATE + 5)
00013 #define SIO_SET_DISABLEACK (SIOCDEVPRIVATE + 6)
00014 #define SIO_SET_BSSID (SIOCDEVPRIVATE + 7)
00015 #define SIO_SET_BSSIDFILTER (SIOCDEVPRIVATE + 8)
00016 #define SIO_SET_USE_BEACON_FRAMES (SIOCDEVPRIVATE + 9)
00017
00018
00019
00020 enum rates
00021 {
00022 RATE_1M = 10,
00023 RATE_2M = 20,
00024 RATE_5_5M = 55,
00025 RATE_11M = 110,
00026 RATE_6M = 60,
00027 RATE_9M = 90,
00028 RATE_12M = 120,
00029 RATE_18M = 180,
00030 RATE_24M = 240,
00031 RATE_36M = 360,
00032 RATE_48M = 480,
00033 RATE_54M = 540
00034 };
00035
00036 enum ath5k_ant_mode {
00037 AR5K_ANTMODE_DEFAULT = 0,
00038 AR5K_ANTMODE_FIXED_A = 1,
00039 AR5K_ANTMODE_FIXED_B = 2,
00040 AR5K_ANTMODE_SINGLE_AP = 3,
00041 AR5K_ANTMODE_SECTOR_AP = 4,
00042 AR5K_ANTMODE_SECTOR_STA = 5,
00043 AR5K_ANTMODE_DEBUG = 6,
00044 AR5K_ANTMODE_MAX,
00045 };
00046
00047
00072 enum ath5k_debug_level {
00073 ATH5K_DEBUG_NONE = 0x00000000,
00074 ATH5K_DEBUG_RESET = 0x00000001,
00075 ATH5K_DEBUG_INTR = 0x00000002,
00076 ATH5K_DEBUG_MODE = 0x00000004,
00077 ATH5K_DEBUG_XMIT = 0x00000008,
00078 ATH5K_DEBUG_BEACON = 0x00000010,
00079 ATH5K_DEBUG_CALIBRATE = 0x00000020,
00080 ATH5K_DEBUG_TXPOWER = 0x00000040,
00081 ATH5K_DEBUG_LED = 0x00000080,
00082 ATH5K_DEBUG_DUMP_RX = 0x00000100,
00083 ATH5K_DEBUG_DUMP_TX = 0x00000200,
00084 ATH5K_DEBUG_DUMPBANDS = 0x00000400,
00085 ATH5K_DEBUG_TRACE = 0x00001000,
00086 ATH5K_DEBUG_ANY = 0xffffffff
00087 };
00088
00089
00090
00091
00092
00093
00094
00095
00096
00097
00098
00099
00100
00101 struct ath5k_config_info
00102 {
00103 unsigned short frequency;
00104 enum rates rate;
00105 unsigned char tx_power_dbm;
00106 enum ath5k_ant_mode antenna_mode;
00107 };
00108
00109
00110
00111
00112
00113
00114
00115 struct ath5k_rxfilter_info
00116 {
00117 bool broadcast;
00118 bool control;
00119 bool promisc;
00120 };
00121
00122
00123
00124
00125
00126
00127
00128
00129
00130
00131
00132 struct ath5k_txcontrol_info
00133 {
00134 unsigned char count;
00135 bool wait_for_ack;
00136 bool use_short_preamble;
00137 };
00138
00139
00140
00141
00142
00143
00144 union ath5k_ioctl_info
00145 {
00146 unsigned int debug_level;
00147 struct ath5k_config_info config_info;
00148 struct ath5k_rxfilter_info rxfilter_info;
00149 struct ath5k_txcontrol_info txcontrol_info;
00150 bool disable_ack;
00151 };
00152
00153 #endif