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
wangwenhui
OpenXG-RAN
Commits
1a5a0297
Commit
1a5a0297
authored
Dec 02, 2017
by
Raymond Knopp
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
minor changes to config.c
parent
65b8e824
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
904 additions
and
991 deletions
+904
-991
openair2/LAYER2/MAC/config.c
openair2/LAYER2/MAC/config.c
+904
-991
No files found.
openair2/LAYER2/MAC/config.c
View file @
1a5a0297
...
...
@@ -80,7 +80,7 @@ void ue_mac_reset(module_id_t module_idP, uint8_t eNB_index)
UE_mac_inst
[
module_idP
].
scheduling_info
.
SR_pending
=
0
;
UE_mac_inst
[
module_idP
].
scheduling_info
.
SR_COUNTER
=
0
;
//Set BSR Trigger Bmp and remove timer flags
//Set BSR Trigger Bmp and remove timer flags
UE_mac_inst
[
module_idP
].
BSR_reporting_active
=
BSR_TRIGGER_NONE
;
// stop ongoing RACH procedure
...
...
@@ -296,110 +296,60 @@ config_sib2(int Mod_idP,
nfapi_config_request_t
*
cfg
=
&
RC
.
mac
[
Mod_idP
]
->
config
[
CC_idP
];
cfg
->
subframe_config
.
pb
.
value
=
radioResourceConfigCommonP
->
pdsch_ConfigCommon
.
p_b
;
cfg
->
rf_config
.
reference_signal_power
.
value
=
radioResourceConfigCommonP
->
pdsch_ConfigCommon
.
referenceSignalPower
;
cfg
->
nfapi_config
.
max_transmit_power
.
value
=
cfg
->
rf_config
.
reference_signal_power
.
value
+
cfg
->
subframe_config
.
pb
.
value
=
radioResourceConfigCommonP
->
pdsch_ConfigCommon
.
p_b
;
cfg
->
rf_config
.
reference_signal_power
.
value
=
radioResourceConfigCommonP
->
pdsch_ConfigCommon
.
referenceSignalPower
;
cfg
->
nfapi_config
.
max_transmit_power
.
value
=
cfg
->
rf_config
.
reference_signal_power
.
value
+
power_off_dB
[
cfg
->
rf_config
.
dl_channel_bandwidth
.
value
];
cfg
->
prach_config
.
configuration_index
.
value
=
radioResourceConfigCommonP
->
prach_Config
.
prach_ConfigInfo
.
prach_ConfigIndex
;
cfg
->
prach_config
.
root_sequence_index
.
value
=
radioResourceConfigCommonP
->
prach_Config
.
rootSequenceIndex
;
cfg
->
prach_config
.
zero_correlation_zone_configuration
.
value
=
radioResourceConfigCommonP
->
prach_Config
.
prach_ConfigInfo
.
zeroCorrelationZoneConfig
;
cfg
->
prach_config
.
high_speed_flag
.
value
=
radioResourceConfigCommonP
->
prach_Config
.
prach_ConfigInfo
.
highSpeedFlag
;
cfg
->
prach_config
.
frequency_offset
.
value
=
radioResourceConfigCommonP
->
prach_Config
.
prach_ConfigInfo
.
prach_FreqOffset
;
cfg
->
pusch_config
.
hopping_mode
.
value
=
radioResourceConfigCommonP
->
pusch_ConfigCommon
.
pusch_ConfigBasic
.
hoppingMode
;
cfg
->
pusch_config
.
number_of_subbands
.
value
=
radioResourceConfigCommonP
->
pusch_ConfigCommon
.
pusch_ConfigBasic
.
n_SB
;
cfg
->
pusch_config
.
hopping_offset
.
value
=
radioResourceConfigCommonP
->
pusch_ConfigCommon
.
pusch_ConfigBasic
.
pusch_HoppingOffset
;
cfg
->
pucch_config
.
delta_pucch_shift
.
value
=
radioResourceConfigCommonP
->
pucch_ConfigCommon
.
deltaPUCCH_Shift
;
cfg
->
pucch_config
.
n_cqi_rb
.
value
=
radioResourceConfigCommonP
->
pucch_ConfigCommon
.
nRB_CQI
;
cfg
->
pucch_config
.
n_an_cs
.
value
=
radioResourceConfigCommonP
->
pucch_ConfigCommon
.
nCS_AN
;
cfg
->
pucch_config
.
n1_pucch_an
.
value
=
radioResourceConfigCommonP
->
pucch_ConfigCommon
.
n1PUCCH_AN
;
if
(
radioResourceConfigCommonP
->
pusch_ConfigCommon
.
ul_ReferenceSignalsPUSCH
.
groupHoppingEnabled
==
true
)
cfg
->
prach_config
.
configuration_index
.
value
=
radioResourceConfigCommonP
->
prach_Config
.
prach_ConfigInfo
.
prach_ConfigIndex
;
cfg
->
prach_config
.
root_sequence_index
.
value
=
radioResourceConfigCommonP
->
prach_Config
.
rootSequenceIndex
;
cfg
->
prach_config
.
zero_correlation_zone_configuration
.
value
=
radioResourceConfigCommonP
->
prach_Config
.
prach_ConfigInfo
.
zeroCorrelationZoneConfig
;
cfg
->
prach_config
.
high_speed_flag
.
value
=
radioResourceConfigCommonP
->
prach_Config
.
prach_ConfigInfo
.
highSpeedFlag
;
cfg
->
prach_config
.
frequency_offset
.
value
=
radioResourceConfigCommonP
->
prach_Config
.
prach_ConfigInfo
.
prach_FreqOffset
;
cfg
->
pusch_config
.
hopping_mode
.
value
=
radioResourceConfigCommonP
->
pusch_ConfigCommon
.
pusch_ConfigBasic
.
hoppingMode
;
cfg
->
pusch_config
.
number_of_subbands
.
value
=
radioResourceConfigCommonP
->
pusch_ConfigCommon
.
pusch_ConfigBasic
.
n_SB
;
cfg
->
pusch_config
.
hopping_offset
.
value
=
radioResourceConfigCommonP
->
pusch_ConfigCommon
.
pusch_ConfigBasic
.
pusch_HoppingOffset
;
cfg
->
pucch_config
.
delta_pucch_shift
.
value
=
radioResourceConfigCommonP
->
pucch_ConfigCommon
.
deltaPUCCH_Shift
;
cfg
->
pucch_config
.
n_cqi_rb
.
value
=
radioResourceConfigCommonP
->
pucch_ConfigCommon
.
nRB_CQI
;
cfg
->
pucch_config
.
n_an_cs
.
value
=
radioResourceConfigCommonP
->
pucch_ConfigCommon
.
nCS_AN
;
cfg
->
pucch_config
.
n1_pucch_an
.
value
=
radioResourceConfigCommonP
->
pucch_ConfigCommon
.
n1PUCCH_AN
;
if
(
radioResourceConfigCommonP
->
pusch_ConfigCommon
.
ul_ReferenceSignalsPUSCH
.
groupHoppingEnabled
==
true
)
cfg
->
uplink_reference_signal_config
.
uplink_rs_hopping
.
value
=
1
;
else
if
(
radioResourceConfigCommonP
->
pusch_ConfigCommon
.
ul_ReferenceSignalsPUSCH
.
sequenceHoppingEnabled
==
true
)
else
if
(
radioResourceConfigCommonP
->
pusch_ConfigCommon
.
ul_ReferenceSignalsPUSCH
.
sequenceHoppingEnabled
==
true
)
cfg
->
uplink_reference_signal_config
.
uplink_rs_hopping
.
value
=
2
;
else
// No hopping
cfg
->
uplink_reference_signal_config
.
uplink_rs_hopping
.
value
=
0
;
cfg
->
uplink_reference_signal_config
.
group_assignment
.
value
=
radioResourceConfigCommonP
->
pusch_ConfigCommon
.
ul_ReferenceSignalsPUSCH
.
groupAssignmentPUSCH
;
cfg
->
uplink_reference_signal_config
.
cyclic_shift_1_for_drms
.
value
=
radioResourceConfigCommonP
->
pusch_ConfigCommon
.
ul_ReferenceSignalsPUSCH
.
cyclicShift
;
cfg
->
uplink_reference_signal_config
.
group_assignment
.
value
=
radioResourceConfigCommonP
->
pusch_ConfigCommon
.
ul_ReferenceSignalsPUSCH
.
groupAssignmentPUSCH
;
cfg
->
uplink_reference_signal_config
.
cyclic_shift_1_for_drms
.
value
=
radioResourceConfigCommonP
->
pusch_ConfigCommon
.
ul_ReferenceSignalsPUSCH
.
cyclicShift
;
// how to enable/disable SRS?
if
(
radioResourceConfigCommonP
->
soundingRS_UL_ConfigCommon
.
present
==
SoundingRS_UL_ConfigCommon_PR_setup
)
{
cfg
->
srs_config
.
bandwidth_configuration
.
value
=
radioResourceConfigCommonP
->
soundingRS_UL_ConfigCommon
.
choice
.
setup
.
srs_BandwidthConfig
;
cfg
->
srs_config
.
srs_subframe_configuration
.
value
=
radioResourceConfigCommonP
->
soundingRS_UL_ConfigCommon
.
choice
.
setup
.
srs_SubframeConfig
;
cfg
->
srs_config
.
srs_acknack_srs_simultaneous_transmission
.
value
=
radioResourceConfigCommonP
->
soundingRS_UL_ConfigCommon
.
choice
.
setup
.
ackNackSRS_SimultaneousTransmission
;
if
(
radioResourceConfigCommonP
->
soundingRS_UL_ConfigCommon
.
choice
.
setup
.
srs_MaxUpPts
)
if
(
radioResourceConfigCommonP
->
soundingRS_UL_ConfigCommon
.
present
==
SoundingRS_UL_ConfigCommon_PR_setup
)
{
cfg
->
srs_config
.
bandwidth_configuration
.
value
=
radioResourceConfigCommonP
->
soundingRS_UL_ConfigCommon
.
choice
.
setup
.
srs_BandwidthConfig
;
cfg
->
srs_config
.
srs_subframe_configuration
.
value
=
radioResourceConfigCommonP
->
soundingRS_UL_ConfigCommon
.
choice
.
setup
.
srs_SubframeConfig
;
cfg
->
srs_config
.
srs_acknack_srs_simultaneous_transmission
.
value
=
radioResourceConfigCommonP
->
soundingRS_UL_ConfigCommon
.
choice
.
setup
.
ackNackSRS_SimultaneousTransmission
;
if
(
radioResourceConfigCommonP
->
soundingRS_UL_ConfigCommon
.
choice
.
setup
.
srs_MaxUpPts
)
cfg
->
srs_config
.
max_up_pts
.
value
=
1
;
else
cfg
->
srs_config
.
max_up_pts
.
value
=
0
;
}
#ifdef Rel14
if
(
RC
.
mac
[
Mod_idP
]
->
common_channels
[
CC_idP
].
mib
->
message
.
schedulingInfoSIB1_BR_r13
>
0
)
{
if
(
RC
.
mac
[
Mod_idP
]
->
common_channels
[
CC_idP
].
mib
->
message
.
schedulingInfoSIB1_BR_r13
>
0
)
{
AssertFatal
(
radioResourceConfigCommon_BRP
!=
NULL
,
"radioResource rou is missing
\n
"
);
AssertFatal
(
radioResourceConfigCommon_BRP
->
ext4
!=
NULL
,
"ext4 is missing
\n
"
);
cfg
->
emtc_config
.
prach_catm_root_sequence_index
.
value
=
radioResourceConfigCommon_BRP
->
prach_Config
.
rootSequenceIndex
;
cfg
->
emtc_config
.
prach_catm_zero_correlation_zone_configuration
.
value
=
radioResourceConfigCommon_BRP
->
prach_Config
.
prach_ConfigInfo
.
zeroCorrelationZoneConfig
;
cfg
->
emtc_config
.
prach_catm_high_speed_flag
.
value
=
radioResourceConfigCommon_BRP
->
prach_Config
.
prach_ConfigInfo
.
highSpeedFlag
;
struct
PRACH_ConfigSIB_v1310
*
ext4_prach
=
radioResourceConfigCommon_BRP
->
ext4
->
prach_ConfigCommon_v1310
;
PRACH_ParametersListCE_r13_t
*
prach_ParametersListCE_r13
=
&
ext4_prach
->
prach_ParametersListCE_r13
;
cfg
->
emtc_config
.
prach_catm_root_sequence_index
.
value
=
radioResourceConfigCommon_BRP
->
prach_Config
.
rootSequenceIndex
;
cfg
->
emtc_config
.
prach_catm_zero_correlation_zone_configuration
.
value
=
radioResourceConfigCommon_BRP
->
prach_Config
.
prach_ConfigInfo
.
zeroCorrelationZoneConfig
;
cfg
->
emtc_config
.
prach_catm_high_speed_flag
.
value
=
radioResourceConfigCommon_BRP
->
prach_Config
.
prach_ConfigInfo
.
highSpeedFlag
;
struct
PRACH_ConfigSIB_v1310
*
ext4_prach
=
radioResourceConfigCommon_BRP
->
ext4
->
prach_ConfigCommon_v1310
;
PRACH_ParametersListCE_r13_t
*
prach_ParametersListCE_r13
=
&
ext4_prach
->
prach_ParametersListCE_r13
;
PRACH_ParametersCE_r13_t
*
p
;
cfg
->
emtc_config
.
prach_ce_level_0_enable
.
value
=
0
;
...
...
@@ -410,91 +360,54 @@ config_sib2(int Mod_idP,
case
4
:
p
=
prach_ParametersListCE_r13
->
list
.
array
[
3
];
cfg
->
emtc_config
.
prach_ce_level_3_enable
.
value
=
1
;
cfg
->
emtc_config
.
prach_ce_level_3_configuration_index
.
value
=
p
->
prach_ConfigIndex_r13
;
cfg
->
emtc_config
.
prach_ce_level_3_frequency_offset
.
value
=
p
->
prach_FreqOffset_r13
;
cfg
->
emtc_config
.
prach_ce_level_3_number_of_repetitions_per_attempt
.
value
=
p
->
numRepetitionPerPreambleAttempt_r13
;
cfg
->
emtc_config
.
prach_ce_level_3_configuration_index
.
value
=
p
->
prach_ConfigIndex_r13
;
cfg
->
emtc_config
.
prach_ce_level_3_frequency_offset
.
value
=
p
->
prach_FreqOffset_r13
;
cfg
->
emtc_config
.
prach_ce_level_3_number_of_repetitions_per_attempt
.
value
=
p
->
numRepetitionPerPreambleAttempt_r13
;
if
(
p
->
prach_StartingSubframe_r13
)
cfg
->
emtc_config
.
prach_ce_level_3_starting_subframe_periodicity
.
value
=
*
p
->
prach_StartingSubframe_r13
;
cfg
->
emtc_config
.
prach_ce_level_3_hopping_enable
.
value
=
p
->
prach_HoppingConfig_r13
;
cfg
->
emtc_config
.
prach_ce_level_3_hopping_offset
.
value
=
cfg
->
rf_config
.
ul_channel_bandwidth
.
value
-
6
;
cfg
->
emtc_config
.
prach_ce_level_3_starting_subframe_periodicity
.
value
=
*
p
->
prach_StartingSubframe_r13
;
cfg
->
emtc_config
.
prach_ce_level_3_hopping_enable
.
value
=
p
->
prach_HoppingConfig_r13
;
cfg
->
emtc_config
.
prach_ce_level_3_hopping_offset
.
value
=
cfg
->
rf_config
.
ul_channel_bandwidth
.
value
-
6
;
case
3
:
p
=
prach_ParametersListCE_r13
->
list
.
array
[
2
];
cfg
->
emtc_config
.
prach_ce_level_2_enable
.
value
=
1
;
cfg
->
emtc_config
.
prach_ce_level_2_configuration_index
.
value
=
p
->
prach_ConfigIndex_r13
;
cfg
->
emtc_config
.
prach_ce_level_2_frequency_offset
.
value
=
p
->
prach_FreqOffset_r13
;
cfg
->
emtc_config
.
prach_ce_level_2_number_of_repetitions_per_attempt
.
value
=
p
->
numRepetitionPerPreambleAttempt_r13
;
cfg
->
emtc_config
.
prach_ce_level_2_configuration_index
.
value
=
p
->
prach_ConfigIndex_r13
;
cfg
->
emtc_config
.
prach_ce_level_2_frequency_offset
.
value
=
p
->
prach_FreqOffset_r13
;
cfg
->
emtc_config
.
prach_ce_level_2_number_of_repetitions_per_attempt
.
value
=
p
->
numRepetitionPerPreambleAttempt_r13
;
if
(
p
->
prach_StartingSubframe_r13
)
cfg
->
emtc_config
.
prach_ce_level_2_starting_subframe_periodicity
.
value
=
*
p
->
prach_StartingSubframe_r13
;
cfg
->
emtc_config
.
prach_ce_level_2_hopping_enable
.
value
=
p
->
prach_HoppingConfig_r13
;
cfg
->
emtc_config
.
prach_ce_level_2_hopping_offset
.
value
=
cfg
->
rf_config
.
ul_channel_bandwidth
.
value
-
6
;
cfg
->
emtc_config
.
prach_ce_level_2_starting_subframe_periodicity
.
value
=
*
p
->
prach_StartingSubframe_r13
;
cfg
->
emtc_config
.
prach_ce_level_2_hopping_enable
.
value
=
p
->
prach_HoppingConfig_r13
;
cfg
->
emtc_config
.
prach_ce_level_2_hopping_offset
.
value
=
cfg
->
rf_config
.
ul_channel_bandwidth
.
value
-
6
;
case
2
:
p
=
prach_ParametersListCE_r13
->
list
.
array
[
1
];
cfg
->
emtc_config
.
prach_ce_level_1_enable
.
value
=
1
;
cfg
->
emtc_config
.
prach_ce_level_1_configuration_index
.
value
=
p
->
prach_ConfigIndex_r13
;
cfg
->
emtc_config
.
prach_ce_level_1_frequency_offset
.
value
=
p
->
prach_FreqOffset_r13
;
cfg
->
emtc_config
.
prach_ce_level_1_number_of_repetitions_per_attempt
.
value
=
p
->
numRepetitionPerPreambleAttempt_r13
;
cfg
->
emtc_config
.
prach_ce_level_1_configuration_index
.
value
=
p
->
prach_ConfigIndex_r13
;
cfg
->
emtc_config
.
prach_ce_level_1_frequency_offset
.
value
=
p
->
prach_FreqOffset_r13
;
cfg
->
emtc_config
.
prach_ce_level_1_number_of_repetitions_per_attempt
.
value
=
p
->
numRepetitionPerPreambleAttempt_r13
;
if
(
p
->
prach_StartingSubframe_r13
)
cfg
->
emtc_config
.
prach_ce_level_1_starting_subframe_periodicity
.
value
=
*
p
->
prach_StartingSubframe_r13
;
cfg
->
emtc_config
.
prach_ce_level_1_hopping_enable
.
value
=
p
->
prach_HoppingConfig_r13
;
cfg
->
emtc_config
.
prach_ce_level_1_hopping_offset
.
value
=
cfg
->
rf_config
.
ul_channel_bandwidth
.
value
-
6
;
cfg
->
emtc_config
.
prach_ce_level_1_starting_subframe_periodicity
.
value
=
*
p
->
prach_StartingSubframe_r13
;
cfg
->
emtc_config
.
prach_ce_level_1_hopping_enable
.
value
=
p
->
prach_HoppingConfig_r13
;
cfg
->
emtc_config
.
prach_ce_level_1_hopping_offset
.
value
=
cfg
->
rf_config
.
ul_channel_bandwidth
.
value
-
6
;
case
1
:
p
=
prach_ParametersListCE_r13
->
list
.
array
[
0
];
cfg
->
emtc_config
.
prach_ce_level_0_enable
.
value
=
1
;
cfg
->
emtc_config
.
prach_ce_level_0_configuration_index
.
value
=
p
->
prach_ConfigIndex_r13
;
cfg
->
emtc_config
.
prach_ce_level_0_frequency_offset
.
value
=
p
->
prach_FreqOffset_r13
;
cfg
->
emtc_config
.
prach_ce_level_0_number_of_repetitions_per_attempt
.
value
=
p
->
numRepetitionPerPreambleAttempt_r13
;
cfg
->
emtc_config
.
prach_ce_level_0_configuration_index
.
value
=
p
->
prach_ConfigIndex_r13
;
cfg
->
emtc_config
.
prach_ce_level_0_frequency_offset
.
value
=
p
->
prach_FreqOffset_r13
;
cfg
->
emtc_config
.
prach_ce_level_0_number_of_repetitions_per_attempt
.
value
=
p
->
numRepetitionPerPreambleAttempt_r13
;
if
(
p
->
prach_StartingSubframe_r13
)
cfg
->
emtc_config
.
prach_ce_level_0_starting_subframe_periodicity
.
value
=
*
p
->
prach_StartingSubframe_r13
;
cfg
->
emtc_config
.
prach_ce_level_0_hopping_enable
.
value
=
p
->
prach_HoppingConfig_r13
;
cfg
->
emtc_config
.
prach_ce_level_0_hopping_offset
.
value
=
cfg
->
rf_config
.
ul_channel_bandwidth
.
value
-
6
;
cfg
->
emtc_config
.
prach_ce_level_0_starting_subframe_periodicity
.
value
=
*
p
->
prach_StartingSubframe_r13
;
cfg
->
emtc_config
.
prach_ce_level_0_hopping_enable
.
value
=
p
->
prach_HoppingConfig_r13
;
cfg
->
emtc_config
.
prach_ce_level_0_hopping_offset
.
value
=
cfg
->
rf_config
.
ul_channel_bandwidth
.
value
-
6
;
}
struct
FreqHoppingParameters_r13
*
ext4_freqHoppingParameters
=
radioResourceConfigCommonP
->
ext4
->
freqHoppingParameters_r13
;
if
((
ext4_freqHoppingParameters
)
&&
struct
FreqHoppingParameters_r13
*
ext4_freqHoppingParameters
=
radioResourceConfigCommonP
->
ext4
->
freqHoppingParameters_r13
;
if
((
ext4_freqHoppingParameters
)
&&
(
ext4_freqHoppingParameters
->
interval_ULHoppingConfigCommonModeA_r13
))
{
switch
(
ext4_freqHoppingParameters
->
interval_ULHoppingConfigCommonModeA_r13
->
present
)
{
switch
(
ext4_freqHoppingParameters
->
interval_ULHoppingConfigCommonModeA_r13
->
present
)
{
case
FreqHoppingParameters_r13__interval_ULHoppingConfigCommonModeA_r13_PR_NOTHING
:
/* No components present */
break
;
case
FreqHoppingParameters_r13__interval_ULHoppingConfigCommonModeA_r13_PR_interval_FDD_r13
:
cfg
->
emtc_config
.
pucch_interval_ulhoppingconfigcommonmodea
.
value
=
cfg
->
emtc_config
.
pucch_interval_ulhoppingconfigcommonmodea
.
value
=
ext4_freqHoppingParameters
->
interval_ULHoppingConfigCommonModeA_r13
->
choice
.
interval_FDD_r13
;
break
;
...
...
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