1 /*
2  * Copyright (c) 2020, The Linux Foundation. All rights reserved.
3  * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
4  *
5  * Permission to use, copy, modify, and/or distribute this software for any
6  * purpose with or without fee is hereby granted, provided that the above
7  * copyright notice and this permission notice appear in all copies.
8  *
9  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16  */
17 
18 #if !defined(__FTM_TIME_SYNC_CFG_H__)
19 #define __FTM_TIME_SYNC_CFG_H__
20 
21 /**
22  * DOC: ftm_time_sync_cfg.h
23  *
24  * FTM TIME SYNC feature INI configuration parameter definitions
25  */
26 
27 #ifdef FEATURE_WLAN_TIME_SYNC_FTM
28 
29 #include "cfg_define.h"
30 #include "cfg_converged.h"
31 #include "qdf_types.h"
32 
33 /*
34  * <ini>
35  * enable_time_sync_ftm - Time Sync FTM feature support
36  * @Min: 0
37  * @Max: 1
38  * @Default: 0
39  *
40  * When set to 1 Time Sync FTM feature will be enabled.
41  *
42  * Supported Feature: Time Sync FTM
43  *
44  * Usage: External
45  *
46  * </ini>
47  */
48 #define CFG_ENABLE_TIME_SYNC_FTM CFG_INI_BOOL("enable_time_sync_ftm", \
49 				    0, \
50 				    "Enable Time Sync FTM Support")
51 /*
52  * <ini>
53  * time_sync_ftm_mode- Time Sync FTM feature Mode configuration
54  * @Min: 0 - Aggregated Mode
55  * @Max: 1 - Burst Mode
56  * @Default: 0
57  *
58  * This ini is applicable only if enable_time_sync_ftm  is set to 1.
59  *
60  * Supported Feature: Time Sync FTM
61  *
62  * Usage: External
63  *
64  * </ini>
65  */
66 #define CFG_TIME_SYNC_FTM_MODE CFG_INI_BOOL("time_sync_ftm_mode", \
67 				    0, \
68 				    "Configure Time Sync FTM Mode")
69 /*
70  * <ini>
71  * time_sync_ftm_role- Time Sync FTM feature Role configuration
72  * @Min: 0 - Target Role
73  * @Max: 1 - Initiator Role
74  * @Default: 0
75  *
76  * This ini is applicable only if enable_time_sync_ftm is set to 1.
77  *
78  * Supported Feature: Time Sync FTM
79  *
80  * Usage: External
81  *
82  * </ini>
83  */
84 #define CFG_TIME_SYNC_FTM_ROLE CFG_INI_BOOL("time_sync_ftm_role", \
85 				    0, \
86 				    "Configure Time Sync FTM Role")
87 
88 #define CFG_TIME_SYNC_FTM_ALL \
89 	CFG(CFG_ENABLE_TIME_SYNC_FTM) \
90 	CFG(CFG_TIME_SYNC_FTM_MODE) \
91 	CFG(CFG_TIME_SYNC_FTM_ROLE)
92 
93 #else
94 #define CFG_TIME_SYNC_FTM_ALL
95 #endif /* FEATURE_WLAN_TIME_SYNC_FTM */
96 #endif /* __FTM_TIME_SYNC_CFG_H__ */
97