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
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
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
OpenXG
OpenXG-RAN
Commits
e678676a
Commit
e678676a
authored
1 year ago
by
francescomani
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
remove old BWP structures at UE MAC
parent
7c7d54e4
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
32 additions
and
94 deletions
+32
-94
openair2/LAYER2/NR_MAC_UE/config_ue.c
openair2/LAYER2/NR_MAC_UE/config_ue.c
+2
-19
openair2/LAYER2/NR_MAC_UE/mac_defs.h
openair2/LAYER2/NR_MAC_UE/mac_defs.h
+0
-4
openair2/LAYER2/NR_MAC_UE/mac_proto.h
openair2/LAYER2/NR_MAC_UE/mac_proto.h
+0
-1
openair2/LAYER2/NR_MAC_UE/nr_ra_procedures.c
openair2/LAYER2/NR_MAC_UE/nr_ra_procedures.c
+10
-31
openair2/LAYER2/NR_MAC_UE/nr_ue_dci_configuration.c
openair2/LAYER2/NR_MAC_UE/nr_ue_dci_configuration.c
+3
-2
openair2/LAYER2/NR_MAC_UE/nr_ue_scheduler.c
openair2/LAYER2/NR_MAC_UE/nr_ue_scheduler.c
+17
-36
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
+0
-1
No files found.
openair2/LAYER2/NR_MAC_UE/config_ue.c
View file @
e678676a
...
...
@@ -439,28 +439,11 @@ void config_common_ue(NR_UE_MAC_INST_t *mac,
@param NR_UE_MAC_INST_t mac: pointer to local MAC instance
@returns void
*/
void
config_control_ue
(
NR_UE_MAC_INST_t
*
mac
){
int
bwp_id
;
void
config_control_ue
(
NR_UE_MAC_INST_t
*
mac
)
{
NR_ServingCellConfig_t
*
scd
=
mac
->
cg
->
spCellConfig
->
spCellConfigDedicated
;
NR_BWP_Id_t
dl_bwp_id
=
mac
->
current_DL_BWP
.
bwp_id
;
// configure DLbwp
if
(
scd
->
downlinkBWP_ToAddModList
)
{
for
(
int
i
=
0
;
i
<
scd
->
downlinkBWP_ToAddModList
->
list
.
count
;
i
++
)
{
bwp_id
=
scd
->
downlinkBWP_ToAddModList
->
list
.
array
[
i
]
->
bwp_Id
;
mac
->
DLbwp
[
bwp_id
-
1
]
=
scd
->
downlinkBWP_ToAddModList
->
list
.
array
[
i
];
}
}
// configure ULbwp
if
(
scd
->
uplinkConfig
->
uplinkBWP_ToAddModList
)
{
for
(
int
i
=
0
;
i
<
scd
->
uplinkConfig
->
uplinkBWP_ToAddModList
->
list
.
count
;
i
++
)
{
bwp_id
=
scd
->
uplinkConfig
->
uplinkBWP_ToAddModList
->
list
.
array
[
i
]
->
bwp_Id
;
mac
->
ULbwp
[
bwp_id
-
1
]
=
scd
->
uplinkConfig
->
uplinkBWP_ToAddModList
->
list
.
array
[
i
];
}
}
configure_ss_coreset
(
mac
,
scd
,
dl_bwp_id
);
}
...
...
This diff is collapsed.
Click to expand it.
openair2/LAYER2/NR_MAC_UE/mac_defs.h
View file @
e678676a
...
...
@@ -412,8 +412,6 @@ typedef struct {
NR_UE_UL_BWP_t
current_UL_BWP
;
NR_UL_TIME_ALIGNMENT_t
ul_time_alignment
;
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_SS
];
...
...
@@ -527,7 +525,5 @@ typedef struct ssb_list_info {
uint8_t
nb_tx_ssb
;
}
ssb_list_info_t
;
void
config_dci_pdu
(
NR_UE_MAC_INST_t
*
mac
,
fapi_nr_dl_config_dci_dl_pdu_rel15_t
*
rel15
,
fapi_nr_dl_config_request_t
*
dl_config
,
int
rnti_type
,
int
ss_id
);
/*@}*/
#endif
/*__LAYER2_MAC_DEFS_H__ */
This diff is collapsed.
Click to expand it.
openair2/LAYER2/NR_MAC_UE/mac_proto.h
View file @
e678676a
...
...
@@ -420,7 +420,6 @@ int8_t nr_ue_process_dci_freq_dom_resource_assignment(nfapi_nr_ue_pusch_pdu_t *p
uint16_t
n_RB_DLBWP
,
uint16_t
riv
);
void
config_dci_pdu
(
NR_UE_MAC_INST_t
*
mac
,
fapi_nr_dl_config_dci_dl_pdu_rel15_t
*
rel15
,
fapi_nr_dl_config_request_t
*
dl_config
,
int
rnti_type
,
int
ss_id
);
void
fill_dci_search_candidates
(
NR_SearchSpace_t
*
ss
,
fapi_nr_dl_config_dci_dl_pdu_rel15_t
*
rel15
,
int
slot
,
int
rnti
);
void
build_ssb_to_ro_map
(
NR_UE_MAC_INST_t
*
mac
);
...
...
This diff is collapsed.
Click to expand it.
openair2/LAYER2/NR_MAC_UE/nr_ra_procedures.c
View file @
e678676a
...
...
@@ -85,40 +85,19 @@ void init_RA(module_id_t mod_id,
prach_resources
->
POWER_OFFSET_2STEP_RA
=
0
;
prach_resources
->
RA_SCALING_FACTOR_BI
=
1
;
struct
NR_PDCCH_ConfigCommon__commonSearchSpaceList
*
commonSearchSpaceList
;
NR_SearchSpaceId_t
*
ra_ss
;
NR_SearchSpaceId_t
ss_id
=
-
1
;
NR_SearchSpace_t
*
ss
=
NULL
;
if
(
mac
->
scc
)
{
NR_SearchSpaceId_t
*
ra_ss
=
mac
->
scc
->
downlinkConfigCommon
->
initialDownlinkBWP
->
pdcch_ConfigCommon
->
choice
.
setup
->
ra_SearchSpace
;
if
(
ra_ss
)
{
commonSearchSpaceList
=
mac
->
scc
->
downlinkConfigCommon
->
initialDownlinkBWP
->
pdcch_ConfigCommon
->
choice
.
setup
->
commonSearchSpaceList
;
ss_id
=
*
ra_ss
;
}
}
else
if
(
mac
->
scc_SIB
)
{
NR_SearchSpaceId_t
*
ra_ss
=
mac
->
scc_SIB
->
downlinkConfigCommon
.
initialDownlinkBWP
.
pdcch_ConfigCommon
->
choice
.
setup
->
ra_SearchSpace
;
if
(
ra_ss
)
{
commonSearchSpaceList
=
mac
->
scc_SIB
->
downlinkConfigCommon
.
initialDownlinkBWP
.
pdcch_ConfigCommon
->
choice
.
setup
->
commonSearchSpaceList
;
ss_id
=
*
ra_ss
;
}
}
if
(
ss_id
<
0
)
{
if
(
mac
->
current_DL_BWP
.
bwp_id
>
0
)
{
ra_ss
=
mac
->
DLbwp
[
mac
->
current_DL_BWP
.
bwp_id
-
1
]
->
bwp_Common
->
pdcch_ConfigCommon
->
choice
.
setup
->
ra_SearchSpace
;
if
(
ra_ss
)
{
commonSearchSpaceList
=
mac
->
DLbwp
[
mac
->
current_DL_BWP
.
bwp_id
-
1
]
->
bwp_Common
->
pdcch_ConfigCommon
->
choice
.
setup
->
commonSearchSpaceList
;
ss_id
=
*
ra_ss
;
}
}
}
AssertFatal
(
ss_id
>-
1
,
"Didn't find ra-SearchSpace
\n
"
);
NR_BWP_Id_t
dl_bwp_id
=
mac
->
current_DL_BWP
.
bwp_id
;
NR_BWP_DownlinkCommon_t
*
bwp_Common
=
get_bwp_downlink_common
(
mac
,
dl_bwp_id
);
AssertFatal
(
bwp_Common
!=
NULL
,
"bwp_Common is null
\n
"
);
NR_SetupRelease_PDCCH_ConfigCommon_t
*
pdcch_ConfigCommon
=
bwp_Common
->
pdcch_ConfigCommon
;
NR_SearchSpaceId_t
*
ss_id
=
pdcch_ConfigCommon
->
choice
.
setup
->
ra_SearchSpace
;
struct
NR_PDCCH_ConfigCommon__commonSearchSpaceList
*
commonSearchSpaceList
=
pdcch_ConfigCommon
->
choice
.
setup
->
commonSearchSpaceList
;
AssertFatal
(
ss_id
,
"Didn't find ra-SearchSpace
\n
"
);
AssertFatal
(
commonSearchSpaceList
->
list
.
count
>
0
,
"common SearchSpace list has 0 elements
\n
"
);
// Common searchspace list
for
(
int
i
=
0
;
i
<
commonSearchSpaceList
->
list
.
count
;
i
++
)
{
ss
=
commonSearchSpaceList
->
list
.
array
[
i
];
if
(
ss
->
searchSpaceId
==
ss_id
)
NR_SearchSpace_t
*
ss
=
commonSearchSpaceList
->
list
.
array
[
i
];
if
(
ss
->
searchSpaceId
==
*
ss_id
)
ra
->
ss
=
ss
;
}
...
...
This diff is collapsed.
Click to expand it.
openair2/LAYER2/NR_MAC_UE/nr_ue_dci_configuration.c
View file @
e678676a
...
...
@@ -266,8 +266,9 @@ void ue_dci_configuration(NR_UE_MAC_INST_t *mac, fapi_nr_dl_config_request_t *dl
int
ss_id
;
uint8_t
bwp_id
=
mac
->
current_DL_BWP
.
bwp_id
;
//NR_ServingCellConfig_t *scd = mac->scg->spCellConfig->spCellConfigDedicated;
NR_BWP_DownlinkDedicated_t
*
bwpd
=
(
bwp_id
>
0
)
?
mac
->
DLbwp
[
bwp_id
-
1
]
->
bwp_Dedicated
:
(
mac
->
cg
?
mac
->
cg
->
spCellConfig
->
spCellConfigDedicated
->
initialDownlinkBWP
:
NULL
);
NR_ServingCellConfig_t
*
scd
=
mac
->
cg
->
spCellConfig
->
spCellConfigDedicated
;
NR_BWP_DownlinkDedicated_t
*
bwpd
=
bwp_id
>
0
?
scd
->
downlinkBWP_ToAddModList
->
list
.
array
[
bwp_id
-
1
]
->
bwp_Dedicated
:
scd
->
initialDownlinkBWP
;
NR_BWP_DownlinkCommon_t
*
bwp_Common
=
get_bwp_downlink_common
(
mac
,
bwp_id
);
LOG_D
(
NR_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
);
...
...
This diff is collapsed.
Click to expand it.
openair2/LAYER2/NR_MAC_UE/nr_ue_scheduler.c
View file @
e678676a
...
...
@@ -526,11 +526,6 @@ int nr_config_pusch_pdu(NR_UE_MAC_INST_t *mac,
pusch_config_pdu
->
tbslbrm
=
0
;
}
else
if
(
dci
)
{
NR_BWP_Id_t
ul_bwp_id
=
mac
->
current_UL_BWP
.
bwp_id
;
int
target_ss
;
bool
valid_ptrs_setup
=
0
;
pusch_config_pdu
->
bwp_start
=
current_UL_BWP
->
BWPStart
;
pusch_config_pdu
->
bwp_size
=
current_UL_BWP
->
BWPSize
;
...
...
@@ -544,21 +539,21 @@ int nr_config_pusch_pdu(NR_UE_MAC_INST_t *mac,
pusch_config_pdu
->
transform_precoding
=
get_transformPrecoding
(
current_UL_BWP
,
*
dci_format
,
0
);
/*DCI format-related configuration*/
int
target_ss
;
if
(
*
dci_format
==
NR_UL_DCI_FORMAT_0_0
)
{
target_ss
=
NR_SearchSpace__searchSpaceType_PR_common
;
if
((
pusch_config_pdu
->
transform_precoding
==
NR_PUSCH_Config__transformPrecoder_disabled
)
&&
pusch_config_pdu
->
nr_of_symbols
<
3
)
pusch_config_pdu
->
num_dmrs_cdm_grps_no_data
=
1
;
else
pusch_config_pdu
->
num_dmrs_cdm_grps_no_data
=
2
;
}
else
if
(
*
dci_format
==
NR_UL_DCI_FORMAT_0_1
)
{
target_ss
=
NR_SearchSpace__searchSpaceType_PR_ue_Specific
;
ul_layers_config
(
mac
,
pusch_config_pdu
,
dci
,
*
dci_format
);
ul_ports_config
(
mac
,
&
dmrslength
,
pusch_config_pdu
,
dci
,
*
dci_format
);
}
else
{
LOG_E
(
NR_MAC
,
"In %s: UL grant from DCI format %d is not handled...
\n
"
,
__FUNCTION__
,
*
dci_format
);
return
-
1
;
}
int
mappingtype
=
tda_info
->
mapping_type
;
...
...
@@ -577,8 +572,6 @@ int nr_config_pusch_pdu(NR_UE_MAC_INST_t *mac,
/* TRANSFORM PRECODING ------------------------------------------------------------------------------------------*/
if
(
pusch_config_pdu
->
transform_precoding
==
NR_PUSCH_Config__transformPrecoder_enabled
)
{
pusch_config_pdu
->
num_dmrs_cdm_grps_no_data
=
2
;
uint32_t
n_RS_Id
=
0
;
if
(
NR_DMRS_ulconfig
->
transformPrecodingEnabled
&&
NR_DMRS_ulconfig
->
transformPrecodingEnabled
->
nPUSCH_Identity
!=
NULL
)
...
...
@@ -664,18 +657,6 @@ int nr_config_pusch_pdu(NR_UE_MAC_INST_t *mac,
pusch_config_pdu
->
start_symbol_index
,
mac
->
scc
?
mac
->
scc
->
dmrs_TypeA_Position
:
mac
->
mib
->
dmrs_TypeA_Position
);
if
(
ul_bwp_id
>
0
&&
mac
->
ULbwp
[
ul_bwp_id
-
1
]
&&
pusch_config_pdu
->
transform_precoding
==
NR_PUSCH_Config__transformPrecoder_disabled
&&
*
dci_format
!=
NR_UL_DCI_FORMAT_0_1
)
{
pusch_config_pdu
->
num_dmrs_cdm_grps_no_data
=
1
;
}
else
if
(
*
dci_format
==
NR_UL_DCI_FORMAT_0_0
||
(
ul_bwp_id
>
0
&&
mac
->
ULbwp
[
ul_bwp_id
-
1
]
&&
pusch_config_pdu
->
transform_precoding
==
NR_PUSCH_Config__transformPrecoder_enabled
))
{
pusch_config_pdu
->
num_dmrs_cdm_grps_no_data
=
2
;
}
// Num PRB Overhead from PUSCH-ServingCellConfig
if
(
current_UL_BWP
->
pusch_servingcellconfig
&&
current_UL_BWP
->
pusch_servingcellconfig
->
xOverhead
)
N_PRB_oh
=
*
current_UL_BWP
->
pusch_servingcellconfig
->
xOverhead
;
...
...
@@ -699,17 +680,17 @@ int nr_config_pusch_pdu(NR_UE_MAC_INST_t *mac,
if
(
pusch_config_pdu
->
transform_precoding
==
NR_PUSCH_Config__transformPrecoder_disabled
)
{
nfapi_nr_ue_ptrs_ports_t
ptrs_ports_list
;
pusch_config_pdu
->
pusch_ptrs
.
ptrs_ports_list
=
&
ptrs_ports_list
;
valid_ptrs_setup
=
set_ul_ptrs_values
(
pusch_Config
->
dmrs_UplinkForPUSCH_MappingTypeB
->
choice
.
setup
->
phaseTrackingRS
->
choice
.
setup
,
pusch_config_pdu
->
rb_size
,
pusch_config_pdu
->
mcs_index
,
pusch_config_pdu
->
mcs_table
,
&
pusch_config_pdu
->
pusch_ptrs
.
ptrs_freq_density
,
&
pusch_config_pdu
->
pusch_ptrs
.
ptrs_time_density
,
&
pusch_config_pdu
->
pusch_ptrs
.
ptrs_ports_list
->
ptrs_re_offset
,
&
pusch_config_pdu
->
pusch_ptrs
.
num_ptrs_ports
,
&
pusch_config_pdu
->
pusch_ptrs
.
ul_ptrs_power
,
pusch_config_pdu
->
nr_of_symbols
);
if
(
valid_ptrs_setup
==
true
)
{
bool
valid_ptrs_setup
=
set_ul_ptrs_values
(
pusch_Config
->
dmrs_UplinkForPUSCH_MappingTypeB
->
choice
.
setup
->
phaseTrackingRS
->
choice
.
setup
,
pusch_config_pdu
->
rb_size
,
pusch_config_pdu
->
mcs_index
,
pusch_config_pdu
->
mcs_table
,
&
pusch_config_pdu
->
pusch_ptrs
.
ptrs_freq_density
,
&
pusch_config_pdu
->
pusch_ptrs
.
ptrs_time_density
,
&
pusch_config_pdu
->
pusch_ptrs
.
ptrs_ports_list
->
ptrs_re_offset
,
&
pusch_config_pdu
->
pusch_ptrs
.
num_ptrs_ports
,
&
pusch_config_pdu
->
pusch_ptrs
.
ul_ptrs_power
,
pusch_config_pdu
->
nr_of_symbols
);
if
(
valid_ptrs_setup
==
true
)
{
pusch_config_pdu
->
pdu_bit_map
|=
PUSCH_PDU_BITMAP_PUSCH_PTRS
;
}
LOG_D
(
NR_MAC
,
"UL PTRS values: PTRS time den: %d, PTRS freq den: %d
\n
"
,
pusch_config_pdu
->
pusch_ptrs
.
ptrs_time_density
,
pusch_config_pdu
->
pusch_ptrs
.
ptrs_freq_density
);
...
...
This diff is collapsed.
Click to expand it.
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
View file @
e678676a
...
...
@@ -2897,7 +2897,6 @@ void UL_tti_req_ahead_initialization(gNB_MAC_INST * gNB, NR_ServingCellConfigCom
void
send_initial_ul_rrc_message
(
gNB_MAC_INST
*
mac
,
int
rnti
,
const
uint8_t
*
sdu
,
sdu_size_t
sdu_len
,
void
*
rawUE
)
{
LOG_W
(
MAC
,
"[RAPROC] Received SDU for CCCH length %d for UE %04x
\n
"
,
sdu_len
,
rnti
);
NR_UE_info_t
*
UE
=
(
NR_UE_info_t
*
)
rawUE
;
NR_SCHED_ENSURE_LOCKED
(
&
mac
->
sched_lock
);
...
...
This diff is collapsed.
Click to expand it.
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