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
508b67e5
Commit
508b67e5
authored
Mar 21, 2023
by
francescomani
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
limiting SR periodicity according to scs
parent
da193d1b
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
19 additions
and
15 deletions
+19
-15
openair2/RRC/NR/MESSAGES/asn1_msg.c
openair2/RRC/NR/MESSAGES/asn1_msg.c
+1
-1
openair2/RRC/NR/nr_rrc_config.c
openair2/RRC/NR/nr_rrc_config.c
+16
-13
openair2/RRC/NR/nr_rrc_config.h
openair2/RRC/NR/nr_rrc_config.h
+2
-1
No files found.
openair2/RRC/NR/MESSAGES/asn1_msg.c
View file @
508b67e5
...
...
@@ -735,7 +735,7 @@ void fill_initial_SpCellConfig(int uid,
initialUplinkBWP
->
srs_Config
=
calloc
(
1
,
sizeof
(
*
initialUplinkBWP
->
srs_Config
));
config_srs
(
scc
,
initialUplinkBWP
->
srs_Config
,
NULL
,
curr_bwp
,
uid
,
0
,
maxMIMO_Layers
,
0
);
scheduling_request_config
(
scc
,
pucch_Config
);
scheduling_request_config
(
scc
,
pucch_Config
,
scc
->
uplinkConfigCommon
->
initialUplinkBWP
->
genericParameters
.
subcarrierSpacing
);
set_dl_DataToUL_ACK
(
pucch_Config
,
configuration
->
minRXTXTIME
,
scc
->
uplinkConfigCommon
->
initialUplinkBWP
->
genericParameters
.
subcarrierSpacing
);
...
...
openair2/RRC/NR/nr_rrc_config.c
View file @
508b67e5
...
...
@@ -883,7 +883,7 @@ void set_pucch_power_config(NR_PUCCH_Config_t *pucch_Config, int do_csirs) {
asn1cSeqAdd
(
&
pucch_Config
->
spatialRelationInfoToAddModList
->
list
,
pucchspatial
);
}
static
void
set_SR_periodandoffset
(
NR_SchedulingRequestResourceConfig_t
*
schedulingRequestResourceConfig
,
const
NR_ServingCellConfigCommon_t
*
scc
)
static
void
set_SR_periodandoffset
(
NR_SchedulingRequestResourceConfig_t
*
schedulingRequestResourceConfig
,
const
NR_ServingCellConfigCommon_t
*
scc
,
int
scs
)
{
const
NR_TDD_UL_DL_Pattern_t
*
tdd
=
scc
->
tdd_UL_DL_ConfigurationCommon
?
&
scc
->
tdd_UL_DL_ConfigurationCommon
->
pattern1
:
NULL
;
int
sr_slot
=
1
;
// in FDD SR in slot 1
...
...
@@ -892,43 +892,46 @@ static void set_SR_periodandoffset(NR_SchedulingRequestResourceConfig_t *schedul
schedulingRequestResourceConfig
->
periodicityAndOffset
=
calloc
(
1
,
sizeof
(
*
schedulingRequestResourceConfig
->
periodicityAndOffset
));
if
(
sr_slot
<
1
0
){
if
(
sr_slot
<
10
&&
scs
<
NR_SubcarrierSpacing_kHz6
0
){
schedulingRequestResourceConfig
->
periodicityAndOffset
->
present
=
NR_SchedulingRequestResourceConfig__periodicityAndOffset_PR_sl10
;
schedulingRequestResourceConfig
->
periodicityAndOffset
->
choice
.
sl10
=
sr_slot
;
return
;
}
if
(
sr_slot
<
20
){
else
if
(
sr_slot
<
20
&&
scs
<
NR_SubcarrierSpacing_kHz1
20
){
schedulingRequestResourceConfig
->
periodicityAndOffset
->
present
=
NR_SchedulingRequestResourceConfig__periodicityAndOffset_PR_sl20
;
schedulingRequestResourceConfig
->
periodicityAndOffset
->
choice
.
sl20
=
sr_slot
;
return
;
}
if
(
sr_slot
<
40
){
else
if
(
sr_slot
<
40
){
schedulingRequestResourceConfig
->
periodicityAndOffset
->
present
=
NR_SchedulingRequestResourceConfig__periodicityAndOffset_PR_sl40
;
schedulingRequestResourceConfig
->
periodicityAndOffset
->
choice
.
sl40
=
sr_slot
;
return
;
}
if
(
sr_slot
<
80
){
else
if
(
sr_slot
<
80
||
scs
==
NR_SubcarrierSpacing_kHz15
){
schedulingRequestResourceConfig
->
periodicityAndOffset
->
present
=
NR_SchedulingRequestResourceConfig__periodicityAndOffset_PR_sl80
;
schedulingRequestResourceConfig
->
periodicityAndOffset
->
choice
.
sl80
=
sr_slot
;
return
;
}
if
(
sr_slot
<
16
0
){
else
if
(
sr_slot
<
160
||
scs
==
NR_SubcarrierSpacing_kHz3
0
){
schedulingRequestResourceConfig
->
periodicityAndOffset
->
present
=
NR_SchedulingRequestResourceConfig__periodicityAndOffset_PR_sl160
;
schedulingRequestResourceConfig
->
periodicityAndOffset
->
choice
.
sl160
=
sr_slot
;
return
;
}
if
(
sr_slot
<
32
0
){
else
if
(
sr_slot
<
320
||
NR_SubcarrierSpacing_kHz6
0
){
schedulingRequestResourceConfig
->
periodicityAndOffset
->
present
=
NR_SchedulingRequestResourceConfig__periodicityAndOffset_PR_sl320
;
schedulingRequestResourceConfig
->
periodicityAndOffset
->
choice
.
sl320
=
sr_slot
;
return
;
}
else
{
schedulingRequestResourceConfig
->
periodicityAndOffset
->
present
=
NR_SchedulingRequestResourceConfig__periodicityAndOffset_PR_sl640
;
schedulingRequestResourceConfig
->
periodicityAndOffset
->
choice
.
sl640
=
sr_slot
;
}
}
void
scheduling_request_config
(
const
NR_ServingCellConfigCommon_t
*
scc
,
NR_PUCCH_Config_t
*
pucch_Config
)
{
NR_PUCCH_Config_t
*
pucch_Config
,
int
scs
)
{
// format with <=2 bits in pucch resource set 0
NR_PUCCH_ResourceSet_t
*
pucchresset
=
pucch_Config
->
resourceSetToAddModList
->
list
.
array
[
0
];
// assigning the 1st pucch resource in the set to scheduling request
...
...
@@ -939,7 +942,7 @@ void scheduling_request_config(const NR_ServingCellConfigCommon_t *scc,
schedulingRequestResourceConfig
->
schedulingRequestResourceId
=
1
;
schedulingRequestResourceConfig
->
schedulingRequestID
=
0
;
set_SR_periodandoffset
(
schedulingRequestResourceConfig
,
scc
);
set_SR_periodandoffset
(
schedulingRequestResourceConfig
,
scc
,
scs
);
schedulingRequestResourceConfig
->
resource
=
calloc
(
1
,
sizeof
(
*
schedulingRequestResourceConfig
->
resource
));
*
schedulingRequestResourceConfig
->
resource
=
*
pucchressetid
;
...
...
@@ -1250,7 +1253,7 @@ void config_uplinkBWP(NR_BWP_Uplink_t *ubwp,
config_pucch_resset0
(
pucch_Config
,
uid
,
curr_bwp
,
uecap
);
config_pucch_resset1
(
pucch_Config
,
uecap
);
set_pucch_power_config
(
pucch_Config
,
configuration
->
do_CSIRS
);
scheduling_request_config
(
scc
,
pucch_Config
);
scheduling_request_config
(
scc
,
pucch_Config
,
ubwp
->
bwp_Common
->
genericParameters
.
subcarrierSpacing
);
set_dl_DataToUL_ACK
(
pucch_Config
,
configuration
->
minRXTXTIME
,
ubwp
->
bwp_Common
->
genericParameters
.
subcarrierSpacing
);
NR_PUSCH_Config_t
*
pusch_Config
=
NULL
;
...
...
openair2/RRC/NR/nr_rrc_config.h
View file @
508b67e5
...
...
@@ -53,7 +53,8 @@ void config_pucch_resset1(NR_PUCCH_Config_t *pucch_Config, NR_UE_NR_Capability_t
void
set_dl_DataToUL_ACK
(
NR_PUCCH_Config_t
*
pucch_Config
,
int
min_feedback_time
,
NR_SubcarrierSpacing_t
subcarrierSpacing
);
void
set_pucch_power_config
(
NR_PUCCH_Config_t
*
pucch_Config
,
int
do_csirs
);
void
scheduling_request_config
(
const
NR_ServingCellConfigCommon_t
*
scc
,
NR_PUCCH_Config_t
*
pucch_Config
);
NR_PUCCH_Config_t
*
pucch_Config
,
int
scs
);
void
config_rsrp_meas_report
(
NR_CSI_MeasConfig_t
*
csi_MeasConfig
,
const
NR_ServingCellConfigCommon_t
*
servingcellconfigcommon
,
NR_PUCCH_CSI_Resource_t
*
pucchcsires
,
int
do_csi
,
int
rep_id
,
int
uid
);
void
config_csi_meas_report
(
NR_CSI_MeasConfig_t
*
csi_MeasConfig
,
const
NR_ServingCellConfigCommon_t
*
servingcellconfigcommon
,
...
...
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