X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?p=o-du%2Fphy.git;a=blobdiff_plain;f=fhi_lib%2Flib%2Fsrc%2Fxran_main.h;fp=fhi_lib%2Flib%2Fsrc%2Fxran_main.h;h=b20c1e5ddde90f7cca33815683b8ca519aa2507a;hp=0000000000000000000000000000000000000000;hb=2de97529a4c5a1922214ba0e6f0fb84cacbd0bc7;hpb=81a09690b36b3a4e89b4dae34f30933de13f7f90 diff --git a/fhi_lib/lib/src/xran_main.h b/fhi_lib/lib/src/xran_main.h new file mode 100644 index 0000000..b20c1e5 --- /dev/null +++ b/fhi_lib/lib/src/xran_main.h @@ -0,0 +1,65 @@ +/****************************************************************************** +* +* Copyright (c) 2020 Intel. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +* +*******************************************************************************/ + +/** + * @brief XRAN main module header file + * @file xran_main.h + * @ingroup group_source_xran + * @author Intel Corporation + **/ + +#ifndef _XRAN_MAIN_H_ +#define _XRAN_MAIN_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include +#include +#include + +#include + +#include "xran_dev.h" + +extern uint32_t xran_lib_ota_tti[]; +extern uint32_t xran_lib_ota_sym[]; +extern uint32_t xran_lib_ota_sym_idx[]; + +extern uint16_t xran_SFN_at_Sec_Start; +extern uint16_t xran_max_frame; + +static struct timespec sleeptime = {.tv_nsec = 1E3 }; /* 1 us */ + +uint32_t xran_schedule_to_worker(enum xran_job_type_id job_type_id, struct xran_device_ctx * p_xran_dev_ctx); +uint16_t xran_getSfnSecStart(void); +void tx_cp_dl_cb(struct rte_timer *tim, void *arg); +void tx_cp_ul_cb(struct rte_timer *tim, void *arg); +void tti_to_phy_cb(struct rte_timer *tim, void *arg); + +void rx_ul_deadline_full_cb(struct rte_timer *tim, void *arg); +void rx_ul_user_sym_cb(struct rte_timer *tim, void *arg); +void rx_ul_deadline_half_cb(struct rte_timer *tim, void *arg); + +#ifdef __cplusplus +} +#endif + +#endif /* _XRAN_MAIN_H_ */