1 /*
2 * Copyright (c) 2020 The Linux Foundation. All rights reserved.
3 * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
4 *
5 * Permission to use, copy, modify, and/or distribute this software for
6 * any purpose with or without fee is hereby granted, provided that the
7 * above copyright notice and this permission notice appear in all
8 * copies.
9 *
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
11 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
12 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
13 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
14 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
15 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
16 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
17 * PERFORMANCE OF THIS SOFTWARE.
18 */
19
20 /**
21 * DOC: target_if_cfr_adrastea.h
22 *
23 * Target interface of CFR for ADRASTEA implementation
24 *
25 */
26
27 #ifndef _TARGET_IF_CFR_ADRASTEA_H
28 #define _TARGET_IF_CFR_ADRASTEA_H
29
30 /* Max size:
31 * 532 = 112 bytes(csi_cfr_header) + 416 bytes(cfr payload) + 4 bytes(trailer)
32 */
33 #define STREAMFS_MAX_SUBBUF_ADRASTEA 532
34
35 #define STREAMFS_NUM_BUF_SUBBUF_ADRASTEA 255
36
37 #ifdef WLAN_CFR_ADRASTEA
38 /**
39 * cfr_adrastea_init_pdev() - Init pdev cfr for ADRASTEA
40 * @psoc: pointer to psoc object
41 * @pdev: pointer to pdev object
42 *
43 * Init pdev cfr parameters
44 *
45 * Return: QDF status
46 */
47 QDF_STATUS cfr_adrastea_init_pdev(struct wlan_objmgr_psoc *psoc,
48 struct wlan_objmgr_pdev *pdev);
49
50 /**
51 * cfr_adrastea_deinit_pdev() - De-init pdev cfr for ADRASTEA
52 * @psoc: pointer to psoc object
53 * @pdev: pointer to pdev object
54 *
55 * Deinit pdev cfr parameters
56 *
57 * Return: QDF status
58 */
59 QDF_STATUS cfr_adrastea_deinit_pdev(struct wlan_objmgr_psoc *psoc,
60 struct wlan_objmgr_pdev *pdev);
61 #else
62 static inline
cfr_adrastea_init_pdev(struct wlan_objmgr_psoc * psoc,struct wlan_objmgr_pdev * pdev)63 QDF_STATUS cfr_adrastea_init_pdev(struct wlan_objmgr_psoc *psoc,
64 struct wlan_objmgr_pdev *pdev)
65 {
66 return QDF_STATUS_SUCCESS;
67 }
68
69 static inline
cfr_adrastea_deinit_pdev(struct wlan_objmgr_psoc * psoc,struct wlan_objmgr_pdev * pdev)70 QDF_STATUS cfr_adrastea_deinit_pdev(struct wlan_objmgr_psoc *psoc,
71 struct wlan_objmgr_pdev *pdev)
72 {
73 return QDF_STATUS_SUCCESS;
74 }
75 #endif
76
77 #endif /* _TARGET_IF_CFR_ADRASTEA_H */
78
79