Lines Matching +full:high +full:- +full:quality
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
7 * Authors : Jean Tourrilhes - HPL - <jt@hpl.hp.com>
8 * Copyright (c) 1997-2007 Jean Tourrilhes, All Rights Reserved.
16 * Initial APIs (1996 -> onward) :
17 * -----------------------------
44 * New driver API (2002 -> onward) :
45 * -------------------------------
53 * Wireless Events (2002 -> onward) :
54 * --------------------------------
59 * --------------
96 * --------
98 * - Encryption renamed to Encode to avoid US regulation problems
99 * - Frequency changed from float to struct to avoid problems on old 386
102 * --------
103 * - Add sensitivity
106 * --------
107 * - Missing encoding definitions in range
108 * - Access points stuff
111 * --------
112 * - 802.11 support (ESSID ioctls)
115 * --------
116 * - define IW_ESSID_MAX_SIZE and IW_MAX_AP
119 * --------
120 * - Changed my e-mail address
121 * - More 802.11 support (nickname, rate, rts, frag)
122 * - List index in frequencies
125 * --------
126 * - Support for 'mode of operation' (ad-hoc, managed...)
127 * - Support for unicast and multicast power saving
128 * - Change encoding to support larger tokens (>64 bits)
129 * - Updated iw_params (disable, flags) and use it for NWID
130 * - Extracted iw_point from iwreq for clarity
133 * ---------
134 * - Add PM capability to range structure
135 * - Add PM modifier : MAX/MIN/RELATIVE
136 * - Add encoding option : IW_ENCODE_NOKEY
137 * - Add TxPower ioctls (work like TxRate)
140 * ----------
141 * - Add WE version in range (help backward/forward compatibility)
142 * - Add retry ioctls (work like PM)
145 * ----------
146 * - Add SIOCSIWSTATS to get /proc/net/wireless programatically
147 * - Add DEV PRIVATE IOCTL to avoid collisions in SIOCDEVPRIVATE space
148 * - Add new statistics (frag, retry, beacon)
149 * - Add average quality (for user space calibration)
152 * ----------
153 * - Document creation of new driver API.
154 * - Extract union iwreq_data from struct iwreq (for new driver API).
155 * - Rename SIOCSIWNAME as SIOCSIWCOMMIT
158 * ----------
159 * - Wireless Events support : define struct iw_event
160 * - Define additional specific event numbers
161 * - Add "addr" and "param" fields in union iwreq_data
162 * - AP scanning stuff (SIOCSIWSCAN and friends)
165 * ----------
166 * - Add IW_PRIV_TYPE_ADDR for struct sockaddr private arg
167 * - Make struct iw_freq signed (both m & e), add explicit padding
168 * - Add IWEVCUSTOM for driver specific event/scanning token
169 * - Add IW_MAX_GET_SPY for driver returning a lot of addresses
170 * - Add IW_TXPOW_RANGE for range of Tx Powers
171 * - Add IWEVREGISTERED & IWEVEXPIRED events for Access Points
172 * - Add IW_MODE_MONITOR for passive monitor
175 * ----------
176 * - Increase the number of bitrates in iw_range to 32 (for 802.11g)
177 * - Increase the number of frequencies in iw_range to 32 (for 802.11b+a)
178 * - Reshuffle struct iw_range for increases, add filler
179 * - Increase IW_MAX_AP to 64 for driver returning a lot of addresses
180 * - Remove IW_MAX_GET_SPY because conflict with enhanced spy support
181 * - Add SIOCSIWTHRSPY/SIOCGIWTHRSPY and "struct iw_thrspy"
182 * - Add IW_ENCODE_TEMP and iw_range->encoding_login_index
185 * ----------
186 * - Add flags to frequency -> auto/fixed
187 * - Document (struct iw_quality *)->updated, add new flags (INVALID)
188 * - Wireless Event capability in struct iw_range
189 * - Add support for relative TxPower (yick !)
192 * ----------
193 * - Add support for WPA/WPA2
194 * - Add extended encoding configuration (SIOCSIWENCODEEXT and
196 * - Add SIOCSIWGENIE/SIOCGIWGENIE
197 * - Add SIOCSIWMLME
198 * - Add SIOCSIWPMKSA
199 * - Add struct iw_range bit field for supported encoding capabilities
200 * - Add optional scan request parameters for SIOCSIWSCAN
201 * - Add SIOCSIWAUTH/SIOCGIWAUTH for setting authentication and WPA
203 * - Add wireless events: IWEVGENIE, IWEVMICHAELMICFAILURE,
207 * ----------
208 * - Remove (struct iw_point *)->pointer from events and streams
209 * - Remove header includes to help user space
210 * - Increase IW_ENCODING_TOKEN_MAX from 32 to 64
211 * - Add IW_QUAL_ALL_UPDATED and IW_QUAL_ALL_INVALID macros
212 * - Add explicit flag to tell stats are in dBm : IW_QUAL_DBM
213 * - Add IW_IOCTL_IDX() and IW_EVENT_IDX() macros
216 * ----------
217 * - RtNetlink requests support (SET/GET)
220 * ----------
221 * - Remove (struct net_device *)->get_wireless_stats()
222 * - Change length in ESSID and NICK to strlen() instead of strlen()+1
223 * - Add IW_RETRY_SHORT/IW_RETRY_LONG retry modifiers
224 * - Power/Retry relative values no longer * 100000
225 * - Add explicit flag to tell stats are in 802.11k RCPI : IW_QUAL_RCPI
228 * ----------
229 * - Prevent leaking of kernel space in stream on 64 bits.
234 /* -------------------------- IOCTL LIST -------------------------- */
240 * Common values : "IEEE 802.11-DS", "IEEE 802.11-FH", "IEEE 802.11b"...
244 #define SIOCSIWNWID 0x8B02 /* set network id (pre-802.11) */
263 /* Spy support (statistics per MAC address - used for Mobile IP support) */
265 #define SIOCGIWSPY 0x8B11 /* get spy info (quality of link) */
328 /* -------------------- DEV PRIVATE IOCTL LIST -------------------- */
341 * 'mii-tool'.
342 * We now have 32 commands, so a bit more space ;-).
350 /* ------------------------- IOCTL STUFF ------------------------- */
355 #define IW_IOCTL_IDX(cmd) ((cmd) - SIOCIWFIRST)
363 /* ----------------------- WIRELESS EVENTS ----------------------- */
368 #define IWEVQUAL 0x8C01 /* Quality part of statistics (scan) */
398 * pre-authentication
402 #define IW_EVENT_IDX(cmd) ((cmd) - IWEVFIRST)
404 /* ------------------------- PRIVATE INFO ------------------------- */
408 * Privates ioctl are SIOCIWFIRSTPRIV -> SIOCIWLASTPRIV
428 /* ----------------------- OTHER CONSTANTS ----------------------- */
493 #define IW_ENCODE_RESTRICTED 0x4000 /* Refuse non-encoded packets */
494 #define IW_ENCODE_OPEN 0x2000 /* Accept non-encoded packets */
541 #define IW_SCAN_ALL_RATE 0x0040 /* Scan all Bit-Rates */
542 #define IW_SCAN_THIS_RATE 0x0080 /* Scan only this Bit-Rate */
549 /* Scan capability flags - in (struct iw_range *)->scan_capa */
559 /* Max number of char in custom event - use multiple of them if needed */
627 /* struct iw_encode_ext ->alg */
634 /* struct iw_encode_ext ->ext_flags */
640 /* IWEVMICHAELMICFAILURE : struct iw_michaelmicfailure ->flags */
655 /* Event capability macros - in (struct iw_range *)->event_capa
659 (cmd - SIOCIWFIRSTPRIV + 0x60) : \
660 (cmd - SIOCIWFIRST))
663 /* Event capability constants - event autogenerated by the kernel
676 /* --------------------------- SUBTYPES --------------------------- */
714 * Quality of the link
717 __u8 qual; /* link quality (%retries, SNR,
748 * Quality range (for spy threshold)
752 struct iw_quality qual; /* Quality of the link */
754 struct iw_quality high; /* High threshold */ member
789 * These are based on the MLME-SCAN.request from IEEE Std 802.11.
803 /* ------------------------- WPA SUPPORT ------------------------- */
809 * only the data contents changes (key data -> this structure, including
869 #define IW_PMKID_CAND_PREAUTH 0x00000001 /* RNS pre-authentication enabled */
877 /* ------------------------ WIRELESS STATS ------------------------ */
883 * - device dependent for now */
885 struct iw_quality qual; /* Quality of the link
891 /* ------------------------ IOCTL REQUEST ------------------------ */
903 /* Config - generic */
909 struct iw_param nwid; /* network id (or domain - the cell) */
911 * 0-1000 = channel
924 struct iw_quality qual; /* Quality part of statistics */
949 /* -------------------------- IOCTL DATA -------------------------- */
973 /* Old Frequency (backward compat - moved lower ) */
986 /* Quality of link & SNR stuff */
987 /* Quality range (link, level, noise)
988 * If the quality is absolute, it will be in the range [0 ; max_qual],
989 * if the quality is dBm, it will be in the range [max_qual ; 0].
991 struct iw_quality max_qual; /* Quality of the link */
992 /* This should contain the average/typical values of the quality
995 * Currently, user space apps like quality monitors don't have any
997 * the range between 0 and max_qual in different quality level
1001 struct iw_quality avg_qual; /* Quality of the link */
1050 __u16 num_channels; /* Number of channels [0; num - 1] */
1070 /* ----------------------- WIRELESS EVENTS ----------------------- */
1087 #define IW_EV_LCP_LEN (sizeof(struct iw_event) - sizeof(union iwreq_data))
1100 #define IW_EV_POINT_LEN (IW_EV_LCP_LEN + sizeof(struct iw_point) - \