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
littleBu
OpenXG-RAN
Commits
f267641b
Commit
f267641b
authored
Feb 07, 2025
by
Raghavendra Dinavahi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Changes in function prepare_sim_uecap
parent
3e27175a
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
63 additions
and
8 deletions
+63
-8
openair2/LAYER2/NR_MAC_UE/nr_ue_power_procedures.c
openair2/LAYER2/NR_MAC_UE/nr_ue_power_procedures.c
+1
-1
openair2/LAYER2/NR_MAC_UE/tests/test_nr_ue_power_procedures.cpp
...r2/LAYER2/NR_MAC_UE/tests/test_nr_ue_power_procedures.cpp
+1
-1
openair2/RRC/NR/nr_rrc_config.c
openair2/RRC/NR/nr_rrc_config.c
+61
-6
No files found.
openair2/LAYER2/NR_MAC_UE/nr_ue_power_procedures.c
View file @
f267641b
...
...
@@ -233,7 +233,7 @@ float nr_get_Pcmax(int p_Max,
float
nr_get_Pcmin
(
int
bandwidth_index
)
{
const
float
table_38101_6_3_1_1
[]
=
{
-
40
,
-
40
,
-
40
,
-
40
,
-
39
,
-
38
.
2
,
-
37
.
5
,
-
37
,
-
36
.
5
,
-
35
.
2
,
-
34
.
6
,
-
34
,
-
33
.
5
,
-
33
-
40
,
-
40
,
-
40
,
-
40
,
-
39
,
-
38
.
2
,
-
37
.
5
,
-
37
,
-
36
.
5
,
-
3
6
,
-
3
5
.
2
,
-
34
.
6
,
-
34
,
-
33
.
5
,
-
33
};
return
table_38101_6_3_1_1
[
bandwidth_index
];
}
...
...
openair2/LAYER2/NR_MAC_UE/tests/test_nr_ue_power_procedures.cpp
View file @
f267641b
...
...
@@ -178,7 +178,7 @@ TEST(test_pucch_power_state, test_accumulated_delta_pucch)
TEST
(
pc_min
,
check_all_bw_indexes
)
{
const
int
bws
[]
=
{
5
,
10
,
15
,
20
,
25
,
30
,
35
,
40
,
50
,
60
,
70
,
80
,
90
,
100
};
const
int
bws
[]
=
{
5
,
10
,
15
,
20
,
25
,
30
,
35
,
40
,
45
,
50
,
60
,
70
,
80
,
90
,
100
};
for
(
auto
i
=
0U
;
i
<
sizeofArray
(
bws
);
i
++
)
{
(
void
)
nr_get_Pcmin
(
i
);
}
...
...
openair2/RRC/NR/nr_rrc_config.c
View file @
f267641b
...
...
@@ -822,6 +822,48 @@ static NR_SetupRelease_SRS_Config_t *get_config_srs(const NR_ServingCellConfigCo
return
setup_release_srs_Config
;
}
static
int
get_SupportedBandwidth_fr1_bw_index
(
int
bw_index
)
{
int
val
=
-
1
;
switch
(
bw_index
)
{
case
NR_SupportedBandwidth_v1700__fr1_r17_mhz5
:
case
NR_SupportedBandwidth_v1700__fr1_r17_mhz10
:
case
NR_SupportedBandwidth_v1700__fr1_r17_mhz15
:
case
NR_SupportedBandwidth_v1700__fr1_r17_mhz20
:
case
NR_SupportedBandwidth_v1700__fr1_r17_mhz25
:
val
=
bw_index
;
break
;
case
NR_SupportedBandwidth_v1700__fr1_r17_mhz30
:
case
NR_SupportedBandwidth_v1700__fr1_r17_mhz35
:
val
=
NR_SupportedBandwidth__fr1_mhz30
;
break
;
case
NR_SupportedBandwidth_v1700__fr1_r17_mhz40
:
case
NR_SupportedBandwidth_v1700__fr1_r17_mhz45
:
val
=
NR_SupportedBandwidth__fr1_mhz40
;
break
;
case
NR_SupportedBandwidth_v1700__fr1_r17_mhz50
:
val
=
NR_SupportedBandwidth__fr1_mhz50
;
break
;
case
NR_SupportedBandwidth_v1700__fr1_r17_mhz60
:
val
=
NR_SupportedBandwidth__fr1_mhz60
;
break
;
case
NR_SupportedBandwidth_v1700__fr1_r17_mhz70
:
case
NR_SupportedBandwidth_v1700__fr1_r17_mhz80
:
val
=
NR_SupportedBandwidth__fr1_mhz80
;
break
;
case
NR_SupportedBandwidth_v1700__fr1_r17_mhz90
:
case
NR_SupportedBandwidth_v1700__fr1_r17_mhz100
:
val
=
NR_SupportedBandwidth__fr1_mhz100
;
break
;
default:
AssertFatal
(
1
==
0
,
"Invalid bw index
\n
"
);
}
return
val
;
}
void
prepare_sim_uecap
(
NR_UE_NR_Capability_t
*
cap
,
NR_ServingCellConfigCommon_t
*
scc
,
int
numerology
,
...
...
@@ -858,26 +900,39 @@ void prepare_sim_uecap(NR_UE_NR_Capability_t *cap,
fs
->
featureSetsDownlinkPerCC
=
calloc
(
1
,
sizeof
(
*
fs
->
featureSetsDownlinkPerCC
));
NR_FeatureSetDownlinkPerCC_t
*
fs_cc
=
calloc
(
1
,
sizeof
(
*
fs_cc
));
fs_cc
->
supportedSubcarrierSpacingDL
=
numerology
;
int
bw
=
get_supported_band_index
(
numerology
,
freq_range
,
rbsize
);
if
(
bw
==
10
)
// 90MHz
int
bw_index
=
get_supported_band_index
(
numerology
,
freq_range
,
rbsize
);
int
bw
=
get_supported_bw_mhz
(
freq_range
,
bw_index
);
if
(
bw
==
90
)
// 90MHz
fs_cc
->
channelBW_90mhz
=
calloc
(
1
,
sizeof
(
*
fs_cc
->
channelBW_90mhz
));
if
(
bw
==
11
)
// 100MHz
bw
--
;
if
(
freq_range
==
FR2
)
{
fs_cc
->
supportedBandwidthDL
.
present
=
NR_SupportedBandwidth_PR_fr2
;
fs_cc
->
supportedBandwidthDL
.
choice
.
fr2
=
bw
;
fs_cc
->
supportedBandwidthDL
.
choice
.
fr2
=
bw
_index
;
}
else
{
fs_cc
->
supportedBandwidthDL
.
present
=
NR_SupportedBandwidth_PR_fr1
;
fs_cc
->
supportedBandwidthDL
.
choice
.
fr1
=
bw
;
fs_cc
->
supportedBandwidthDL
.
choice
.
fr1
=
get_SupportedBandwidth_fr1_bw_index
(
bw_index
)
;
}
fs_cc
->
supportedModulationOrderDL
=
calloc
(
1
,
sizeof
(
*
fs_cc
->
supportedModulationOrderDL
));
*
fs_cc
->
supportedModulationOrderDL
=
NR_ModulationOrder_qam256
;
asn1cSeqAdd
(
&
fs
->
featureSetsDownlinkPerCC
->
list
,
fs_cc
);
if
(
bw
==
35
||
bw
==
45
||
bw
==
70
)
{
fs
->
ext6
=
calloc
(
1
,
sizeof
(
*
fs
->
ext6
));
fs
->
ext6
->
featureSetsDownlinkPerCC_v1700
=
calloc
(
1
,
sizeof
(
*
fs
->
ext6
->
featureSetsDownlinkPerCC_v1700
));
NR_FeatureSetDownlinkPerCC_v1700_t
*
fs_dlcc_v1700
=
calloc
(
1
,
sizeof
(
*
fs_dlcc_v1700
));
fs_dlcc_v1700
->
supportedBandwidthDL_v1710
=
calloc
(
1
,
sizeof
(
*
fs_dlcc_v1700
->
supportedBandwidthDL_v1710
));
fs_dlcc_v1700
->
supportedBandwidthDL_v1710
->
present
=
NR_SupportedBandwidth_v1700_PR_fr1_r17
;
fs_dlcc_v1700
->
supportedBandwidthDL_v1710
->
choice
.
fr1_r17
=
bw_index
;
asn1cSeqAdd
(
&
fs
->
ext6
->
featureSetsDownlinkPerCC_v1700
->
list
,
fs_dlcc_v1700
);
}
}
phy_Parameters
->
phy_ParametersFRX_Diff
=
calloc
(
1
,
sizeof
(
*
phy_Parameters
->
phy_ParametersFRX_Diff
));
phy_Parameters
->
phy_ParametersFRX_Diff
->
pucch_F0_2WithoutFH
=
NULL
;
if
(
LOG_DEBUGFLAG
(
DEBUG_ASN1
))
{
xer_fprint
(
stdout
,
&
asn_DEF_NR_UE_NR_Capability
,
cap
);
}
}
void
nr_rrc_config_dl_tda
(
struct
NR_PDSCH_TimeDomainResourceAllocationList
*
pdsch_TimeDomainAllocationList
,
...
...
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