Loading...
Note: File does not exist in v3.1.
1/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
2/*
3 * Copyright (C) 2013-2015 Intel Mobile Communications GmbH
4 * Copyright (C) 2013-2014, 2018-2024 Intel Corporation
5 * Copyright (C) 2015 Intel Deutschland GmbH
6 */
7#ifndef __MVM_CONSTANTS_H
8#define __MVM_CONSTANTS_H
9
10#include <linux/ieee80211.h>
11#include "fw-api.h"
12
13#define IWL_MVM_UAPSD_NOAGG_BSSIDS_NUM 20
14#define IWL_MVM_BT_COEX_DISABLE_ESR_THRESH 69
15#define IWL_MVM_BT_COEX_ENABLE_ESR_THRESH 63
16#define IWL_MVM_BT_COEX_WIFI_LOSS_THRESH 0
17#define IWL_MVM_TRIGGER_LINK_SEL_TIME_SEC 30
18#define IWL_MVM_TPT_COUNT_WINDOW_SEC 5
19#define IWL_MVM_BCN_LOSS_EXIT_ESR_THRESH_2_LINKS 5
20#define IWL_MVM_BCN_LOSS_EXIT_ESR_THRESH 15
21#define IWL_MVM_BCN_LOSS_EXIT_ESR_THRESH_BSS_PARAM_CHANGED 11
22#define IWL_MVM_LOW_RSSI_MLO_SCAN_THRESH -72
23
24#define IWL_MVM_DEFAULT_PS_TX_DATA_TIMEOUT (100 * USEC_PER_MSEC)
25#define IWL_MVM_DEFAULT_PS_RX_DATA_TIMEOUT (100 * USEC_PER_MSEC)
26#define IWL_MVM_WOWLAN_PS_TX_DATA_TIMEOUT (10 * USEC_PER_MSEC)
27#define IWL_MVM_WOWLAN_PS_RX_DATA_TIMEOUT (10 * USEC_PER_MSEC)
28#define IWL_MVM_SHORT_PS_TX_DATA_TIMEOUT (2 * 1024) /* defined in TU */
29#define IWL_MVM_SHORT_PS_RX_DATA_TIMEOUT (40 * 1024) /* defined in TU */
30#define IWL_MVM_P2P_LOWLATENCY_PS_ENABLE 1
31#define IWL_MVM_UAPSD_RX_DATA_TIMEOUT (50 * USEC_PER_MSEC)
32#define IWL_MVM_UAPSD_TX_DATA_TIMEOUT (50 * USEC_PER_MSEC)
33#define IWL_MVM_UAPSD_QUEUES (IEEE80211_WMM_IE_STA_QOSINFO_AC_VO |\
34 IEEE80211_WMM_IE_STA_QOSINFO_AC_VI |\
35 IEEE80211_WMM_IE_STA_QOSINFO_AC_BK |\
36 IEEE80211_WMM_IE_STA_QOSINFO_AC_BE)
37#define IWL_MVM_PS_HEAVY_TX_THLD_PACKETS 20
38#define IWL_MVM_PS_HEAVY_RX_THLD_PACKETS 8
39#define IWL_MVM_PS_SNOOZE_HEAVY_TX_THLD_PACKETS 30
40#define IWL_MVM_PS_SNOOZE_HEAVY_RX_THLD_PACKETS 20
41#define IWL_MVM_PS_HEAVY_TX_THLD_PERCENT 50
42#define IWL_MVM_PS_HEAVY_RX_THLD_PERCENT 50
43#define IWL_MVM_PS_SNOOZE_INTERVAL 25
44#define IWL_MVM_PS_SNOOZE_WINDOW 50
45#define IWL_MVM_WOWLAN_PS_SNOOZE_WINDOW 25
46#define IWL_MVM_LOWLAT_QUOTA_MIN_PERCENT 64
47#define IWL_MVM_BT_COEX_EN_RED_TXP_THRESH 62
48#define IWL_MVM_BT_COEX_DIS_RED_TXP_THRESH 65
49#define IWL_MVM_BT_COEX_SYNC2SCO 1
50#define IWL_MVM_BT_COEX_MPLUT 1
51#define IWL_MVM_BT_COEX_RRC 1
52#define IWL_MVM_BT_COEX_TTC 1
53#define IWL_MVM_BT_COEX_MPLUT_REG0 0x22002200
54#define IWL_MVM_BT_COEX_MPLUT_REG1 0x11118451
55#define IWL_MVM_BT_COEX_ANTENNA_COUPLING_THRS 30
56#define IWL_MVM_FW_MCAST_FILTER_PASS_ALL 0
57#define IWL_MVM_FW_BCAST_FILTER_PASS_ALL 0
58#define IWL_MVM_QUOTA_THRESHOLD 4
59#define IWL_MVM_RS_RSSI_BASED_INIT_RATE 0
60#define IWL_MVM_RS_80_20_FAR_RANGE_TWEAK 1
61#define IWL_MVM_TOF_IS_RESPONDER 0
62#define IWL_MVM_ADWELL_ENABLE 1
63#define IWL_MVM_ADWELL_MAX_BUDGET 0
64#define IWL_MVM_TCM_LOAD_MEDIUM_THRESH 10 /* percentage */
65#define IWL_MVM_TCM_LOAD_HIGH_THRESH 50 /* percentage */
66#define IWL_MVM_TCM_LOWLAT_ENABLE_THRESH 100 /* packets/10 seconds */
67#define IWL_MVM_UAPSD_NONAGG_PERIOD 5000 /* msecs */
68#define IWL_MVM_UAPSD_NOAGG_LIST_LEN IWL_MVM_UAPSD_NOAGG_BSSIDS_NUM
69#define IWL_MVM_NON_TRANSMITTING_AP 0
70#define IWL_MVM_CONN_LISTEN_INTERVAL 10
71#define IWL_MVM_RS_NUM_TRY_BEFORE_ANT_TOGGLE 1
72#define IWL_MVM_RS_HT_VHT_RETRIES_PER_RATE 2
73#define IWL_MVM_RS_HT_VHT_RETRIES_PER_RATE_TW 1
74#define IWL_MVM_RS_INITIAL_MIMO_NUM_RATES 3
75#define IWL_MVM_RS_INITIAL_SISO_NUM_RATES 3
76#define IWL_MVM_RS_INITIAL_LEGACY_NUM_RATES 2
77#define IWL_MVM_RS_INITIAL_LEGACY_RETRIES 2
78#define IWL_MVM_RS_SECONDARY_LEGACY_RETRIES 1
79#define IWL_MVM_RS_SECONDARY_LEGACY_NUM_RATES 16
80#define IWL_MVM_RS_SECONDARY_SISO_NUM_RATES 3
81#define IWL_MVM_RS_SECONDARY_SISO_RETRIES 1
82#define IWL_MVM_RS_RATE_MIN_FAILURE_TH 3
83#define IWL_MVM_RS_RATE_MIN_SUCCESS_TH 8
84#define IWL_MVM_RS_STAY_IN_COLUMN_TIMEOUT 5 /* Seconds */
85#define IWL_MVM_RS_IDLE_TIMEOUT 5 /* Seconds */
86#define IWL_MVM_RS_MISSED_RATE_MAX 15
87#define IWL_MVM_RS_LEGACY_FAILURE_LIMIT 160
88#define IWL_MVM_RS_LEGACY_SUCCESS_LIMIT 480
89#define IWL_MVM_RS_LEGACY_TABLE_COUNT 160
90#define IWL_MVM_RS_NON_LEGACY_FAILURE_LIMIT 400
91#define IWL_MVM_RS_NON_LEGACY_SUCCESS_LIMIT 4500
92#define IWL_MVM_RS_NON_LEGACY_TABLE_COUNT 1500
93#define IWL_MVM_RS_SR_FORCE_DECREASE 15 /* percent */
94#define IWL_MVM_RS_SR_NO_DECREASE 85 /* percent */
95#define IWL_MVM_RS_AGG_TIME_LIMIT 4000 /* 4 msecs. valid 100-8000 */
96#define IWL_MVM_RS_AGG_DISABLE_START 3
97#define IWL_MVM_RS_AGG_START_THRESHOLD 10 /* num frames per second */
98#define IWL_MVM_RS_TPC_SR_FORCE_INCREASE 75 /* percent */
99#define IWL_MVM_RS_TPC_SR_NO_INCREASE 85 /* percent */
100#define IWL_MVM_RS_TPC_TX_POWER_STEP 3
101#define IWL_MVM_ENABLE_EBS 1
102#define IWL_MVM_FTM_INITIATOR_ALGO IWL_TOF_ALGO_TYPE_MAX_LIKE
103#define IWL_MVM_FTM_INITIATOR_DYNACK true
104#define IWL_MVM_FTM_LMR_FEEDBACK_TERMINATE false
105#define IWL_MVM_FTM_TEST_INCORRECT_SAC false
106#define IWL_MVM_FTM_R2I_MAX_REP 7
107#define IWL_MVM_FTM_I2R_MAX_REP 7
108#define IWL_MVM_FTM_R2I_MAX_STS 1
109#define IWL_MVM_FTM_I2R_MAX_STS 1
110#define IWL_MVM_FTM_R2I_MAX_TOTAL_LTF 3
111#define IWL_MVM_FTM_I2R_MAX_TOTAL_LTF 3
112#define IWL_MVM_FTM_INITIATOR_SECURE_LTF false
113#define IWL_MVM_FTM_RESP_NDP_SUPPORT true
114#define IWL_MVM_FTM_RESP_LMR_FEEDBACK_SUPPORT true
115#define IWL_MVM_FTM_NON_TB_MIN_TIME_BETWEEN_MSR 7
116#define IWL_MVM_FTM_NON_TB_MAX_TIME_BETWEEN_MSR 1000
117#define IWL_MVM_D3_DEBUG false
118#define IWL_MVM_USE_TWT true
119#define IWL_MVM_AMPDU_CONSEC_DROPS_DELBA 20
120#define IWL_MVM_FTM_INITIATOR_ENABLE_SMOOTH false
121#define IWL_MVM_FTM_INITIATOR_SMOOTH_ALPHA 40
122/* 20016 pSec is 6 meter RTT, meaning 3 meter range */
123#define IWL_MVM_FTM_INITIATOR_SMOOTH_UNDERSHOOT 20016
124#define IWL_MVM_FTM_INITIATOR_SMOOTH_OVERSHOOT 20016
125#define IWL_MVM_FTM_INITIATOR_SMOOTH_AGE_SEC 2
126#define IWL_MVM_DISABLE_AP_FILS false
127#define IWL_MVM_6GHZ_PASSIVE_SCAN_TIMEOUT 3000 /* in seconds */
128#define IWL_MVM_6GHZ_PASSIVE_SCAN_ASSOC_TIMEOUT 60 /* in seconds */
129#define IWL_MVM_MIN_BEACON_INTERVAL_TU 16
130#define IWL_MVM_AUTO_EML_ENABLE true
131
132#define IWL_MVM_HIGH_RSSI_THRESH_20MHZ -67
133#define IWL_MVM_LOW_RSSI_THRESH_20MHZ -71
134#define IWL_MVM_HIGH_RSSI_THRESH_40MHZ -64
135#define IWL_MVM_LOW_RSSI_THRESH_40MHZ -67
136#define IWL_MVM_HIGH_RSSI_THRESH_80MHZ -61
137#define IWL_MVM_LOW_RSSI_THRESH_80MHZ -74
138#define IWL_MVM_HIGH_RSSI_THRESH_160MHZ -58
139#define IWL_MVM_LOW_RSSI_THRESH_160MHZ -61
140
141#define IWL_MVM_ENTER_ESR_TPT_THRESH 400
142#endif /* __MVM_CONSTANTS_H */