Lines Matching +full:calib +full:- +full:sensitivity
1 /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
3 * Copyright (C) 2005-2014, 2023-2024 Intel Corporation
7 * Please use iwl-xxxx-hw.h for hardware-related definitions.
29 /* Multi-Station support */
93 /* RF-KILL commands and notifications */
138 * - 4 standard TX queues
139 * - the command queue
140 * - 4 PAN TX queues
141 * - the PAN multicast queue, and
142 * - the AUX (TX during scan dwell) queue.
160 /* re-uses the VO FIFO, uCode will properly flush/schedule */
189 * High-throughput (HT) rate format for bits 7:0 (bit 8 must be "1"):
190 * 2-0: 0) 6 Mbps
199 * 4-3: 0) Single stream (SISO)
206 * 3-0: 0xD) 6 Mbps
216 * 6-0: 10) 1 Mbps
292 s8 global_lmt; /*in half-dBm (e.g. 30 = 15 dBm) */
294 s8 srv_chan_lmt; /*in half-dBm (e.g. 30 = 15 dBm) */
330 * a 256-entry history of uCode execution within a circular buffer.
341 * __le32 event_id; range 0 - 1500
343 * __le32 data; event_id-specific data value
359 * read with u32-sized accesses, any members with a different size
370 u32 data1; /* error-specific data */
371 u32 data2; /* error-specific data */
490 /* rx response to host with 8-byte TSF
526 /* accept multi-cast */
528 /* don't decrypt uni-cast frames */
530 /* don't decrypt multi-cast frames */
544 * RXON_FILTER_ASSOC_MSK to 0. This will clear station-dependent
618 * @band: 0- 5.2GHz, 1- 2.4GHz
619 * @expect_beacon: 0- resume transmits after channel switch
620 * 1- wait for beacon to resume transmits
639 * @band: 0- 5.2GHz, 1- 2.4GHz
640 * @expect_beacon: 0- resume transmits after channel switch
641 * 1- wait for beacon to resume transmits
664 __le32 status; /* 0 - OK, 1 - fail */
669 * Quality-of-Service (QOS) Commands & Responses:
674 * struct iwl_ac_qos -- QOS timing params for REPLY_QOS_PARAM
678 * Should be a power-of-2, minus 1. Device's default is 0x0f.
680 * Should be a power-of-2, minus 1. Device's default is 0x3f.
763 /* wep key in STA: 5-bytes (0) or 13-bytes (1) */
784 __le16 tkip_rx_ttak[5]; /* 10-byte unicast TKIP TTAK */
787 u8 key[16]; /* 16-byte unicast decryption key */
802 * or the index to a pre-existing station entry when modifying that station.
818 * The device contains an internal table of per-station information,
824 * a new entry, or modifying a pre-existing one.
855 /* TID for which to add block-ack support.
859 /* TID for which to remove block-ack support.
863 /* Starting Sequence Number for added block-ack support.
869 * it is asleep -- used to synchronise PS-poll and u-APSD
1055 __le32 beacon_time_stamp; /* beacon at on-air rise */
1060 __le16 byte_count; /* frame's byte-count */
1083 * handle reception of block-acks; uCode updates the host driver via
1097 * 1: Use RTS/CTS protocol or CTS-to-self if spec allows it
1098 * before this frame. if CTS-to-self required check
1116 /* 1: Expect immediate block-ack.
1117 * Set when Txing a block-ack request frame. Also set TX_CMD_FLG_ACK_MSK. */
1129 * Set this for management frames, non-QOS data frames, non-unicast frames,
1133 /* 1: This frame is non-last MPDU; more fragments are coming.
1151 * 0 - no CCMP encryption; 1 - CCMP encryption */
1154 /* HCCA-AP - disable duration overwriting. */
1173 * Used for managing Tx retries when expecting block-acks.
1188 * + 8-byte MIC (not used for CCM/WEP)
1189 * NOTE: Does not include Tx command bytes, post-MAC pad bytes,
1191 * Range: 14-2342 bytes.
1221 * rate (via non-0 value) for special frames (e.g. management), while
1248 * Duration of EDCA burst Tx Opportunity, in 32-usec units.
1365 * 2 or more frames that used block-acknowledge. All frames were
1369 * Note that, for aggregation, ACK (block-ack) status is not delivered here;
1370 * block-ack has not been received by the time the agn device records
1393 /* For non-agg: Rate at which frame was successful.
1397 /* For non-agg: RTS + CTS + frame tx attempts time + ACK.
1398 * For agg: RTS + CTS + aggregation tx time + block-ack time. */
1413 * For non-agg: frame status TX_STATUS_*
1417 * 11- 0: AGG_TX_STATE_* status code
1418 * 15-12: Retry count for 1st frame in aggregation (retries
1423 * 31-16: Sequence # for this frame's Tx cmd (not SSN!)
1425 struct agg_tx_status status; /* TX status (in aggregation -
1431 * Reports Block-Acknowledge from recipient station
1438 /* Index of recipient (BA-sending) station in uCode's station table */
1489 * EDCA QOS access categories (as implemented by tx fifos 0-3),
1570 * 1) If using High-throughput (HT) (SISO or MIMO) initial rate:
1605 * (attempted - success), and control the size of the window (attempted).
1614 * which rate-specific history to update, and record only those attempts that
1617 * When using block-ack (aggregation), all frames are transmitted at the same
1618 * rate, since there is no per-attempt acknowledgment from the destination
1620 * rate_n_flags field. After receiving a block-ack, the driver can update
1668 * 6) Re-evaluate the rate after each tx frame. If working with block-
1671 * before re-evaluation.
1681 * For high-throughput modes (SISO or MIMO), search for new mode after:
1742 * Rate info; when using rate-scaling, Tx command's initial_rate_index
1754 * bit 0 - 1: BT channel announcement enabled
1756 * bit 1 - 1: priority of BT device enabled
1758 * bit 2 - 1: BT 2 wire support enabled
1822 #define IWLAGN_BT_PSP_MIN_RSSI_THRESHOLD -75 /* dBm */
1823 #define IWLAGN_BT_PSP_MAX_RSSI_THRESHOLD -65 /* dBm */
1884 * bit 1 - 7: reserved
1951 u8 id; /* measurement id -- 0 or 1 */
1970 __le16 status; /* 0 - command will be handled
1971 * 1 - cannot handle (conflicts with another
1985 /* 4-5 reserved */
2018 u8 id; /* measurement id -- 0 or 1 */
2021 u8 state; /* 0 - start, 1 - stop */
2022 __le32 start_time; /* lower 32-bits of TSF */
2023 u8 band; /* 0 - 5.2GHz, 1 - 2.4GHz */
2032 u8 basic_type; /* 0 - bss, 1 - ofdm preamble, 2 -
2036 __le32 stop_time; /* lower 32-bits of TSF */
2047 * struct iwl_powertable_cmd - Power Table Command
2053 * bit 0 - '0' Driver not allow power management
2057 * bit 1 - '0' Don't send sleep notification
2061 * bit 2 - '0' PM have to walk up every DTIM
2065 * bit 3 - '0' (PCI_CFG_LINK_CTRL & 0x1)
2069 * bit 4 - '1' Put radio to sleep when receiving frame for others
2072 * bit 31/30- '00' use both mac/xtal sleeps
2077 * NOTE: if sleep_interval[SLEEP_INTRVL_TABLE_SIZE-1] > DTIM period then
2178 * struct iwl_scan_channel - entry in REPLY_SCAN_CMD channel table
2184 * 3) How long to stay on-channel (behavior may be modified by quiet_time,
2192 * 3) If restricting off-channel time (i.e. max_out_time !=0):
2209 __le16 active_dwell; /* in 1024-uSec TU (time units), typ 5-50 */
2210 __le16 passive_dwell; /* in 1024-uSec TU (time units), typ 20-500 */
2214 #define IWL_SCAN_PROBE_MASK(n) cpu_to_le32((BIT(n) | (BIT(n) - BIT(1))))
2217 * struct iwl_ssid_ie - directed scan network information element
2247 * max_out_time is the max time off-channel (in usec), and suspend_time
2259 * 3) Sends NULL packet, with power-save (PS) bit set to 1,
2260 * to tell AP that we're going off-channel
2264 * 7) Repeats 4-6 until it no longer has time to scan the next channel
2269 * 11) Repeats entire process 2-10 until list is complete
2293 /* bits 2-7 reserved */
2303 __le16 good_CRC_th; /* passive -> active promotion threshold */
2313 /* For active scans (set to all-0s for passive scans).
2317 /* For directed active scans (set to all-0s otherwise) */
2561 * struct statistics_tx_power - current tx power
2635 * count the number of times we have to re-tune
2736 * to when driver will perform sensitivity calibration.
2739 * sensitivity calibration based on number of consecutive missed beacons in
2766 * 3) Receiver sensitivity (to optimize signal detection)
2773 * This command sets up the Rx signal detector for a sensitivity level that
2782 * time listening, not transmitting). Driver must adjust sensitivity so that
2787 * sensitivity. Don't analyze statistics that come in from scanning, or any
2788 * other non-associated-network source. Pertinent statistics include:
2806 * Signal locks abandoned early (before phy-level header).
2809 * Signal locks abandoned late (during phy-level header).
2814 * after counting up to 2^32 - 1. Driver must differentiate vs.
2822 * maximum sensitivity):
2831 * (greater than 50 for each 204.8 msecs listening), reduce sensitivity
2835 * increase sensitivity.
2837 * For CCK sensitivity, keep track of the following:
2839 * 1). 20-beacon history of maximum background noise, indicated by
2844 * 2). 10-beacon history of strongest signal level, as indicated
2862 * (notice that the start points for CCK are at maximum sensitivity):
2871 * sensitivity is:
2877 * sensitivity has been reduced a significant amount; bring it up to
2881 * sensitivity has been reduced only a moderate or small amount;
2890 * sensitivity is used only if:
2894 * "silence reference" (prev - current) is 2 or more,
2898 * Method for increasing sensitivity:
2961 #define ENHANCE_HD_TABLE_ENTRIES (ENHANCE_HD_TABLE_SIZE - HD_TABLE_SIZE)
3021 * in from scanning, or any other non-network source).
3055 * (accum_noise[i] - accum_noise[reference]) / 30
3059 * driver should limit the difference results to a range of 0-3 (0-4.5 dB),
3065 * 1-0: amount of gain, units of 1.5 dB
3214 * RP - Requested Priority
3215 * WP - Win Medium Priority: priority assigned when the contention has been won
3304 /* un-association part */
3368 * bit 0 - 2: medium status
3370 * bit 4 - 31: reserved
3372 /* status option values, (0 - 2 bits) */
3431 /* BT UART message - Share Part (BT -> WiFi) */
3529 /* BT Session Activity 2 UART message (BT -> WiFi) */
3607 #define BT_ENABLE_REDUCED_TXPOWER_THRESHOLD (-62)
3608 #define BT_DISABLE_REDUCED_TXPOWER_THRESHOLD (-65)
3623 u8 bt_status; /* 0 - off, 1 - on */
3625 u8 bt_ci_compliance; /* 0 - not complied, 1 - complied */
3645 BT_COEX_PRIO_TBL_EVT_PERIODIC_CALIB_LOW2 = 3, /* DC calib */
3852 * 0 - BSS
3853 * 1 - PAN
3875 * 1 - work in slotted mode
3876 * 0 - work in non slotted mode
3881 * @num_slots: 1 - 10
3882 * @slots: per-slot data