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
wangjie
OpenXG-RAN
Commits
4a86d53c
Commit
4a86d53c
authored
Aug 01, 2019
by
laurent
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
remove unused variable, use enum instead of 0/1/2 for LTE-M UE type
parent
5ddad9bd
Changes
9
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
30 additions
and
56 deletions
+30
-56
nfapi/open-nFAPI/nfapi/public_inc/nfapi_interface.h
nfapi/open-nFAPI/nfapi/public_inc/nfapi_interface.h
+6
-0
openair1/PHY/LTE_ESTIMATION/lte_ul_channel_estimation.c
openair1/PHY/LTE_ESTIMATION/lte_ul_channel_estimation.c
+1
-1
openair1/PHY/LTE_TRANSPORT/dci_tools.c
openair1/PHY/LTE_TRANSPORT/dci_tools.c
+0
-11
openair1/PHY/LTE_TRANSPORT/transport_common.h
openair1/PHY/LTE_TRANSPORT/transport_common.h
+1
-12
openair1/PHY/LTE_TRANSPORT/transport_eNB.h
openair1/PHY/LTE_TRANSPORT/transport_eNB.h
+3
-5
openair1/SCHED/phy_procedures_lte_eNb.c
openair1/SCHED/phy_procedures_lte_eNb.c
+7
-15
openair2/LAYER2/MAC/eNB_scheduler_RA.c
openair2/LAYER2/MAC/eNB_scheduler_RA.c
+4
-4
openair2/LAYER2/MAC/eNB_scheduler_bch.c
openair2/LAYER2/MAC/eNB_scheduler_bch.c
+5
-5
openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
+3
-3
No files found.
nfapi/open-nFAPI/nfapi/public_inc/nfapi_interface.h
View file @
4a86d53c
...
@@ -1422,6 +1422,12 @@ typedef struct {
...
@@ -1422,6 +1422,12 @@ typedef struct {
}
nfapi_dl_config_dlsch_pdu_rel12_t
;
}
nfapi_dl_config_dlsch_pdu_rel12_t
;
#define NFAPI_DL_CONFIG_REQUEST_DLSCH_PDU_REL12_TAG 0x203D
#define NFAPI_DL_CONFIG_REQUEST_DLSCH_PDU_REL12_TAG 0x203D
typedef
enum
{
NOCE
,
CEMODEA
,
CEMODEB
}
UE_type_t
;
typedef
struct
{
typedef
struct
{
nfapi_tl_t
tl
;
nfapi_tl_t
tl
;
uint8_t
dwpts_symbols
;
uint8_t
dwpts_symbols
;
...
...
openair1/PHY/LTE_ESTIMATION/lte_ul_channel_estimation.c
View file @
4a86d53c
...
@@ -97,7 +97,7 @@ int32_t lte_ul_channel_estimation(PHY_VARS_eNB *eNB,
...
@@ -97,7 +97,7 @@ int32_t lte_ul_channel_estimation(PHY_VARS_eNB *eNB,
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
if
(
eNB
->
ulsch
[
UE_id
]
->
ue_type
>
0
)
harq_pid
=
0
;
if
(
eNB
->
ulsch
[
UE_id
]
->
ue_type
>
NOCE
)
harq_pid
=
0
;
else
else
#endif
#endif
{
{
...
...
openair1/PHY/LTE_TRANSPORT/dci_tools.c
View file @
4a86d53c
...
@@ -307,7 +307,6 @@ void fill_dci_and_dlsch(PHY_VARS_eNB *eNB,int frame,int subframe,L1_rxtx_proc_t
...
@@ -307,7 +307,6 @@ void fill_dci_and_dlsch(PHY_VARS_eNB *eNB,int frame,int subframe,L1_rxtx_proc_t
dlsch0_harq
->
codeword
=
0
;
dlsch0_harq
->
codeword
=
0
;
dlsch1_harq
=
dlsch1
->
harq_processes
[
rel8
->
harq_process
];
dlsch1_harq
=
dlsch1
->
harq_processes
[
rel8
->
harq_process
];
dlsch1_harq
->
codeword
=
1
;
dlsch1_harq
->
codeword
=
1
;
dlsch0
->
subframe_tx
[
subframe
]
=
1
;
LOG_D
(
PHY
,
"NFAPI: SFN/SF:%04d%d proc:TX:SFN/SF:%04d%d dlsch0[rnti:%x harq_mask:%04x] dci_pdu[rnti:%x rnti_type:%d harq_process:%d ndi1:%d] dlsch0_harq[round:%d harq_mask:%x ndi:%d]
\n
"
,
LOG_D
(
PHY
,
"NFAPI: SFN/SF:%04d%d proc:TX:SFN/SF:%04d%d dlsch0[rnti:%x harq_mask:%04x] dci_pdu[rnti:%x rnti_type:%d harq_process:%d ndi1:%d] dlsch0_harq[round:%d harq_mask:%x ndi:%d]
\n
"
,
frame
,
subframe
,
frame
,
subframe
,
...
@@ -657,9 +656,6 @@ void fill_dci_and_dlsch(PHY_VARS_eNB *eNB,int frame,int subframe,L1_rxtx_proc_t
...
@@ -657,9 +656,6 @@ void fill_dci_and_dlsch(PHY_VARS_eNB *eNB,int frame,int subframe,L1_rxtx_proc_t
dlsch0_harq
=
dlsch0
->
harq_processes
[
rel8
->
harq_process
];
dlsch0_harq
=
dlsch0
->
harq_processes
[
rel8
->
harq_process
];
dlsch0_harq
->
codeword
=
0
;
dlsch0_harq
->
codeword
=
0
;
// printf("DCI: Setting subframe_tx for subframe %d\n",subframe);
dlsch0
->
subframe_tx
[
subframe
]
=
1
;
conv_rballoc
(
rel8
->
resource_allocation_type
,
rel8
->
resource_block_coding
,
fp
->
N_RB_DL
,
dlsch0_harq
->
rb_alloc
);
conv_rballoc
(
rel8
->
resource_allocation_type
,
rel8
->
resource_block_coding
,
fp
->
N_RB_DL
,
dlsch0_harq
->
rb_alloc
);
dlsch0_harq
->
nb_rb
=
conv_nprb
(
rel8
->
resource_allocation_type
,
rel8
->
resource_block_coding
,
fp
->
N_RB_DL
);
dlsch0_harq
->
nb_rb
=
conv_nprb
(
rel8
->
resource_allocation_type
,
rel8
->
resource_block_coding
,
fp
->
N_RB_DL
);
...
@@ -868,8 +864,6 @@ void fill_dci_and_dlsch(PHY_VARS_eNB *eNB,int frame,int subframe,L1_rxtx_proc_t
...
@@ -868,8 +864,6 @@ void fill_dci_and_dlsch(PHY_VARS_eNB *eNB,int frame,int subframe,L1_rxtx_proc_t
dlsch0_harq
=
dlsch0
->
harq_processes
[
rel8
->
harq_process
];
dlsch0_harq
=
dlsch0
->
harq_processes
[
rel8
->
harq_process
];
dlsch1_harq
=
dlsch1
->
harq_processes
[
rel8
->
harq_process
];
dlsch1_harq
=
dlsch1
->
harq_processes
[
rel8
->
harq_process
];
dlsch0
->
subframe_tx
[
subframe
]
=
1
;
dlsch0
->
harq_ids
[
frame
%
2
][
subframe
]
=
rel8
->
harq_process
;
dlsch0
->
harq_ids
[
frame
%
2
][
subframe
]
=
rel8
->
harq_process
;
dlsch1
->
harq_ids
[
frame
%
2
][
subframe
]
=
rel8
->
harq_process
;
dlsch1
->
harq_ids
[
frame
%
2
][
subframe
]
=
rel8
->
harq_process
;
// printf("Setting DLSCH harq id %d to subframe %d\n",harq_pid,subframe);
// printf("Setting DLSCH harq id %d to subframe %d\n",harq_pid,subframe);
...
@@ -1316,8 +1310,6 @@ void fill_dci_and_dlsch(PHY_VARS_eNB *eNB,int frame,int subframe,L1_rxtx_proc_t
...
@@ -1316,8 +1310,6 @@ void fill_dci_and_dlsch(PHY_VARS_eNB *eNB,int frame,int subframe,L1_rxtx_proc_t
}
}
if
(
dlsch0
!=
NULL
)
{
if
(
dlsch0
!=
NULL
)
{
dlsch0
->
subframe_tx
[
subframe
]
=
1
;
dlsch0
->
harq_ids
[
frame
%
2
][
subframe
]
=
rel8
->
harq_process
;
dlsch0
->
harq_ids
[
frame
%
2
][
subframe
]
=
rel8
->
harq_process
;
}
}
...
@@ -1722,8 +1714,6 @@ void fill_mdci_and_dlsch(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc,mDCI_ALLOC_t *dc
...
@@ -1722,8 +1714,6 @@ void fill_mdci_and_dlsch(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc,mDCI_ALLOC_t *dc
dlsch0_harq
=
dlsch0
->
harq_processes
[
rel13
->
harq_process
];
dlsch0_harq
=
dlsch0
->
harq_processes
[
rel13
->
harq_process
];
dlsch0_harq
->
codeword
=
0
;
dlsch0_harq
->
codeword
=
0
;
// printf("DCI: Setting subframe_tx for subframe %d\n",subframe);
dlsch0
->
subframe_tx
[(
subframe
+
2
)
%
10
]
=
1
;
LOG_D
(
PHY
,
"PDSCH : resource_block_coding %x
\n
"
,
rel13
->
resource_block_coding
);
LOG_D
(
PHY
,
"PDSCH : resource_block_coding %x
\n
"
,
rel13
->
resource_block_coding
);
conv_eMTC_rballoc
(
rel13
->
resource_block_coding
,
conv_eMTC_rballoc
(
rel13
->
resource_block_coding
,
...
@@ -1746,7 +1736,6 @@ void fill_mdci_and_dlsch(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc,mDCI_ALLOC_t *dc
...
@@ -1746,7 +1736,6 @@ void fill_mdci_and_dlsch(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc,mDCI_ALLOC_t *dc
dlsch0_harq
->
dl_power_off
=
1
;
dlsch0_harq
->
dl_power_off
=
1
;
dlsch0
->
subframe_tx
[
subframe
]
=
1
;
if
(
dlsch0
->
rnti
!=
rel13
->
rnti
)
{
// if rnti of dlsch is not the same as in the config, this is a new entry
if
(
dlsch0
->
rnti
!=
rel13
->
rnti
)
{
// if rnti of dlsch is not the same as in the config, this is a new entry
dlsch0_harq
->
round
=
0
;
dlsch0_harq
->
round
=
0
;
dlsch0
->
harq_mask
=
0
;
dlsch0
->
harq_mask
=
0
;
...
...
openair1/PHY/LTE_TRANSPORT/transport_common.h
View file @
4a86d53c
...
@@ -39,6 +39,7 @@
...
@@ -39,6 +39,7 @@
#ifndef STANDALONE_COMPILE
#ifndef STANDALONE_COMPILE
#include "UTIL/LISTS/list.h"
#include "UTIL/LISTS/list.h"
#endif
#endif
#include <nfapi/open-nFAPI/nfapi/public_inc/nfapi_interface.h>
#define MOD_TABLE_QPSK_OFFSET 1
#define MOD_TABLE_QPSK_OFFSET 1
#define MOD_TABLE_16QAM_OFFSET 5
#define MOD_TABLE_16QAM_OFFSET 5
...
@@ -138,18 +139,6 @@ typedef enum {
...
@@ -138,18 +139,6 @@ typedef enum {
HARQ_SR_CQI
HARQ_SR_CQI
}
UCI_type_t
;
}
UCI_type_t
;
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
typedef
enum
{
NOCE
,
CEMODEA
,
CEMODEB
}
UE_type_t
;
#endif
typedef
enum
{
typedef
enum
{
SI_PDSCH
=
0
,
SI_PDSCH
=
0
,
RA_PDSCH
,
RA_PDSCH
,
...
...
openair1/PHY/LTE_TRANSPORT/transport_eNB.h
View file @
4a86d53c
...
@@ -154,11 +154,9 @@ typedef struct {
...
@@ -154,11 +154,9 @@ typedef struct {
uint8_t
active
;
uint8_t
active
;
#endif
#endif
/// indicator of UE type (0 = LTE, 1,2 = Cat-M)
/// indicator of UE type (0 = LTE, 1,2 = Cat-M)
int
ue_type
;
UE_type_t
ue_type
:
8
;
/// HARQ process mask, indicates which processes are currently active
/// HARQ process mask, indicates which processes are currently active
uint16_t
harq_mask
;
uint16_t
harq_mask
;
/// Indicator of TX activation per subframe. Used during PUCCH detection for ACK/NAK.
uint8_t
subframe_tx
[
10
];
/// First CCE of last PDSCH scheduling per subframe. Again used during PUCCH detection for ACK/NAK.
/// First CCE of last PDSCH scheduling per subframe. Again used during PUCCH detection for ACK/NAK.
uint8_t
nCCE
[
10
];
uint8_t
nCCE
[
10
];
/// Process ID's per subframe. Used to associate received ACKs on PUSCH/PUCCH to DLSCH harq process ids
/// Process ID's per subframe. Used to associate received ACKs on PUSCH/PUCCH to DLSCH harq process ids
...
@@ -355,7 +353,7 @@ typedef struct {
...
@@ -355,7 +353,7 @@ typedef struct {
uint32_t
stat
;
uint32_t
stat
;
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
/// non BL/CE, CEmodeA, CEmodeB
/// non BL/CE, CEmodeA, CEmodeB
UE_type_t
ue_type
;
UE_type_t
ue_type
:
8
;
/// Indicates the symbols that are left empty due to eMTC retuning.
/// Indicates the symbols that are left empty due to eMTC retuning.
uint8_t
empty_symbols
;
uint8_t
empty_symbols
;
/// number of repetitions for BL/CE
/// number of repetitions for BL/CE
...
@@ -450,7 +448,7 @@ typedef struct {
...
@@ -450,7 +448,7 @@ typedef struct {
typedef
struct
{
typedef
struct
{
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
/// UE type (normal, CEModeA, CEModeB)
/// UE type (normal, CEModeA, CEModeB)
uint8_t
ue_type
;
UE_type_t
ue_type
:
8
;
#endif
#endif
/// HARQ process mask, indicates which processes are currently active
/// HARQ process mask, indicates which processes are currently active
uint16_t
harq_mask
;
uint16_t
harq_mask
;
...
...
openair1/SCHED/phy_procedures_lte_eNb.c
View file @
4a86d53c
...
@@ -355,7 +355,7 @@ void pdsch_procedures(PHY_VARS_eNB *eNB,
...
@@ -355,7 +355,7 @@ void pdsch_procedures(PHY_VARS_eNB *eNB,
subframe
,
subframe
,
dlsch_harq
->
pdsch_start
,
dlsch_harq
->
pdsch_start
,
dlsch
,
dlsch
,
dlsch
->
ue_type
==
0
?
dlsch1
:
(
LTE_eNB_DLSCH_t
*
)
NULL
);
dlsch
->
ue_type
==
NOCE
?
dlsch1
:
(
LTE_eNB_DLSCH_t
*
)
NULL
);
stop_meas
(
&
eNB
->
dlsch_modulation_stats
);
stop_meas
(
&
eNB
->
dlsch_modulation_stats
);
LOG_D
(
PHY
,
"Generated PDSCH dlsch_harq[round:%d]
\n
"
,
dlsch_harq
->
round
);
LOG_D
(
PHY
,
"Generated PDSCH dlsch_harq[round:%d]
\n
"
,
dlsch_harq
->
round
);
...
@@ -408,12 +408,6 @@ void phy_procedures_eNB_TX(PHY_VARS_eNB *eNB,
...
@@ -408,12 +408,6 @@ void phy_procedures_eNB_TX(PHY_VARS_eNB *eNB,
ul_subframe
=
pdcch_alloc2ul_subframe
(
fp
,
subframe
);
ul_subframe
=
pdcch_alloc2ul_subframe
(
fp
,
subframe
);
ul_frame
=
pdcch_alloc2ul_frame
(
fp
,
frame
,
subframe
);
ul_frame
=
pdcch_alloc2ul_frame
(
fp
,
frame
,
subframe
);
// clear previous allocation information for all UEs
for
(
i
=
0
;
i
<
NUMBER_OF_UE_MAX
;
i
++
)
{
if
(
eNB
->
dlsch
[
i
][
0
])
eNB
->
dlsch
[
i
][
0
]
->
subframe_tx
[
subframe
]
=
0
;
}
/* TODO: check the following test - in the meantime it is put back as it was before */
/* TODO: check the following test - in the meantime it is put back as it was before */
//if ((ul_subframe < 10)&&
//if ((ul_subframe < 10)&&
// (subframe_select(fp,ul_subframe)==SF_UL)) { // This means that there is a potential UL subframe that will be scheduled here
// (subframe_select(fp,ul_subframe)==SF_UL)) { // This means that there is a potential UL subframe that will be scheduled here
...
@@ -421,7 +415,7 @@ void phy_procedures_eNB_TX(PHY_VARS_eNB *eNB,
...
@@ -421,7 +415,7 @@ void phy_procedures_eNB_TX(PHY_VARS_eNB *eNB,
for
(
i
=
0
;
i
<
NUMBER_OF_UE_MAX
;
i
++
)
{
for
(
i
=
0
;
i
<
NUMBER_OF_UE_MAX
;
i
++
)
{
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
if
(
eNB
->
ulsch
[
i
]
&&
eNB
->
ulsch
[
i
]
->
ue_type
>
0
)
harq_pid
=
0
;
if
(
eNB
->
ulsch
[
i
]
&&
eNB
->
ulsch
[
i
]
->
ue_type
>
NOCE
)
harq_pid
=
0
;
else
else
#endif
#endif
harq_pid
=
subframe2harq_pid
(
fp
,
ul_frame
,
ul_subframe
);
harq_pid
=
subframe2harq_pid
(
fp
,
ul_frame
,
ul_subframe
);
...
@@ -515,7 +509,7 @@ void phy_procedures_eNB_TX(PHY_VARS_eNB *eNB,
...
@@ -515,7 +509,7 @@ void phy_procedures_eNB_TX(PHY_VARS_eNB *eNB,
if
((
harq_pid
<
0
)
||
(
harq_pid
>=
dlsch0
->
Mdlharq
))
{
if
((
harq_pid
<
0
)
||
(
harq_pid
>=
dlsch0
->
Mdlharq
))
{
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
if
(
dlsch0
->
ue_type
==
0
)
if
(
dlsch0
->
ue_type
==
NOCE
)
#endif
#endif
LOG_E
(
PHY
,
"harq_pid:%d corrupt must be 0-7 UE_id:%d frame:%d subframe:%d rnti:%x [ %1d.%1d.%1d.%1d.%1d.%1d.%1d.%1d
\n
"
,
harq_pid
,
UE_id
,
frame
,
subframe
,
dlsch0
->
rnti
,
LOG_E
(
PHY
,
"harq_pid:%d corrupt must be 0-7 UE_id:%d frame:%d subframe:%d rnti:%x [ %1d.%1d.%1d.%1d.%1d.%1d.%1d.%1d
\n
"
,
harq_pid
,
UE_id
,
frame
,
subframe
,
dlsch0
->
rnti
,
dlsch0
->
harq_ids
[
frame
%
2
][
0
],
dlsch0
->
harq_ids
[
frame
%
2
][
0
],
...
@@ -547,8 +541,6 @@ void phy_procedures_eNB_TX(PHY_VARS_eNB *eNB,
...
@@ -547,8 +541,6 @@ void phy_procedures_eNB_TX(PHY_VARS_eNB *eNB,
(
dlsch0
->
active
==
0
)
(
dlsch0
->
active
==
0
)
#endif
#endif
)
{
)
{
// clear subframe TX flag since UE is not scheduled for PDSCH in this subframe (so that we don't look for PUCCH later)
dlsch0
->
subframe_tx
[
subframe
]
=
0
;
}
}
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME
(
VCD_SIGNAL_DUMPER_FUNCTIONS_GENERATE_DLSCH
,
0
);
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME
(
VCD_SIGNAL_DUMPER_FUNCTIONS_GENERATE_DLSCH
,
0
);
...
@@ -679,7 +671,7 @@ uci_procedures(PHY_VARS_eNB *eNB,
...
@@ -679,7 +671,7 @@ uci_procedures(PHY_VARS_eNB *eNB,
switch
(
uci
->
type
)
{
switch
(
uci
->
type
)
{
case
SR
:
case
SR
:
case
HARQ_SR
:
{
case
HARQ_SR
:
{
int
pucch1_thres
=
(
uci
->
ue_type
==
0
)
?
eNB
->
pucch1_DTX_threshold
:
eNB
->
pucch1_DTX_threshold_emtc
[
0
];
int
pucch1_thres
=
(
uci
->
ue_type
==
NOCE
)
?
eNB
->
pucch1_DTX_threshold
:
eNB
->
pucch1_DTX_threshold_emtc
[
0
];
metric_SR
=
rx_pucch
(
eNB
,
metric_SR
=
rx_pucch
(
eNB
,
uci
->
pucch_fmt
,
uci
->
pucch_fmt
,
uci
->
ue_id
,
uci
->
ue_id
,
...
@@ -714,7 +706,7 @@ uci_procedures(PHY_VARS_eNB *eNB,
...
@@ -714,7 +706,7 @@ uci_procedures(PHY_VARS_eNB *eNB,
}
}
case
HARQ
:
{
case
HARQ
:
{
int
pucch1ab_thres
=
(
uci
->
ue_type
==
0
)
?
eNB
->
pucch1ab_DTX_threshold
:
eNB
->
pucch1ab_DTX_threshold_emtc
[
0
];
int
pucch1ab_thres
=
(
uci
->
ue_type
==
NOCE
)
?
eNB
->
pucch1ab_DTX_threshold
:
eNB
->
pucch1ab_DTX_threshold_emtc
[
0
];
if
(
fp
->
frame_type
==
FDD
)
{
if
(
fp
->
frame_type
==
FDD
)
{
LOG_D
(
PHY
,
"Frame %d Subframe %d Demodulating PUCCH (UCI %d) for ACK/NAK (uci->pucch_fmt %d,uci->type %d.uci->frame %d, uci->subframe %d): n1_pucch0 %d SR_payload %d
\n
"
,
LOG_D
(
PHY
,
"Frame %d Subframe %d Demodulating PUCCH (UCI %d) for ACK/NAK (uci->pucch_fmt %d,uci->type %d.uci->frame %d, uci->subframe %d): n1_pucch0 %d SR_payload %d
\n
"
,
...
@@ -1162,7 +1154,7 @@ void pusch_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc) {
...
@@ -1162,7 +1154,7 @@ void pusch_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc) {
for
(
i
=
0
;
i
<
NUMBER_OF_UE_MAX
;
i
++
)
{
for
(
i
=
0
;
i
<
NUMBER_OF_UE_MAX
;
i
++
)
{
ulsch
=
eNB
->
ulsch
[
i
];
ulsch
=
eNB
->
ulsch
[
i
];
if
(
ulsch
->
ue_type
>
0
)
harq_pid
=
0
;
if
(
ulsch
->
ue_type
>
NOCE
)
harq_pid
=
0
;
else
harq_pid
=
harq_pid0
;
else
harq_pid
=
harq_pid0
;
ulsch_harq
=
ulsch
->
harq_processes
[
harq_pid
];
ulsch_harq
=
ulsch
->
harq_processes
[
harq_pid
];
...
@@ -1399,7 +1391,7 @@ void fill_rx_indication(PHY_VARS_eNB *eNB,int UE_id,int frame,int subframe) {
...
@@ -1399,7 +1391,7 @@ void fill_rx_indication(PHY_VARS_eNB *eNB,int UE_id,int frame,int subframe) {
uint32_t
harq_pid
;
uint32_t
harq_pid
;
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
if
(
eNB
->
ulsch
[
UE_id
]
->
ue_type
>
0
)
harq_pid
=
0
;
if
(
eNB
->
ulsch
[
UE_id
]
->
ue_type
>
NOCE
)
harq_pid
=
0
;
else
else
#endif
#endif
{
{
...
...
openair2/LAYER2/MAC/eNB_scheduler_RA.c
View file @
4a86d53c
...
@@ -139,7 +139,7 @@ add_msg3(module_id_t module_idP, int CC_id, RA_t *ra, frame_t frameP,
...
@@ -139,7 +139,7 @@ add_msg3(module_id_t module_idP, int CC_id, RA_t *ra, frame_t frameP,
ul_config_pdu
->
ulsch_pdu
.
ulsch_pdu_rel8
.
n_srs
=
1
;
ul_config_pdu
->
ulsch_pdu
.
ulsch_pdu_rel8
.
n_srs
=
1
;
ul_config_pdu
->
ulsch_pdu
.
ulsch_pdu_rel8
.
size
=
get_TBS_UL
(
ra
->
msg3_mcs
,
ra
->
msg3_nb_rb
);
ul_config_pdu
->
ulsch_pdu
.
ulsch_pdu_rel8
.
size
=
get_TBS_UL
(
ra
->
msg3_mcs
,
ra
->
msg3_nb_rb
);
// Re13 fields
// Re13 fields
ul_config_pdu
->
ulsch_pdu
.
ulsch_pdu_rel13
.
ue_type
=
ra
->
rach_resource_type
>
2
?
2
:
1
;
ul_config_pdu
->
ulsch_pdu
.
ulsch_pdu_rel13
.
ue_type
=
ra
->
rach_resource_type
>
2
?
CEmodeB
:
CEmodeA
;
ul_config_pdu
->
ulsch_pdu
.
ulsch_pdu_rel13
.
total_number_of_repetitions
=
1
;
ul_config_pdu
->
ulsch_pdu
.
ulsch_pdu_rel13
.
total_number_of_repetitions
=
1
;
ul_config_pdu
->
ulsch_pdu
.
ulsch_pdu_rel13
.
repetition_number
=
1
;
ul_config_pdu
->
ulsch_pdu
.
ulsch_pdu_rel13
.
repetition_number
=
1
;
ul_config_pdu
->
ulsch_pdu
.
ulsch_pdu_rel13
.
initial_transmission_sf_io
=
(
ra
->
Msg3_frame
*
10
)
+
ra
->
Msg3_subframe
;
ul_config_pdu
->
ulsch_pdu
.
ulsch_pdu_rel13
.
initial_transmission_sf_io
=
(
ra
->
Msg3_frame
*
10
)
+
ra
->
Msg3_subframe
;
...
@@ -437,7 +437,7 @@ void generate_Msg2(module_id_t module_idP,
...
@@ -437,7 +437,7 @@ void generate_Msg2(module_id_t module_idP,
/* Rel10 fields */
/* Rel10 fields */
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
cc
[
CC_idP
].
sib1_v13ext
->
bandwidthReducedAccessRelatedInfo_r13
->
startSymbolBR_r13
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
cc
[
CC_idP
].
sib1_v13ext
->
bandwidthReducedAccessRelatedInfo_r13
->
startSymbolBR_r13
;
/* Rel13 fields */
/* Rel13 fields */
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
(
ra
->
rach_resource_type
<
3
)
?
1
:
2
;
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
(
ra
->
rach_resource_type
<
3
)
?
CEmodeA
:
CEmodeB
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
2
;
// not SI message
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
2
;
// not SI message
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
(
10
*
frameP
)
+
subframeP
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
(
10
*
frameP
)
+
subframeP
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
drms_table_flag
=
0
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
drms_table_flag
=
0
;
...
@@ -817,7 +817,7 @@ generate_Msg4(module_id_t module_idP,
...
@@ -817,7 +817,7 @@ generate_Msg4(module_id_t module_idP,
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel8
.
num_bf_vector
=
1
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel8
.
num_bf_vector
=
1
;
// dl_config_pdu->dlsch_pdu.dlsch_pdu_rel8.bf_vector = ;
// dl_config_pdu->dlsch_pdu.dlsch_pdu_rel8.bf_vector = ;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
cc
[
CC_idP
].
sib1_v13ext
->
bandwidthReducedAccessRelatedInfo_r13
->
startSymbolBR_r13
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
cc
[
CC_idP
].
sib1_v13ext
->
bandwidthReducedAccessRelatedInfo_r13
->
startSymbolBR_r13
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
(
ra
->
rach_resource_type
<
3
)
?
1
:
2
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
(
ra
->
rach_resource_type
<
3
)
?
CEmodeA
:
CEmodeB
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
2
;
// not SI message
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
2
;
// not SI message
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
(
10
*
frameP
)
+
subframeP
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
(
10
*
frameP
)
+
subframeP
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
drms_table_flag
=
0
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
drms_table_flag
=
0
;
...
@@ -872,7 +872,7 @@ generate_Msg4(module_id_t module_idP,
...
@@ -872,7 +872,7 @@ generate_Msg4(module_id_t module_idP,
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel8
.
handle
=
0
;
// don't know how to use this
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel8
.
handle
=
0
;
// don't know how to use this
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel8
.
rnti
=
ra
->
rnti
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel8
.
rnti
=
ra
->
rnti
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
tl
.
tag
=
NFAPI_UL_CONFIG_REQUEST_UE_INFORMATION_REL13_TAG
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
tl
.
tag
=
NFAPI_UL_CONFIG_REQUEST_UE_INFORMATION_REL13_TAG
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
ue_type
=
(
ra
->
rach_resource_type
<
3
)
?
1
:
2
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
ue_type
=
(
ra
->
rach_resource_type
<
3
)
?
CEmodeA
:
CEmodeB
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
empty_symbols
=
0
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
empty_symbols
=
0
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
total_number_of_repetitions
=
pucchreps
[
ra
->
rach_resource_type
-
1
];
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
total_number_of_repetitions
=
pucchreps
[
ra
->
rach_resource_type
-
1
];
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
repetition_number
=
0
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
repetition_number
=
0
;
...
...
openair2/LAYER2/MAC/eNB_scheduler_bch.c
View file @
4a86d53c
...
@@ -261,7 +261,7 @@ schedule_SIB1_MBMS(module_id_t module_idP,
...
@@ -261,7 +261,7 @@ schedule_SIB1_MBMS(module_id_t module_idP,
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
3
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
3
;
// Rel13 fields
// Rel13 fields
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
tl
.
tag
=
NFAPI_DL_CONFIG_REQUEST_DLSCH_PDU_REL13_TAG
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
tl
.
tag
=
NFAPI_DL_CONFIG_REQUEST_DLSCH_PDU_REL13_TAG
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
1
;
// CEModeA UE
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
CEMODEA
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
0
;
// SIB1-BR
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
0
;
// SIB1-BR
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
0xFFFF
;
// absolute SFx
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
0xFFFF
;
// absolute SFx
...
@@ -489,7 +489,7 @@ schedule_SIB1_BR(module_id_t module_idP,
...
@@ -489,7 +489,7 @@ schedule_SIB1_BR(module_id_t module_idP,
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
3
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
3
;
// Rel13 fields
// Rel13 fields
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
tl
.
tag
=
NFAPI_DL_CONFIG_REQUEST_DLSCH_PDU_REL13_TAG
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
tl
.
tag
=
NFAPI_DL_CONFIG_REQUEST_DLSCH_PDU_REL13_TAG
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
1
;
// CEModeA UE
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
CEMODEA
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
0
;
// SIB1-BR
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
0
;
// SIB1-BR
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
0xFFFF
;
// absolute SFx
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
0xFFFF
;
// absolute SFx
...
@@ -693,7 +693,7 @@ schedule_SI_BR(module_id_t module_idP, frame_t frameP,
...
@@ -693,7 +693,7 @@ schedule_SI_BR(module_id_t module_idP, frame_t frameP,
// Rel10 fields (for PDSCH starting symbol)
// Rel10 fields (for PDSCH starting symbol)
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
cc
[
CC_id
].
sib1_v13ext
->
bandwidthReducedAccessRelatedInfo_r13
->
startSymbolBR_r13
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
cc
[
CC_id
].
sib1_v13ext
->
bandwidthReducedAccessRelatedInfo_r13
->
startSymbolBR_r13
;
// Rel13 fields
// Rel13 fields
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
1
;
// CEModeA UE
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
CEMODEA
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
1
;
// SI-BR
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
1
;
// SI-BR
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
absSF
-
sf_mod_period
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
absSF
-
sf_mod_period
;
...
@@ -891,7 +891,7 @@ schedule_SI_MBMS(module_id_t module_idP, frame_t frameP,
...
@@ -891,7 +891,7 @@ schedule_SI_MBMS(module_id_t module_idP, frame_t frameP,
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
3
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
3
;
// Rel13 fields
// Rel13 fields
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
tl
.
tag
=
NFAPI_DL_CONFIG_REQUEST_DLSCH_PDU_REL13_TAG
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
tl
.
tag
=
NFAPI_DL_CONFIG_REQUEST_DLSCH_PDU_REL13_TAG
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
0
;
// regular UE
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
NOCE
;
// regular UE
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
2
;
// not BR
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
2
;
// not BR
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
0xFFFF
;
// absolute SF
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
0xFFFF
;
// absolute SF
...
@@ -1196,7 +1196,7 @@ schedule_SI(module_id_t module_idP, frame_t frameP, sub_frame_t subframeP)
...
@@ -1196,7 +1196,7 @@ schedule_SI(module_id_t module_idP, frame_t frameP, sub_frame_t subframeP)
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
3
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
3
;
// Rel13 fields
// Rel13 fields
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
tl
.
tag
=
NFAPI_DL_CONFIG_REQUEST_DLSCH_PDU_REL13_TAG
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
tl
.
tag
=
NFAPI_DL_CONFIG_REQUEST_DLSCH_PDU_REL13_TAG
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
0
;
// regular UE
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
NOCE
;
// regular UE
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
2
;
// not BR
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
2
;
// not BR
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
0xFFFF
;
// absolute SF
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
0xFFFF
;
// absolute SF
...
...
openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
View file @
4a86d53c
...
@@ -2509,7 +2509,7 @@ schedule_ue_spec_br(module_id_t module_idP,
...
@@ -2509,7 +2509,7 @@ schedule_ue_spec_br(module_id_t module_idP,
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel8
.
num_bf_vector
=
1
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel8
.
num_bf_vector
=
1
;
// dl_config_pdu->dlsch_pdu.dlsch_pdu_rel8.bf_vector = ;
// dl_config_pdu->dlsch_pdu.dlsch_pdu_rel8.bf_vector = ;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
*
UE_template
->
physicalConfigDedicated
->
ext4
->
epdcch_Config_r11
->
config_r11
.
choice
.
setup
.
startSymbol_r11
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel10
.
pdsch_start
=
*
UE_template
->
physicalConfigDedicated
->
ext4
->
epdcch_Config_r11
->
config_r11
.
choice
.
setup
.
startSymbol_r11
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
(
UE_template
->
rach_resource_type
<
3
)
?
1
:
2
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
(
UE_template
->
rach_resource_type
<
3
)
?
CEmodeA
:
CEmodeB
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
2
;
// not SI message
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
2
;
// not SI message
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
(
10
*
frameP
)
+
subframeP
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
(
10
*
frameP
)
+
subframeP
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
drms_table_flag
=
0
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
drms_table_flag
=
0
;
...
@@ -2530,7 +2530,7 @@ schedule_ue_spec_br(module_id_t module_idP,
...
@@ -2530,7 +2530,7 @@ schedule_ue_spec_br(module_id_t module_idP,
ul_config_pdu
->
pdu_size
=
(
uint8_t
)
(
2
+
sizeof
(
nfapi_ul_config_uci_harq_pdu
));
ul_config_pdu
->
pdu_size
=
(
uint8_t
)
(
2
+
sizeof
(
nfapi_ul_config_uci_harq_pdu
));
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel8
.
handle
=
0
;
// don't know how to use this
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel8
.
handle
=
0
;
// don't know how to use this
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel8
.
rnti
=
rnti
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel8
.
rnti
=
rnti
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
ue_type
=
(
UE_template
->
rach_resource_type
<
3
)
?
1
:
2
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
ue_type
=
(
UE_template
->
rach_resource_type
<
3
)
?
CEmodeA
:
CEmodeB
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
empty_symbols
=
0
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
empty_symbols
=
0
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
total_number_of_repetitions
=
pucchreps
[
UE_template
->
rach_resource_type
-
1
];
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
total_number_of_repetitions
=
pucchreps
[
UE_template
->
rach_resource_type
-
1
];
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
repetition_number
=
0
;
ul_config_pdu
->
uci_harq_pdu
.
ue_information
.
ue_information_rel13
.
repetition_number
=
0
;
...
@@ -3157,7 +3157,7 @@ schedule_PCH(module_id_t module_idP,
...
@@ -3157,7 +3157,7 @@ schedule_PCH(module_id_t module_idP,
#endif
#endif
// Rel13 fields
// Rel13 fields
#if (LTE_RRC_VERSION >= MAKE_VERSION(13, 0, 0))
#if (LTE_RRC_VERSION >= MAKE_VERSION(13, 0, 0))
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
0
;
// regular UE
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
ue_type
=
NOCE
;
// regular UE
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
2
;
// not BR
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
pdsch_payload_type
=
2
;
// not BR
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
0xFFFF
;
dl_config_pdu
->
dlsch_pdu
.
dlsch_pdu_rel13
.
initial_transmission_sf_io
=
0xFFFF
;
#endif
#endif
...
...
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