1 /*
2  * Copyright (c) 2012-2018 The Linux Foundation. All rights reserved.
3  *
4  * Permission to use, copy, modify, and/or distribute this software for
5  * any purpose with or without fee is hereby granted, provided that the
6  * above copyright notice and this permission notice appear in all
7  * copies.
8  *
9  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
10  * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
11  * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
12  * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
13  * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
14  * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
15  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
16  * PERFORMANCE OF THIS SOFTWARE.
17  */
18 
19 /**
20  * DOC: This file contains centralized definitions of QOS related
21  * converged configurations.
22  */
23 
24 #ifndef __CFG_MLME_MBO_H
25 #define __CFG_MLME_MBO_H
26 
27 /*
28  * <ini>
29  * g_mbo_candidate_rssi_thres - Candidate AP's minimum RSSI to accept
30  * @Min: -120
31  * @Max: 0
32  * @Default: -72
33  *
34  * This ini specifies the minimum RSSI value a candidate should have to accept
35  * it as a target for transition.
36  *
37  * Related: N/A
38  *
39  * Supported Feature: MBO
40  *
41  * Usage: Internal
42  *
43  * </ini>
44  */
45 #define CFG_MBO_CANDIDATE_RSSI_THRESHOLD CFG_INI_INT( \
46 			"g_mbo_candidate_rssi_thres", \
47 			-120, \
48 			0, \
49 			-72, \
50 			CFG_VALUE_OR_DEFAULT, \
51 			"candidate AP rssi threshold")
52 /*
53  * <ini>
54  * g_mbo_current_rssi_thres - Connected AP's RSSI threshold to consider a
55  * transition
56  * @Min: -120
57  * @Max: 0
58  * @Default: -65
59  *
60  * This ini is used to configure connected AP's RSSI threshold value to consider
61  * a transition.
62  *
63  * Related: N/A
64  *
65  * Supported Feature: MBO
66  *
67  * Usage: Internal
68  *
69  * </ini>
70  */
71 #define CFG_MBO_CURRENT_RSSI_THRESHOLD CFG_INI_INT( \
72 			"g_mbo_current_rssi_thres", \
73 			-120, \
74 			0, \
75 			-65, \
76 			CFG_VALUE_OR_DEFAULT, \
77 			"current AP rssi threshold")
78 
79 /*
80  * <ini>
81  * g_mbo_current_rssi_mcc_thres - connected AP's RSSI threshold value to prefer
82  * against a MCC
83  * @Min: -120
84  * @Max: 0
85  * @Default: -75
86  *
87  * This ini is used to configure connected AP's minimum RSSI threshold that is
88  * preferred against a MCC case, if the candidate can cause MCC.
89  *
90  * Related: N/A
91  *
92  * Supported Feature: MBO
93  *
94  * Usage: Internal
95  *
96  * </ini>
97  */
98 #define CFG_MBO_CUR_RSSI_MCC_THRESHOLD CFG_INI_INT( \
99 		"g_mbo_current_rssi_mcc_thres", \
100 		-120, \
101 		0, \
102 		-75, \
103 		CFG_VALUE_OR_DEFAULT, \
104 		"current AP mcc rssi threshold")
105 
106 /*
107  * <ini>
108  * g_mbo_candidate_rssi_btc_thres -  Candidate AP's minimum RSSI threshold to
109  * prefer it even in case of BT coex
110  * @Min: -120
111  * @Max: 0
112  * @Default: -70
113  *
114  * This ini is used to configure candidate AP's minimum RSSI threshold to prefer
115  * it for transition even in case of BT coex.
116  *
117  * Related: N/A
118  *
119  * Supported Feature: MBO
120  *
121  * Usage: Internal
122  *
123  * </ini>
124  */
125 #define CFG_MBO_CAND_RSSI_BTC_THRESHOLD CFG_INI_INT( \
126 		"g_mbo_candidate_rssi_btc_thres", \
127 		-120, \
128 		0, \
129 		-70, \
130 		CFG_VALUE_OR_DEFAULT, \
131 		"candidate AP rssi threshold")
132 
133 #define CFG_MBO_ALL \
134 	CFG(CFG_MBO_CANDIDATE_RSSI_THRESHOLD) \
135 	CFG(CFG_MBO_CURRENT_RSSI_THRESHOLD) \
136 	CFG(CFG_MBO_CUR_RSSI_MCC_THRESHOLD) \
137 	CFG(CFG_MBO_CAND_RSSI_BTC_THRESHOLD)
138 
139 #endif /* __CFG_MLME_MBO_H */
140