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
lizhongxiao
OpenXG-RAN
Commits
8954a140
Commit
8954a140
authored
Jan 11, 2024
by
Sakthivel Velumani
Committed by
Chieh-Chun Chen
Jan 11, 2024
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Remove UE from slice list(to be squashed)
parent
289c87d2
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
48 additions
and
3 deletions
+48
-3
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
+20
-0
openair2/LAYER2/NR_MAC_gNB/mac_rrc_dl_handler.c
openair2/LAYER2/NR_MAC_gNB/mac_rrc_dl_handler.c
+28
-3
No files found.
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
View file @
8954a140
...
...
@@ -57,6 +57,7 @@
#define DEBUG_gNB_SCHEDULER 1
#include "common/ran_context.h"
#include "NR_MAC_gNB/slicing/nr_slicing.h"
//#define DEBUG_DCI
...
...
@@ -2544,6 +2545,14 @@ void mac_remove_nr_ue(gNB_MAC_INST *nr_mac, rnti_t rnti)
NR_SCHED_UNLOCK
(
&
UE_info
->
mutex
);
delete_nr_ue_data
(
UE
,
nr_mac
->
common_channels
,
&
UE_info
->
uid_allocator
);
/* Dissociate UE from all corresponding slice*/
nr_pp_impl_param_dl_t
*
dl
=
&
nr_mac
->
pre_processor_dl
;
if
(
dl
->
slices
)
{
for
(
int
i
=
0
;
i
<
dl
->
slices
->
num
;
i
++
)
{
dl
->
remove_UE
(
dl
->
slices
,
UE
,
i
);
}
}
}
uint8_t
nr_get_tpc
(
int
target
,
uint8_t
cqi
,
int
incr
)
{
...
...
@@ -3015,6 +3024,17 @@ void prepare_initial_ul_rrc_message(gNB_MAC_INST *mac, NR_UE_info_t *UE)
UE
->
CellGroup
=
cellGroupConfig
;
process_CellGroup
(
cellGroupConfig
,
UE
);
/* Assign SRB1 to default slice */
const
long
lcid
=
1
;
nr_pp_impl_param_dl_t
*
dl
=
&
mac
->
pre_processor_dl
;
if
(
dl
->
slices
)
{
nssai_t
*
default_nssai
=
&
dl
->
slices
->
s
[
0
]
->
nssai
;
UE
->
UE_sched_ctrl
.
dl_lc_nssai
[
lcid
]
=
*
default_nssai
;
LOG_I
(
NR_MAC
,
"Setting NSSAI sst: %d, sd: %d for SRB: %ld
\n
"
,
default_nssai
->
sst
,
default_nssai
->
sd
,
lcid
);
dl
->
add_UE
(
dl
->
slices
,
UE
);
}
/* activate SRB0 */
nr_rlc_activate_srb0
(
UE
->
rnti
,
UE
,
send_initial_ul_rrc_message
);
...
...
openair2/LAYER2/NR_MAC_gNB/mac_rrc_dl_handler.c
View file @
8954a140
...
...
@@ -238,8 +238,25 @@ static NR_CellGroupConfig_t *clone_CellGroupConfig(const NR_CellGroupConfig_t *o
return
cloned
;
}
static
void
set_nssaiConfig
(
const
int
drb_len
,
const
f1ap_drb_to_be_setup_t
*
req_drbs
,
NR_UE_sched_ctrl_t
*
sched_ctrl
)
static
void
set_nssaiConfig
(
const
int
srb_len
,
const
f1ap_srb_to_be_setup_t
*
req_srbs
,
const
int
drb_len
,
const
f1ap_drb_to_be_setup_t
*
req_drbs
,
NR_UE_sched_ctrl_t
*
sched_ctrl
)
{
gNB_MAC_INST
*
mac
=
RC
.
nrmac
[
0
];
for
(
int
i
=
0
;
i
<
srb_len
;
i
++
)
{
const
f1ap_srb_to_be_setup_t
*
srb
=
&
req_srbs
[
i
];
const
long
lcid
=
get_lcid_from_srbid
(
srb
->
srb_id
);
/* consider first slice as default slice and assign it for SRBs */
nr_pp_impl_param_dl_t
*
dl
=
&
mac
->
pre_processor_dl
;
if
(
dl
->
slices
)
{
nssai_t
*
default_nssai
=
&
dl
->
slices
->
s
[
0
]
->
nssai
;
sched_ctrl
->
dl_lc_nssai
[
lcid
]
=
*
default_nssai
;
LOG_I
(
NR_MAC
,
"Setting NSSAI sst: %d, sd: %d for SRB: %ld
\n
"
,
default_nssai
->
sst
,
default_nssai
->
sd
,
srb
->
srb_id
);
}
}
for
(
int
i
=
0
;
i
<
drb_len
;
i
++
)
{
const
f1ap_drb_to_be_setup_t
*
drb
=
&
req_drbs
[
i
];
...
...
@@ -362,7 +379,11 @@ void ue_context_setup_request(const f1ap_ue_context_setup_t *req)
set_QoSConfig
(
req
,
&
UE
->
UE_sched_ctrl
);
/* Set NSSAI config in MAC for each active DRB */
set_nssaiConfig
(
req
->
drbs_to_be_setup_length
,
req
->
drbs_to_be_setup
,
&
UE
->
UE_sched_ctrl
);
set_nssaiConfig
(
req
->
srbs_to_be_setup_length
,
req
->
srbs_to_be_setup
,
req
->
drbs_to_be_setup_length
,
req
->
drbs_to_be_setup
,
&
UE
->
UE_sched_ctrl
);
/* Associate UE to the corresponding slice*/
nr_pp_impl_param_dl_t
*
dl
=
&
mac
->
pre_processor_dl
;
...
...
@@ -469,7 +490,11 @@ void ue_context_modification_request(const f1ap_ue_context_modif_req_t *req)
set_QoSConfig
(
req
,
&
UE
->
UE_sched_ctrl
);
/* Set NSSAI config in MAC for each active DRB */
set_nssaiConfig
(
req
->
drbs_to_be_setup_length
,
req
->
drbs_to_be_setup
,
&
UE
->
UE_sched_ctrl
);
set_nssaiConfig
(
req
->
srbs_to_be_setup_length
,
req
->
srbs_to_be_setup
,
req
->
drbs_to_be_setup_length
,
req
->
drbs_to_be_setup
,
&
UE
->
UE_sched_ctrl
);
/* Associate UE to the corresponding slice*/
nr_pp_impl_param_dl_t
*
dl
=
&
mac
->
pre_processor_dl
;
...
...
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