* INTC Contribution to the O-RAN F Release for O-DU Low
[o-du/phy.git] / fapi_5g / source / framework / wls / fapi2phy / nr5g_fapi_fapi2phy_wls.h
1 /******************************************************************************
2 *
3 *   Copyright (c) 2021 Intel.
4 *
5 *   Licensed under the Apache License, Version 2.0 (the "License");
6 *   you may not use this file except in compliance with the License.
7 *   You may obtain a copy of the License at
8 *
9 *       http://www.apache.org/licenses/LICENSE-2.0
10 *
11 *   Unless required by applicable law or agreed to in writing, software
12 *   distributed under the License is distributed on an "AS IS" BASIS,
13 *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 *   See the License for the specific language governing permissions and
15 *   limitations under the License.
16 *
17 *******************************************************************************/
18 /**
19  *
20  * @file This file has definitions of Shared Memory interface functions between
21  * FAPI and PHY.
22  *
23  **/
24
25 #ifndef _NR5G_FAPI2PHY_WLS_H_
26 #define _NR5G_FAPI2PHY_WLS_H_
27
28 #include "common_mac_phy_api.h"
29
30 uint8_t nr5g_fapi_fapi2phy_is_valid_wls_ptr(
31     void *data);
32 uint8_t nr5g_fapi_fapi2phy_wls_send(
33     void *data,
34     bool is_urllc);
35 PMAC2PHY_QUEUE_EL nr5g_fapi_fapi2phy_wls_recv(
36     );
37 uint32_t nr5g_fapi_fapi2phy_wls_wait(
38     );
39 void wls_fapi_add_send_apis_to_free(
40     PMAC2PHY_QUEUE_EL pListElem,
41     uint32_t idx);
42 void wls_fapi_free_send_free_list();
43 void wls_fapi_add_send_apis_to_free_urllc(
44     PMAC2PHY_QUEUE_EL pListElem,
45     uint32_t idx);
46 void wls_fapi_free_send_free_list_urllc();
47 void wls_fapi_add_recv_apis_to_free(
48     PMAC2PHY_QUEUE_EL pListElem,
49     uint32_t idx);
50 void wls_fapi_free_recv_free_list(
51     uint32_t idx);
52
53 #endif /*_NR5G_FAPI2PHY_WLS_H_*/