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
Michael Black
OpenXG-RAN
Commits
8b1138c8
Commit
8b1138c8
authored
Aug 16, 2021
by
Abhijith
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Hardcoding of bwp_id at UE removed
parent
274ea107
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
83 additions
and
59 deletions
+83
-59
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
+22
-17
openair1/SCHED_NR_UE/pucch_uci_ue_nr.c
openair1/SCHED_NR_UE/pucch_uci_ue_nr.c
+11
-9
openair2/LAYER2/NR_MAC_UE/config_ue.c
openair2/LAYER2/NR_MAC_UE/config_ue.c
+1
-1
openair2/LAYER2/NR_MAC_UE/mac_defs.h
openair2/LAYER2/NR_MAC_UE/mac_defs.h
+5
-5
openair2/LAYER2/NR_MAC_UE/nr_ue_dci_configuration.c
openair2/LAYER2/NR_MAC_UE/nr_ue_dci_configuration.c
+2
-2
openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
+42
-25
No files found.
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
View file @
8b1138c8
...
...
@@ -1178,10 +1178,11 @@ void nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue,
const
double
N_TA_max
=
Ta_max
*
bw_scaling
*
tc_factor
;
NR_UE_MAC_INST_t
*
mac
=
get_mac_inst
(
0
);
NR_BWP_Id_t
dl_bwp
=
(
mac
->
DL_BWP_Id
==
0
)
?
1
:
mac
->
DL_BWP_Id
;
NR_BWP_Id_t
ul_bwp
=
(
mac
->
UL_BWP_Id
==
0
)
?
1
:
mac
->
UL_BWP_Id
;
NR_BWP_Id_t
dl_bwp
=
mac
->
DL_BWP_Id
;
NR_BWP_Id_t
ul_bwp
=
mac
->
UL_BWP_Id
;
NR_PUSCH_TimeDomainResourceAllocationList_t
*
pusch_TimeDomainAllocationList
=
NULL
;
if
(
ul_bwp
){
if
(
mac
->
ULbwp
[
ul_bwp
-
1
]
&&
mac
->
ULbwp
[
ul_bwp
-
1
]
->
bwp_Dedicated
&&
mac
->
ULbwp
[
ul_bwp
-
1
]
->
bwp_Dedicated
->
pusch_Config
&&
...
...
@@ -1196,6 +1197,7 @@ void nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue,
mac
->
ULbwp
[
ul_bwp
-
1
]
->
bwp_Common
->
pusch_ConfigCommon
->
choice
.
setup
->
pusch_TimeDomainAllocationList
)
{
pusch_TimeDomainAllocationList
=
mac
->
ULbwp
[
ul_bwp
-
1
]
->
bwp_Common
->
pusch_ConfigCommon
->
choice
.
setup
->
pusch_TimeDomainAllocationList
;
}
}
else
if
(
mac
->
scc_SIB
&&
mac
->
scc_SIB
->
uplinkConfigCommon
&&
mac
->
scc_SIB
->
uplinkConfigCommon
->
initialUplinkBWP
.
pusch_ConfigCommon
&&
...
...
@@ -1205,12 +1207,15 @@ void nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue,
}
long
mapping_type_ul
=
pusch_TimeDomainAllocationList
?
pusch_TimeDomainAllocationList
->
list
.
array
[
0
]
->
mappingType
:
NR_PUSCH_TimeDomainResourceAllocation__mappingType_typeA
;
NR_PDSCH_Config_t
*
pdsch_Config
=
(
mac
->
DLbwp
[
dl_bwp
-
1
]
&&
mac
->
DLbwp
[
dl_bwp
-
1
]
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
)
?
mac
->
DLbwp
[
dl_bwp
-
1
]
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
:
NULL
;
NR_PDSCH_Config_t
*
pdsch_Config
=
NULL
;
NR_PDSCH_TimeDomainResourceAllocationList_t
*
pdsch_TimeDomainAllocationList
=
NULL
;
if
(
dl_bwp
){
pdsch_Config
=
(
mac
->
DLbwp
[
dl_bwp
-
1
]
&&
mac
->
DLbwp
[
dl_bwp
-
1
]
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
)
?
mac
->
DLbwp
[
dl_bwp
-
1
]
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
:
NULL
;
if
(
mac
->
DLbwp
[
dl_bwp
-
1
]
&&
mac
->
DLbwp
[
dl_bwp
-
1
]
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
->
pdsch_TimeDomainAllocationList
)
pdsch_TimeDomainAllocationList
=
pdsch_Config
->
pdsch_TimeDomainAllocationList
->
choice
.
setup
;
else
if
(
mac
->
DLbwp
[
dl_bwp
-
1
]
&&
mac
->
DLbwp
[
dl_bwp
-
1
]
->
bwp_Common
->
pdsch_ConfigCommon
->
choice
.
setup
->
pdsch_TimeDomainAllocationList
)
pdsch_TimeDomainAllocationList
=
mac
->
DLbwp
[
dl_bwp
-
1
]
->
bwp_Common
->
pdsch_ConfigCommon
->
choice
.
setup
->
pdsch_TimeDomainAllocationList
;
}
else
if
(
mac
->
scc_SIB
&&
mac
->
scc_SIB
->
downlinkConfigCommon
.
initialDownlinkBWP
.
pdsch_ConfigCommon
->
choice
.
setup
)
pdsch_TimeDomainAllocationList
=
mac
->
scc_SIB
->
downlinkConfigCommon
.
initialDownlinkBWP
.
pdsch_ConfigCommon
->
choice
.
setup
->
pdsch_TimeDomainAllocationList
;
long
mapping_type_dl
=
pdsch_TimeDomainAllocationList
?
pdsch_TimeDomainAllocationList
->
list
.
array
[
0
]
->
mappingType
:
NR_PDSCH_TimeDomainResourceAllocation__mappingType_typeA
;
...
...
openair1/SCHED_NR_UE/pucch_uci_ue_nr.c
View file @
8b1138c8
...
...
@@ -991,8 +991,9 @@ uint8_t get_downlink_ack(PHY_VARS_NR_UE *ue, uint8_t gNB_id, UE_nr_rxtx_proc_t
int
N_m_c_rx
=
0
;
int
V_DAI_m_DL
=
0
;
NR_UE_MAC_INST_t
*
mac
=
get_mac_inst
(
0
);
NR_BWP_Id_t
dl_bwp_id
=
(
mac
->
DL_BWP_Id
==
0
)
?
1
:
mac
->
DL_BWP_Id
;
NR_BWP_Id_t
dl_bwp_id
=
mac
->
DL_BWP_Id
;
if
(
dl_bwp_id
){
if
(
mac
->
DLbwp
[
dl_bwp_id
-
1
]
&&
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Dedicated
&&
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Dedicated
->
pdsch_Config
&&
...
...
@@ -1001,6 +1002,7 @@ uint8_t get_downlink_ack(PHY_VARS_NR_UE *ue, uint8_t gNB_id, UE_nr_rxtx_proc_t
two_transport_blocks
=
TRUE
;
number_of_code_word
=
2
;
}
}
else
{
number_of_code_word
=
1
;
}
...
...
openair2/LAYER2/NR_MAC_UE/config_ue.c
View file @
8b1138c8
...
...
@@ -639,7 +639,7 @@ void config_control_ue(NR_UE_MAC_INST_t *mac){
// check pdcch_Config, pdcch_ConfigCommon and DL BWP
// Check dedicated UL BWP and pass to MAC
for
(
int
num_BWP
=
0
;
num_BWP
<
MAX_NUM_BWP
;
num_BWP
++
)
for
(
int
num_BWP
=
0
;
num_BWP
<
MAX_NUM_BWP
_UE
;
num_BWP
++
)
{
mac
->
DLbwp
[
num_BWP
]
=
scd
->
downlinkBWP_ToAddModList
->
list
.
array
[
num_BWP
];
mac
->
ULbwp
[
num_BWP
]
=
uplinkBWP_ToAddModList
->
list
.
array
[
num_BWP
];
...
...
openair2/LAYER2/NR_MAC_UE/mac_defs.h
View file @
8b1138c8
...
...
@@ -74,7 +74,7 @@
// ==========
#define NB_NR_UE_MAC_INST 1
#define MAX_NUM_BWP 4
#define MAX_NUM_BWP
_UE
4
#define NUM_SLOT_FRAME 10
/*!\brief value for indicating BSR Timer is not running */
...
...
@@ -330,10 +330,10 @@ typedef struct {
NR_RNTI_Value_t
*
cs_RNTI
;
NR_MIB_t
*
mib
;
NR_BWP_Downlink_t
*
DLbwp
[
MAX_NUM_BWP
];
NR_BWP_Uplink_t
*
ULbwp
[
MAX_NUM_BWP
];
NR_ControlResourceSet_t
*
coreset
[
MAX_NUM_BWP
][
FAPI_NR_MAX_CORESET_PER_BWP
];
NR_SearchSpace_t
*
SSpace
[
MAX_NUM_BWP
][
FAPI_NR_MAX_CORESET_PER_BWP
][
FAPI_NR_MAX_SS_PER_CORESET
];
NR_BWP_Downlink_t
*
DLbwp
[
MAX_NUM_BWP
_UE
];
NR_BWP_Uplink_t
*
ULbwp
[
MAX_NUM_BWP
_UE
];
NR_ControlResourceSet_t
*
coreset
[
MAX_NUM_BWP
_UE
][
FAPI_NR_MAX_CORESET_PER_BWP
];
NR_SearchSpace_t
*
SSpace
[
MAX_NUM_BWP
_UE
][
FAPI_NR_MAX_CORESET_PER_BWP
][
FAPI_NR_MAX_SS_PER_CORESET
];
lte_frame_type_t
frame_type
;
...
...
openair2/LAYER2/NR_MAC_UE/nr_ue_dci_configuration.c
View file @
8b1138c8
...
...
@@ -244,10 +244,10 @@ void ue_dci_configuration(NR_UE_MAC_INST_t *mac, fapi_nr_dl_config_request_t *dl
RA_config_t
*
ra
=
&
mac
->
ra
;
int
ss_id
;
NR_BWP_Id_t
bwp_id
=
(
mac
->
cg
)
?
((
mac
->
DL_BWP_Id
==
0
)
?
1
:
mac
->
DL_BWP_Id
)
:
0
;
NR_BWP_Id_t
bwp_id
=
(
mac
->
cg
)
?
mac
->
DL_BWP_Id
:
0
;
uint8_t
coreset_id
=
(
mac
->
cg
)
?
1
:
0
;
//NR_ServingCellConfig_t *scd = mac->scg->spCellConfig->spCellConfigDedicated;
NR_BWP_Downlink_t
*
bwp
=
(
mac
->
cg
)
?
mac
->
DLbwp
[
bwp_id
-
1
]
:
NULL
;
NR_BWP_Downlink_t
*
bwp
=
(
mac
->
cg
)
?
(
(
bwp_id
)
?
mac
->
DLbwp
[
bwp_id
-
1
]
:
NULL
)
:
NULL
;
LOG_D
(
MAC
,
"[DCI_CONFIG] ra_rnti %p (%x) crnti %p (%x) t_crnti %p (%x)
\n
"
,
&
ra
->
ra_rnti
,
ra
->
ra_rnti
,
&
mac
->
crnti
,
mac
->
crnti
,
&
ra
->
t_crnti
,
ra
->
t_crnti
);
...
...
openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
View file @
8b1138c8
...
...
@@ -280,8 +280,8 @@ int8_t nr_ue_process_dci_time_dom_resource_assignment(NR_UE_MAC_INST_t *mac,
uint8_t
sliv_S
=
0
;
uint8_t
sliv_L
=
0
;
uint8_t
mu_pusch
=
1
;
NR_BWP_Id_t
dl_bwp_id
=
(
mac
->
DL_BWP_Id
==
0
)
?
1
:
mac
->
DL_BWP_Id
;
NR_BWP_Id_t
ul_bwp_id
=
(
mac
->
UL_BWP_Id
==
0
)
?
1
:
mac
->
UL_BWP_Id
;
NR_BWP_Id_t
dl_bwp_id
=
mac
->
DL_BWP_Id
;
NR_BWP_Id_t
ul_bwp_id
=
mac
->
UL_BWP_Id
;
// definition table j Table 6.1.2.1.1-4
uint8_t
j
=
(
mu_pusch
==
3
)
?
3
:
(
mu_pusch
==
2
)
?
2
:
1
;
...
...
@@ -327,6 +327,7 @@ int8_t nr_ue_process_dci_time_dom_resource_assignment(NR_UE_MAC_INST_t *mac,
*/
if
(
dlsch_config_pdu
!=
NULL
){
NR_PDSCH_TimeDomainResourceAllocationList_t
*
pdsch_TimeDomainAllocationList
=
NULL
;
if
(
dl_bwp_id
){
if
(
mac
->
DLbwp
[
dl_bwp_id
-
1
]
&&
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Dedicated
&&
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Dedicated
->
pdsch_Config
&&
...
...
@@ -334,6 +335,7 @@ int8_t nr_ue_process_dci_time_dom_resource_assignment(NR_UE_MAC_INST_t *mac,
pdsch_TimeDomainAllocationList
=
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
->
pdsch_TimeDomainAllocationList
->
choice
.
setup
;
else
if
(
mac
->
DLbwp
[
dl_bwp_id
-
1
]
&&
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Common
->
pdsch_ConfigCommon
->
choice
.
setup
->
pdsch_TimeDomainAllocationList
)
pdsch_TimeDomainAllocationList
=
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Common
->
pdsch_ConfigCommon
->
choice
.
setup
->
pdsch_TimeDomainAllocationList
;
}
else
if
(
mac
->
scc_SIB
&&
mac
->
scc_SIB
->
downlinkConfigCommon
.
initialDownlinkBWP
.
pdsch_ConfigCommon
->
choice
.
setup
)
pdsch_TimeDomainAllocationList
=
mac
->
scc_SIB
->
downlinkConfigCommon
.
initialDownlinkBWP
.
pdsch_ConfigCommon
->
choice
.
setup
->
pdsch_TimeDomainAllocationList
;
...
...
@@ -459,12 +461,13 @@ int8_t nr_ue_process_dci(module_id_t module_id, int cc_id, uint8_t gNB_index, fr
RA_config_t
*
ra
=
&
mac
->
ra
;
fapi_nr_dl_config_request_t
*
dl_config
=
&
mac
->
dl_config_request
;
uint8_t
is_Msg3
=
0
;
NR_BWP_Id_t
dl_bwp_id
=
(
mac
->
DL_BWP_Id
==
0
)
?
1
:
mac
->
DL_BWP_Id
;
NR_BWP_Id_t
ul_bwp_id
=
(
mac
->
UL_BWP_Id
==
0
)
?
1
:
mac
->
UL_BWP_Id
;
uint16_t
n_RB_DLBWP
;
NR_BWP_Id_t
dl_bwp_id
=
mac
->
DL_BWP_Id
;
NR_BWP_Id_t
ul_bwp_id
=
mac
->
UL_BWP_Id
;
uint16_t
n_RB_DLBWP
=
0
;
if
(
dl_bwp_id
){
if
(
mac
->
DLbwp
[
dl_bwp_id
-
1
])
n_RB_DLBWP
=
NRRIV2BW
(
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Common
->
genericParameters
.
locationAndBandwidth
,
MAX_BWP_SIZE
);
}
else
if
(
mac
->
scc_SIB
)
n_RB_DLBWP
=
NRRIV2BW
(
mac
->
scc_SIB
->
uplinkConfigCommon
->
initialUplinkBWP
.
genericParameters
.
locationAndBandwidth
,
MAX_BWP_SIZE
);
else
n_RB_DLBWP
=
mac
->
type0_PDCCH_CSS_config
.
num_rbs
;
...
...
@@ -630,7 +633,9 @@ int8_t nr_ue_process_dci(module_id_t module_id, int cc_id, uint8_t gNB_index, fr
dl_config
->
dl_config_list
[
dl_config
->
number_pdus
].
dlsch_config_pdu
.
rnti
=
rnti
;
fapi_nr_dl_config_dlsch_pdu_rel15_t
*
dlsch_config_pdu_1_0
=
&
dl_config
->
dl_config_list
[
dl_config
->
number_pdus
].
dlsch_config_pdu
.
dlsch_config_rel15
;
NR_PDSCH_Config_t
*
pdsch_config
=
(
mac
->
DLbwp
[
dl_bwp_id
-
1
])
?
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
:
NULL
;
NR_PDSCH_Config_t
*
pdsch_config
=
NULL
;
if
(
dl_bwp_id
)
pdsch_config
=
(
mac
->
DLbwp
[
dl_bwp_id
-
1
])
?
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
:
NULL
;
uint16_t
BWPSize
=
n_RB_DLBWP
;
if
(
rnti
==
SI_RNTI
)
{
...
...
@@ -660,11 +665,13 @@ int8_t nr_ue_process_dci(module_id_t module_id, int cc_id, uint8_t gNB_index, fr
pdsch_config
=
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
;
BWPSize
=
dlsch_config_pdu_1_0
->
BWPSize
;
}
}
else
if
(
mac
->
DLbwp
[
dl_bwp_id
-
1
])
{
}
else
if
(
dl_bwp_id
){
if
(
mac
->
DLbwp
[
dl_bwp_id
-
1
])
{
dlsch_config_pdu_1_0
->
BWPSize
=
NRRIV2BW
(
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Common
->
genericParameters
.
locationAndBandwidth
,
MAX_BWP_SIZE
);
dlsch_config_pdu_1_0
->
BWPStart
=
NRRIV2PRBOFFSET
(
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Common
->
genericParameters
.
locationAndBandwidth
,
MAX_BWP_SIZE
);
dlsch_config_pdu_1_0
->
SubcarrierSpacing
=
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Common
->
genericParameters
.
subcarrierSpacing
;
pdsch_config
=
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
;
}
}
else
if
(
mac
->
scc_SIB
)
{
dlsch_config_pdu_1_0
->
BWPSize
=
NRRIV2BW
(
mac
->
scc_SIB
->
downlinkConfigCommon
.
initialDownlinkBWP
.
genericParameters
.
locationAndBandwidth
,
MAX_BWP_SIZE
);
dlsch_config_pdu_1_0
->
BWPStart
=
NRRIV2PRBOFFSET
(
mac
->
scc_SIB
->
downlinkConfigCommon
.
initialDownlinkBWP
.
genericParameters
.
locationAndBandwidth
,
MAX_BWP_SIZE
);
...
...
@@ -686,6 +693,7 @@ int8_t nr_ue_process_dci(module_id_t module_id, int cc_id, uint8_t gNB_index, fr
}
NR_PDSCH_TimeDomainResourceAllocationList_t
*
pdsch_TimeDomainAllocationList
=
NULL
;
if
(
dl_bwp_id
){
if
(
mac
->
DLbwp
[
dl_bwp_id
-
1
]
&&
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Dedicated
&&
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Dedicated
->
pdsch_Config
&&
...
...
@@ -693,6 +701,7 @@ int8_t nr_ue_process_dci(module_id_t module_id, int cc_id, uint8_t gNB_index, fr
pdsch_TimeDomainAllocationList
=
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
->
pdsch_TimeDomainAllocationList
->
choice
.
setup
;
else
if
(
mac
->
DLbwp
[
dl_bwp_id
-
1
]
&&
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Common
->
pdsch_ConfigCommon
->
choice
.
setup
->
pdsch_TimeDomainAllocationList
)
pdsch_TimeDomainAllocationList
=
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Common
->
pdsch_ConfigCommon
->
choice
.
setup
->
pdsch_TimeDomainAllocationList
;
}
else
if
(
mac
->
scc_SIB
&&
mac
->
scc_SIB
->
downlinkConfigCommon
.
initialDownlinkBWP
.
pdsch_ConfigCommon
->
choice
.
setup
)
pdsch_TimeDomainAllocationList
=
mac
->
scc_SIB
->
downlinkConfigCommon
.
initialDownlinkBWP
.
pdsch_ConfigCommon
->
choice
.
setup
->
pdsch_TimeDomainAllocationList
;
...
...
@@ -704,7 +713,9 @@ int8_t nr_ue_process_dci(module_id_t module_id, int cc_id, uint8_t gNB_index, fr
dlsch_config_pdu_1_0
->
number_symbols
,
dlsch_config_pdu_1_0
->
start_symbol
,
mappingtype
);
if
(
dl_bwp_id
){
dlsch_config_pdu_1_0
->
dmrsConfigType
=
(
mac
->
DLbwp
[
dl_bwp_id
-
1
]
!=
NULL
)
?
(
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
->
dmrs_DownlinkForPDSCH_MappingTypeA
->
choice
.
setup
->
dmrs_Type
==
NULL
?
0
:
1
)
:
0
;
}
/* number of DM-RS CDM groups without data according to subclause 5.1.6.2 of 3GPP TS 38.214 version 15.9.0 Release 15 */
if
(
dlsch_config_pdu_1_0
->
number_symbols
==
2
)
dlsch_config_pdu_1_0
->
n_dmrs_cdm_groups
=
1
;
...
...
@@ -1170,7 +1181,7 @@ void nr_ue_send_sdu(nr_downlink_indication_t *dl_info, NR_UL_TIME_ALIGNMENT_t *u
int
get_n_rb
(
NR_UE_MAC_INST_t
*
mac
,
int
rnti_type
){
int
N_RB
=
0
,
start_RB
;
NR_BWP_Id_t
dl_bwp_id
=
(
mac
->
DL_BWP_Id
==
0
)
?
1
:
mac
->
DL_BWP_Id
;
NR_BWP_Id_t
dl_bwp_id
=
mac
->
DL_BWP_Id
;
switch
(
rnti_type
)
{
case
NR_RNTI_RA
:
case
NR_RNTI_TC
:
...
...
@@ -1207,8 +1218,8 @@ uint8_t nr_extract_dci_info(NR_UE_MAC_INST_t *mac,
int
fsize
=
0
;
int
rnti_type
=
get_rnti_type
(
mac
,
rnti
);
NR_BWP_Id_t
dl_bwp_id
=
(
mac
->
DL_BWP_Id
==
0
)
?
1
:
mac
->
DL_BWP_Id
;
NR_BWP_Id_t
ul_bwp_id
=
(
mac
->
UL_BWP_Id
==
0
)
?
1
:
mac
->
UL_BWP_Id
;
NR_BWP_Id_t
dl_bwp_id
=
mac
->
DL_BWP_Id
;
NR_BWP_Id_t
ul_bwp_id
=
mac
->
UL_BWP_Id
;
int
N_RB_UL
=
0
;
...
...
@@ -1280,7 +1291,10 @@ uint8_t nr_extract_dci_info(NR_UE_MAC_INST_t *mac,
#endif
// check BWP id
if
(
mac
->
DLbwp
[
dl_bwp_id
-
1
])
N_RB
=
NRRIV2BW
(
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Common
->
genericParameters
.
locationAndBandwidth
,
MAX_BWP_SIZE
);
if
(
dl_bwp_id
){
if
(
mac
->
DLbwp
[
dl_bwp_id
-
1
])
N_RB
=
NRRIV2BW
(
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Common
->
genericParameters
.
locationAndBandwidth
,
MAX_BWP_SIZE
);
}
else
N_RB
=
NRRIV2BW
(
mac
->
scc_SIB
->
downlinkConfigCommon
.
initialDownlinkBWP
.
genericParameters
.
locationAndBandwidth
,
MAX_BWP_SIZE
);
// Freq domain assignment (275rb >> fsize = 16)
...
...
@@ -1463,7 +1477,10 @@ uint8_t nr_extract_dci_info(NR_UE_MAC_INST_t *mac,
case
NR_RNTI_TC
:
// check BWP id
if
(
mac
->
DLbwp
[
dl_bwp_id
-
1
])
N_RB
=
NRRIV2BW
(
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Common
->
genericParameters
.
locationAndBandwidth
,
MAX_BWP_SIZE
);
if
(
dl_bwp_id
){
if
(
mac
->
DLbwp
[
dl_bwp_id
-
1
])
N_RB
=
NRRIV2BW
(
mac
->
DLbwp
[
dl_bwp_id
-
1
]
->
bwp_Common
->
genericParameters
.
locationAndBandwidth
,
MAX_BWP_SIZE
);
}
else
N_RB
=
NRRIV2BW
(
mac
->
scc_SIB
->
downlinkConfigCommon
.
initialDownlinkBWP
.
genericParameters
.
locationAndBandwidth
,
MAX_BWP_SIZE
);
// indicating a DL DCI format - 1 bit
...
...
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