1 /*
2 * Copyright (c) 2019-2021 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 #ifndef _TARGET_IF_CFR_DBR_H_
20 #define _TARGET_IF_CFR_DBR_H_
21
22 #define STREAMFS_MAX_SUBBUF_8S 8500
23 #define STREAMFS_NUM_SUBBUF_8S 255
24
25 /* Values used for computing number of tones */
26 #define TONES_IN_20MHZ 256
27 #define TONES_IN_40MHZ 512
28 #define TONES_IN_80MHZ 1024
29 #define TONES_IN_160MHZ 2048 /* 160 MHz isn't supported yet */
30 #define TONES_INVALID 0
31
32 #ifdef WLAN_CFR_DBR
33 /**
34 * cfr_dbr_init_pdev() - Inits cfr pdev and registers necessary handlers.
35 * @psoc: pointer to psoc object
36 * @pdev: pointer to pdev object
37 *
38 * Return: Registration status for necessary handlers
39 */
40 QDF_STATUS cfr_dbr_init_pdev(struct wlan_objmgr_psoc *psoc,
41 struct wlan_objmgr_pdev *pdev);
42
43 /**
44 * cfr_dbr_deinit_pdev() - De-inits corresponding pdev and handlers.
45 * @psoc: pointer to psoc object
46 * @pdev: pointer to pdev object
47 *
48 * Return: De-registration status for necessary handlers
49 */
50 QDF_STATUS cfr_dbr_deinit_pdev(struct wlan_objmgr_psoc *psoc,
51 struct wlan_objmgr_pdev *pdev);
52 #else
53 static inline
cfr_dbr_init_pdev(struct wlan_objmgr_psoc * psoc,struct wlan_objmgr_pdev * pdev)54 QDF_STATUS cfr_dbr_init_pdev(struct wlan_objmgr_psoc *psoc,
55 struct wlan_objmgr_pdev *pdev)
56 {
57 return QDF_STATUS_E_NOSUPPORT;
58 }
59
60 static inline
cfr_dbr_deinit_pdev(struct wlan_objmgr_psoc * psoc,struct wlan_objmgr_pdev * pdev)61 QDF_STATUS cfr_dbr_deinit_pdev(struct wlan_objmgr_psoc *psoc,
62 struct wlan_objmgr_pdev *pdev)
63 {
64 return QDF_STATUS_E_NOSUPPORT;
65 }
66 #endif
67 #endif
68
69