Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
canghaiwuhen
OpenXG-RAN
Commits
8994e7ff
Commit
8994e7ff
authored
Sep 16, 2019
by
chenhsunyang0922
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix eNB_rxtx_proc_NB_IoT
parent
3310f4f8
Changes
10
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
62 additions
and
46 deletions
+62
-46
openair1/PHY/LTE_UE_TRANSPORT/transport_proto_ue.h
openair1/PHY/LTE_UE_TRANSPORT/transport_proto_ue.h
+3
-2
openair1/PHY/NBIoT_TRANSPORT/ulsch_demodulation_NB_IoT.c
openair1/PHY/NBIoT_TRANSPORT/ulsch_demodulation_NB_IoT.c
+3
-3
openair1/PHY/defs_NB_IoT.h
openair1/PHY/defs_NB_IoT.h
+15
-0
openair1/SCHED/phy_procedures_lte_eNb.c
openair1/SCHED/phy_procedures_lte_eNb.c
+1
-1
openair1/SCHED_NBIOT/IF_Module_L1_primitives_NB_IoT.c
openair1/SCHED_NBIOT/IF_Module_L1_primitives_NB_IoT.c
+2
-2
openair1/SCHED_NBIOT/IF_Module_L1_primitives_NB_IoT.h
openair1/SCHED_NBIOT/IF_Module_L1_primitives_NB_IoT.h
+1
-1
openair1/SCHED_NBIOT/defs_NB_IoT.h
openair1/SCHED_NBIOT/defs_NB_IoT.h
+8
-8
openair1/SCHED_NBIOT/phy_procedures_lte_eNb_NB_IoT.c
openair1/SCHED_NBIOT/phy_procedures_lte_eNb_NB_IoT.c
+9
-9
openair1/SCHED_NBIOT/phy_procedures_lte_eNb_nbiot.c
openair1/SCHED_NBIOT/phy_procedures_lte_eNb_nbiot.c
+19
-19
openair2/LAYER2/MAC/defs_NB_IoT.h
openair2/LAYER2/MAC/defs_NB_IoT.h
+1
-1
No files found.
openair1/PHY/LTE_UE_TRANSPORT/transport_proto_ue.h
View file @
8994e7ff
...
...
@@ -35,6 +35,7 @@
#include "PHY/LTE_TRANSPORT/transport_common_proto.h"
#include <math.h>
#include "nfapi_interface.h"
#include "PHY/defs_NB_IoT.h"
// Functions below implement 36-211 and 36-212
...
...
@@ -323,7 +324,7 @@ int mch_modulation(int32_t **txdataF,
@param abstraction_flag
*/
void
generate_mch
(
PHY_VARS_eNB
*
phy_vars_eNB
,
eNB_rxtx_proc_t
*
proc
,
uint8_t
*
a
);
void
generate_mch
(
PHY_VARS_eNB
*
phy_vars_eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
uint8_t
*
a
);
/** \brief This function generates the frequency-domain pilots (cell-specific downlink reference signals)
@param phy_vars_eNB Pointer to eNB variables
...
...
@@ -400,7 +401,7 @@ int32_t generate_pilots_slot(PHY_VARS_eNB *phy_vars_eNB,
int
first_pilot_only
);
int32_t
generate_mbsfn_pilot
(
PHY_VARS_eNB
*
phy_vars_eNB
,
eNB_rxtx_proc_t
*
proc
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
int32_t
**
txdataF
,
int16_t
amp
);
...
...
openair1/PHY/NBIoT_TRANSPORT/ulsch_demodulation_NB_IoT.c
View file @
8994e7ff
...
...
@@ -1506,7 +1506,7 @@ void descrambling_NPUSCH_ack_NB_IoT(LTE_DL_FRAME_PARMS *fp,
//////////////////////////////////////////////////////////////////////////////////////////
uint32_t
turbo_decoding_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
NB_IoT_eNB_NULSCH_t
*
ulsch_NB_IoT
,
eNB_rxtx_proc_
t
*
proc
,
eNB_rxtx_proc_
NB_IoT_NB_IoT_t
*
proc
,
uint8_t
npusch_format
,
unsigned
int
G
,
uint8_t
rvdx
,
...
...
@@ -1687,7 +1687,7 @@ void deinterleaving_NPUSCH_data_NB_IoT(NB_IoT_UL_eNB_HARQ_t *ulsch_harq, int16_t
void
decode_NPUSCH_msg_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
LTE_DL_FRAME_PARMS
*
fp
,
eNB_rxtx_proc_t
*
proc
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
uint8_t
npusch_format
,
uint16_t
N_SF_per_word
,
uint16_t
Nsc_RU
,
...
...
@@ -1852,7 +1852,7 @@ void decode_NPUSCH_msg_NB_IoT(PHY_VARS_eNB *eNB,
uint8_t
rx_ulsch_Gen_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
uint8_t
eNB_id
,
// this is the effective sector id
uint8_t
UE_id
,
uint16_t
UL_RB_ID_NB_IoT
,
// 22 , to be included in // to be replaced by NB_IoT_start ??
...
...
openair1/PHY/defs_NB_IoT.h
View file @
8994e7ff
...
...
@@ -286,6 +286,21 @@ typedef struct {
pthread_mutex_t
mutex_l2
;
int
instance_cnt_l2
;
pthread_attr_t
attr_l2
;
uint32_t
frame_msg5
;
uint32_t
subframe_msg5
;
int
subframe_real
;
uint8_t
flag_scrambling
;
uint8_t
flag_msg3
;
uint8_t
counter_msg3
;
uint32_t
frame_msg3
;
uint8_t
flag_msg4
;
uint8_t
counter_msg4
;
uint32_t
frame_msg4
;
uint32_t
subframe_msg4
;
uint8_t
counter_msg5
;
uint8_t
flag_msg5
;
uint32_t
frame_dscr_msg5
;
uint32_t
subframe_dscr_msg5
;
}
eNB_rxtx_proc_NB_IoT_t
;
/*
...
...
openair1/SCHED/phy_procedures_lte_eNb.c
View file @
8994e7ff
...
...
@@ -2003,5 +2003,5 @@ void phy_procedures_eNB_uespec_RX(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc) {
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME
(
VCD_SIGNAL_DUMPER_FUNCTIONS_PHY_PROCEDURES_ENB_RX_UESPEC
,
0
);
}
#endif
openair1/SCHED_NBIOT/IF_Module_L1_primitives_NB_IoT.c
View file @
8994e7ff
...
...
@@ -50,7 +50,7 @@ int Irep_to_Nrep_x[16] = {1,2,4,8,16,32,64,128,192,256,384,512,768,1024,1536,204
void
handle_nfapi_dlsch_pdu_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
nfapi_dl_config_request_pdu_t
*
dl_config_pdu
,
uint8_t
*
sdu
)
{
...
...
@@ -282,7 +282,7 @@ void schedule_response_NB_IoT(Sched_Rsp_NB_IoT_t *Sched_INFO)
//LOG_I(PHY,"schedule_response_NB_IoT\n");
//XXX check if correct to take eNB like this
PHY_VARS_eNB
*
eNB
=
PHY_vars_eNB_g
[
0
][
Sched_INFO
->
CC_id
];
eNB_rxtx_proc_t
*
proc
=
&
eNB
->
proc
.
proc_rxtx
[
0
];
eNB_rxtx_proc_
NB_IoT_
t
*
proc
=
&
eNB
->
proc
.
proc_rxtx
[
0
];
NB_IoT_eNB_NPBCH_t
*
npbch
;
///
int
i
;
...
...
openair1/SCHED_NBIOT/IF_Module_L1_primitives_NB_IoT.h
View file @
8994e7ff
...
...
@@ -14,7 +14,7 @@
void
handle_nfapi_dlsch_pdu_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
nfapi_dl_config_request_pdu_t
*
dl_config_pdu
,
uint8_t
*
sdu
);
...
...
openair1/SCHED_NBIOT/defs_NB_IoT.h
View file @
8994e7ff
...
...
@@ -19,22 +19,22 @@ enum openair_HARQ_TYPE_NB_IoT {
void
process_schedule_rsp_NB_IoT
(
Sched_Rsp_NB_IoT_t
*
sched_rsp
,
PHY_VARS_eNB_NB_IoT
*
eNB
,
eNB_rxtx_proc_t
*
proc
);
eNB_rxtx_proc_
NB_IoT_
t
*
proc
);
/*Processing the ue-specific resources for uplink in NB-IoT*/
void
phy_procedures_eNB_uespec_RX_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
);
// UL_IND_NB_IoT_t *UL_INFO);
void
phy_procedures_eNB_uespec_RX_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
);
// UL_IND_NB_IoT_t *UL_INFO);
/* For NB-IoT, we put NPBCH in later part, since it would be scheduled by MAC scheduler,this generates NRS/NPSS/NSSS*/
void
common_signal_procedures_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
);
void
common_signal_procedures_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
);
/*Generate the ulsch params and do the mapping for the FAPI style parameters to OAI, and then do the packing*/
void
generate_eNB_ulsch_params_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
nfapi_hi_dci0_request_pdu_t
*
hi_dci0_pdu
);
void
generate_eNB_ulsch_params_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
nfapi_hi_dci0_request_pdu_t
*
hi_dci0_pdu
);
/*Generate the dlsch params and do the mapping for the FAPI style parameters to OAI, and then do the packing*/
void
generate_eNB_dlsch_params_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
nfapi_dl_config_request_pdu_t
*
dl_config_pdu
);
void
generate_eNB_dlsch_params_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
nfapi_dl_config_request_pdu_t
*
dl_config_pdu
);
/*Process all the scheduling result from MAC and also common signals.*/
void
phy_procedures_eNB_TX_NB_IoT
(
PHY_VARS_eNB_NB_IoT
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
int
do_meas
);
void
phy_procedures_eNB_TX_NB_IoT
(
PHY_VARS_eNB_NB_IoT
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
int
do_meas
);
int8_t
find_ue_NB_IoT
(
uint16_t
rnti
,
PHY_VARS_eNB
*
eNB
);
...
...
@@ -50,10 +50,10 @@ uint32_t is_SIB1_NB_IoT(const frame_t frameP,
uint32_t
rx_nprach_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
int
frame
,
uint8_t
subframe
,
uint16_t
*
rnti
,
uint16_t
*
preamble_index
,
uint16_t
*
timing_advance
);
void
npusch_procedures
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
);
void
npusch_procedures
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
);
////////////////// NB-IoT testing ////////////////////
void
fill_rx_indication_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
uint8_t
data_or_control
,
uint8_t
decode_flag
);
void
fill_rx_indication_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
uint8_t
data_or_control
,
uint8_t
decode_flag
);
void
fill_crc_indication_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
int
UE_id
,
int
frame
,
int
subframe
,
uint8_t
decode_flag
);
...
...
openair1/SCHED_NBIOT/phy_procedures_lte_eNb_NB_IoT.c
View file @
8994e7ff
...
...
@@ -213,7 +213,7 @@ uint32_t is_SIB1_NB_IoT(const frame_t frameP,
* It generates NRS/NPSS/NSSS
*
*/
void
common_signal_procedures_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
)
void
common_signal_procedures_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
)
{
//LTE_DL_FRAME_PARMS *fp = &eNB->frame_parms_NB_IoT;
LTE_DL_FRAME_PARMS
*
fp
=
&
eNB
->
frame_parms
;
...
...
@@ -401,7 +401,7 @@ void common_signal_procedures_NB_IoT(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc)
}
void
phy_procedures_eNB_uespec_RX_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
)
//UL_IND_NB_IoT_t *UL_INFO)
void
phy_procedures_eNB_uespec_RX_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
)
//UL_IND_NB_IoT_t *UL_INFO)
{
//RX processing for ue-specific resources (i
//NB_IoT_DL_FRAME_PARMS *fp=&eNB->frame_parms_NB_IoT;
...
...
@@ -437,7 +437,7 @@ void phy_procedures_eNB_uespec_RX_NB_IoT(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc
}
/////////////////////////////////////////////////////////// backup ////////////////////////////////////////////////////////
/*void phy_procedures_eNB_uespec_RX_NB_IoT(PHY_VARS_eNB_NB_IoT *eNB,eNB_rxtx_proc_t *proc, UL_IND_NB_IoT_t *UL_INFO)
/*void phy_procedures_eNB_uespec_RX_NB_IoT(PHY_VARS_eNB_NB_IoT *eNB,eNB_rxtx_proc_
NB_IoT_
t *proc, UL_IND_NB_IoT_t *UL_INFO)
{
//RX processing for ue-specific resources (i
uint32_t ret=0,i,j,k;
...
...
@@ -762,7 +762,7 @@ void phy_procedures_eNB_uespec_RX_NB_IoT(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc
/////Generate eNB ndlsch params for NB-IoT from the NPDCCH PDU of the DCI, modify the input to the Sched Rsp variable////
*/
void
generate_eNB_dlsch_params_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
nfapi_dl_config_request_pdu_t
*
dl_config_pdu
)
void
generate_eNB_dlsch_params_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
nfapi_dl_config_request_pdu_t
*
dl_config_pdu
)
{
int
UE_id
=
-
1
;
LTE_DL_FRAME_PARMS
*
fp
=
&
eNB
->
frame_parms
;
...
...
@@ -911,7 +911,7 @@ void generate_eNB_dlsch_params_NB_IoT(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t * proc,n
void
generate_eNB_ulsch_params_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
nfapi_hi_dci0_request_pdu_t
*
hi_dci0_pdu
)
{
void
generate_eNB_ulsch_params_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
nfapi_hi_dci0_request_pdu_t
*
hi_dci0_pdu
)
{
//int UE_id = -1;
//int harq_pid = 0;
...
...
@@ -966,7 +966,7 @@ void generate_eNB_ulsch_params_NB_IoT(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc,nf
* ** redundancy version exist only in UL for NB-IoT and not in DL
*/
void
npdsch_procedures
(
PHY_VARS_eNB_NB_IoT
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
//Context data structure for RX/TX portion of subframe processing
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
//Context data structure for RX/TX portion of subframe processing
NB_IoT_eNB_NDLSCH_t
*
ndlsch
,
//int num_pdcch_symbols, //(BCOM says are not needed
uint8_t
*
pdu
...
...
@@ -1228,7 +1228,7 @@ extern int oai_exit;
*/
void
phy_procedures_eNB_TX_NB_IoT
(
PHY_VARS_eNB_NB_IoT
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
int
do_meas
)
{
int
frame
=
proc
->
frame_tx
;
...
...
@@ -1607,7 +1607,7 @@ void fill_crc_indication_NB_IoT(PHY_VARS_eNB *eNB,int UE_id,int frame,int subfra
pthread_mutex_unlock
(
&
eNB
->
UL_INFO_mutex
);
}
void
fill_rx_indication_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
uint8_t
data_or_control
,
uint8_t
decode_flag
)
void
fill_rx_indication_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
uint8_t
data_or_control
,
uint8_t
decode_flag
)
{
nfapi_rx_indication_pdu_t
*
pdu
;
nfapi_nb_harq_indication_pdu_t
*
ack_ind
;
// &eNB->UL_INFO.nb_harq_ind.nb_harq_indication_body.nb_harq_pdu_list[0] // nb_harq_indication_fdd_rel13->harq_tb1
...
...
@@ -1680,7 +1680,7 @@ void fill_rx_indication_NB_IoT(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc,uint8_t d
void
npusch_procedures
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
)
void
npusch_procedures
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
)
{
uint32_t
i
;
...
...
openair1/SCHED_NBIOT/phy_procedures_lte_eNb_nbiot.c
View file @
8994e7ff
...
...
@@ -127,7 +127,7 @@ extern int rx_sig_fifo;
#endif
uint8_t
is_SR_subframe
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
uint8_t
UE_id
)
uint8_t
is_SR_subframe
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
uint8_t
UE_id
)
{
const
int
subframe
=
proc
->
subframe_rx
;
...
...
@@ -322,7 +322,7 @@ void phy_procedures_emos_eNB_TX(unsigned char subframe, PHY_VARS_eNB *eNB)
}
#endif
void
phy_procedures_eNB_S_RX
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
relaying_type_t
r_type
)
void
phy_procedures_eNB_S_RX
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
relaying_type_t
r_type
)
{
UNUSED
(
r_type
);
int
subframe
=
proc
->
subframe_rx
;
...
...
@@ -419,7 +419,7 @@ unsigned int taus(void);
DCI_PDU
DCI_pdu_tmp
;
void
pmch_procedures
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
PHY_VARS_RN
*
rn
,
relaying_type_t
r_type
)
{
void
pmch_procedures
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
PHY_VARS_RN
*
rn
,
relaying_type_t
r_type
)
{
#if defined(Rel10) || defined(Rel14)
...
...
@@ -506,7 +506,7 @@ int16_t buffer_npusch_ext[153600];
//int32_t llr_msg5[16];
//int32_t y_msg5[16];
void
common_signal_procedures
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
)
{
void
common_signal_procedures
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
)
{
LTE_DL_FRAME_PARMS
*
fp
=&
eNB
->
frame_parms
;
int
**
txdataF
=
eNB
->
common_vars
.
txdataF
[
0
];
...
...
@@ -877,7 +877,7 @@ if(proc->flag_msg4 == 1 && proc->counter_msg4 > 0)
/////////////////////////////////////////////////////////////////////////
}
void
generate_eNB_dlsch_params
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
DCI_ALLOC_t
*
dci_alloc
,
const
int
UE_id
)
{
void
generate_eNB_dlsch_params
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
DCI_ALLOC_t
*
dci_alloc
,
const
int
UE_id
)
{
LTE_DL_FRAME_PARMS
*
fp
=&
eNB
->
frame_parms
;
int
frame
=
proc
->
frame_tx
;
...
...
@@ -1022,7 +1022,7 @@ void generate_eNB_dlsch_params(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc,DCI_ALLOC
}
void
generate_eNB_ulsch_params
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
DCI_ALLOC_t
*
dci_alloc
,
const
int
UE_id
)
{
void
generate_eNB_ulsch_params
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
DCI_ALLOC_t
*
dci_alloc
,
const
int
UE_id
)
{
int
harq_pid
;
LTE_DL_FRAME_PARMS
*
fp
=&
eNB
->
frame_parms
;
...
...
@@ -1118,7 +1118,7 @@ void generate_eNB_ulsch_params(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc,DCI_ALLOC
}
void
pdsch_procedures
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
LTE_eNB_DLSCH_t
*
dlsch
,
LTE_eNB_DLSCH_t
*
dlsch1
,
LTE_eNB_UE_stats
*
ue_stats
,
...
...
@@ -1373,7 +1373,7 @@ void pdsch_procedures(PHY_VARS_eNB *eNB,
}
void
phy_procedures_eNB_TX
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
relaying_type_t
r_type
,
PHY_VARS_RN
*
rn
,
int
do_meas
,
...
...
@@ -1748,7 +1748,7 @@ void phy_procedures_eNB_TX(PHY_VARS_eNB *eNB,
}
void
process_Msg3
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
uint8_t
UE_id
,
uint8_t
harq_pid
)
void
process_Msg3
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
uint8_t
UE_id
,
uint8_t
harq_pid
)
{
// this prepares the demodulation of the first PUSCH of a new user, containing Msg3
int
subframe
=
proc
->
subframe_rx
;
...
...
@@ -1785,7 +1785,7 @@ void process_Msg3(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc,uint8_t UE_id, uint8_t
void
process_HARQ_feedback
(
uint8_t
UE_id
,
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
uint8_t
pusch_flag
,
uint8_t
*
pucch_payload
,
uint8_t
pucch_sel
,
...
...
@@ -2058,7 +2058,7 @@ void process_HARQ_feedback(uint8_t UE_id,
}
void
get_n1_pucch_eNB
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
uint8_t
UE_id
,
int16_t
*
n1_pucch0
,
int16_t
*
n1_pucch1
,
...
...
@@ -2409,7 +2409,7 @@ void prach_procedures(PHY_VARS_eNB *eNB) {
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_PHY_ENB_PRACH_RX,0);*/
}
void
pucch_procedures
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
int
UE_id
,
int
harq_pid
,
uint8_t
do_srs
)
void
pucch_procedures
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
int
UE_id
,
int
harq_pid
,
uint8_t
do_srs
)
{
LTE_DL_FRAME_PARMS
*
fp
=&
eNB
->
frame_parms
;
uint8_t
SR_payload
=
0
,
*
pucch_payload
=
NULL
,
pucch_payload0
[
2
]
=
{
0
,
0
},
pucch_payload1
[
2
]
=
{
0
,
0
};
...
...
@@ -2750,7 +2750,7 @@ void pucch_procedures(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc,int UE_id,int harq
}
void
cba_procedures
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
int
UE_id
,
int
harq_pid
)
{
void
cba_procedures
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
int
UE_id
,
int
harq_pid
)
{
uint8_t
access_mode
;
int
num_active_cba_groups
;
...
...
@@ -3013,7 +3013,7 @@ void init_te_thread(PHY_VARS_eNB *eNB,pthread_attr_t *attr_te) {
}
*/
void
eNB_fep_full_2thread
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc_rxtx
)
{
void
eNB_fep_full_2thread
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc_rxtx
)
{
eNB_proc_t
*
proc
=
&
eNB
->
proc
;
...
...
@@ -3059,7 +3059,7 @@ void eNB_fep_full_2thread(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc_rxtx) {
void
eNB_fep_full
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc_rxtx
)
{
void
eNB_fep_full
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc_rxtx
)
{
int
l
;
LTE_DL_FRAME_PARMS
*
fp
=&
eNB
->
frame_parms
;
...
...
@@ -3099,7 +3099,7 @@ void eNB_fep_full(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc_rxtx) {
}
}
void
eNB_fep_rru_if5
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc_rxtx
)
{
void
eNB_fep_rru_if5
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc_rxtx
)
{
eNB_proc_t
*
proc
=&
eNB
->
proc
;
uint8_t
seqno
=
0
;
...
...
@@ -3160,7 +3160,7 @@ if(frame%2==0 && subframe==9)
}
void
phy_procedures_eNB_common_RX
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
){
void
phy_procedures_eNB_common_RX
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
){
// eNB_proc_t *proc = &eNB->proc;
...
...
@@ -3193,7 +3193,7 @@ void phy_procedures_eNB_common_RX(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc){
}
/*
void fill_rx_indication_NB_IoT(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc,uint8_t data_or_control, uint8_t msg3_flag)
void fill_rx_indication_NB_IoT(PHY_VARS_eNB *eNB,eNB_rxtx_proc_
NB_IoT_
t *proc,uint8_t data_or_control, uint8_t msg3_flag)
{
nfapi_rx_indication_pdu_t *pdu;
...
...
@@ -3235,7 +3235,7 @@ void fill_rx_indication_NB_IoT(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc,uint8_t d
}
*/
void
phy_procedures_eNB_uespec_RX
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
const
relaying_type_t
r_type
)
void
phy_procedures_eNB_uespec_RX
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_
NB_IoT_
t
*
proc
,
const
relaying_type_t
r_type
)
{
//RX processing for ue-specific resources (i
UNUSED
(
r_type
);
...
...
openair2/LAYER2/MAC/defs_NB_IoT.h
View file @
8994e7ff
...
...
@@ -593,7 +593,7 @@ typedef struct {
nprach_parameters_NB_IoT_t
nprach_list
[
3
];
nfapi_config_request_t
config
;
//DLSF Table
DLSF_INFO_t
DLSF_information
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment