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
ZhouShuya
OpenXG-RAN
Commits
348aa60c
Commit
348aa60c
authored
4 years ago
by
Robert Schmidt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add MAC UE Context with initial BWP Ids from RRC Config
parent
1f8cdc16
integration_2021_wk12
fix_NR_DLUL_PF
fix_NR_DLUL_PF_benchmark
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
29 additions
and
6 deletions
+29
-6
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
+29
-6
No files found.
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
View file @
348aa60c
...
@@ -1700,6 +1700,24 @@ int get_nrofHARQ_ProcessesForPDSCH(e_NR_PDSCH_ServingCellConfig__nrofHARQ_Proces
...
@@ -1700,6 +1700,24 @@ int get_nrofHARQ_ProcessesForPDSCH(e_NR_PDSCH_ServingCellConfig__nrofHARQ_Proces
}
}
}
}
int
get_dl_bwp_id
(
const
NR_ServingCellConfig_t
*
servingCellConfig
)
{
if
(
servingCellConfig
->
firstActiveDownlinkBWP_Id
)
return
*
servingCellConfig
->
firstActiveDownlinkBWP_Id
;
else
if
(
servingCellConfig
->
defaultDownlinkBWP_Id
)
return
*
servingCellConfig
->
defaultDownlinkBWP_Id
;
else
return
1
;
}
int
get_ul_bwp_id
(
const
NR_ServingCellConfig_t
*
servingCellConfig
)
{
if
(
servingCellConfig
->
uplinkConfig
&&
servingCellConfig
->
uplinkConfig
->
firstActiveUplinkBWP_Id
)
return
*
servingCellConfig
->
uplinkConfig
->
firstActiveUplinkBWP_Id
;
else
return
1
;
}
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
int
add_new_nr_ue
(
module_id_t
mod_idP
,
rnti_t
rntiP
,
NR_CellGroupConfig_t
*
secondaryCellGroup
)
int
add_new_nr_ue
(
module_id_t
mod_idP
,
rnti_t
rntiP
,
NR_CellGroupConfig_t
*
secondaryCellGroup
)
{
{
...
@@ -1735,20 +1753,25 @@ int add_new_nr_ue(module_id_t mod_idP, rnti_t rntiP, NR_CellGroupConfig_t *secon
...
@@ -1735,20 +1753,25 @@ int add_new_nr_ue(module_id_t mod_idP, rnti_t rntiP, NR_CellGroupConfig_t *secon
/* Set default BWPs */
/* Set default BWPs */
const
struct
NR_ServingCellConfig__downlinkBWP_ToAddModList
*
bwpList
=
servingCellConfig
->
downlinkBWP_ToAddModList
;
const
struct
NR_ServingCellConfig__downlinkBWP_ToAddModList
*
bwpList
=
servingCellConfig
->
downlinkBWP_ToAddModList
;
AssertFatal
(
bwpList
->
list
.
count
==
1
,
const
int
bwp_id
=
get_dl_bwp_id
(
servingCellConfig
);
"downlinkBWP_ToAddModList has %d BWP!
\n
"
,
AssertFatal
(
bwp_id
>
0
&&
bwp_id
<=
bwpList
->
list
.
count
,
"%s(): illegal bwp_id %d (max %d)!
\n
"
,
__func__
,
bwp_id
,
bwpList
->
list
.
count
);
bwpList
->
list
.
count
);
const
int
bwp_id
=
1
;
sched_ctrl
->
active_bwp
=
bwpList
->
list
.
array
[
bwp_id
-
1
];
sched_ctrl
->
active_bwp
=
bwpList
->
list
.
array
[
bwp_id
-
1
];
const
int
target_ss
=
NR_SearchSpace__searchSpaceType_PR_ue_Specific
;
const
int
target_ss
=
NR_SearchSpace__searchSpaceType_PR_ue_Specific
;
sched_ctrl
->
search_space
=
get_searchspace
(
sched_ctrl
->
active_bwp
,
target_ss
);
sched_ctrl
->
search_space
=
get_searchspace
(
sched_ctrl
->
active_bwp
,
target_ss
);
sched_ctrl
->
coreset
=
get_coreset
(
sched_ctrl
->
active_bwp
,
sched_ctrl
->
search_space
,
1
/* dedicated */
);
sched_ctrl
->
coreset
=
get_coreset
(
sched_ctrl
->
active_bwp
,
sched_ctrl
->
search_space
,
1
/* dedicated */
);
const
struct
NR_UplinkConfig__uplinkBWP_ToAddModList
*
ubwpList
=
servingCellConfig
->
uplinkConfig
->
uplinkBWP_ToAddModList
;
const
struct
NR_UplinkConfig__uplinkBWP_ToAddModList
*
ubwpList
=
servingCellConfig
->
uplinkConfig
->
uplinkBWP_ToAddModList
;
AssertFatal
(
ubwpList
->
list
.
count
==
1
,
const
int
ubwp_id
=
get_ul_bwp_id
(
servingCellConfig
);
"uplinkBWP_ToAddModList has %d BWP!
\n
"
,
AssertFatal
(
ubwp_id
>
0
&&
ubwp_id
<=
ubwpList
->
list
.
count
,
"%s(): illegal ubwp_id %d (max %d)!
\n
"
,
__func__
,
ubwp_id
,
ubwpList
->
list
.
count
);
ubwpList
->
list
.
count
);
sched_ctrl
->
active_ubwp
=
ubwpList
->
list
.
array
[
bwp_id
-
1
];
sched_ctrl
->
active_ubwp
=
ubwpList
->
list
.
array
[
u
bwp_id
-
1
];
/* get Number of HARQ processes for this UE */
/* get Number of HARQ processes for this UE */
AssertFatal
(
servingCellConfig
->
pdsch_ServingCellConfig
->
present
==
NR_SetupRelease_PDSCH_ServingCellConfig_PR_setup
,
AssertFatal
(
servingCellConfig
->
pdsch_ServingCellConfig
->
present
==
NR_SetupRelease_PDSCH_ServingCellConfig_PR_setup
,
...
...
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