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
zzha zzha
OpenXG-RAN
Commits
a6c95ca2
Commit
a6c95ca2
authored
Aug 04, 2018
by
WEI-TAI CHEN
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Define new structure for fill cellgroupconfig
parent
09c00b29
Changes
7
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
350 additions
and
175 deletions
+350
-175
cmake_targets/CMakeLists.txt
cmake_targets/CMakeLists.txt
+1
-0
openair2/RRC/NR/MESSAGES/asn1_msg.c
openair2/RRC/NR/MESSAGES/asn1_msg.c
+8
-7
openair2/RRC/NR/nr_rrc_common.c
openair2/RRC/NR/nr_rrc_common.c
+1
-140
openair2/RRC/NR/nr_rrc_config.c
openair2/RRC/NR/nr_rrc_config.c
+170
-0
openair2/RRC/NR/nr_rrc_config.h
openair2/RRC/NR/nr_rrc_config.h
+130
-0
openair2/RRC/NR/nr_rrc_proto.h
openair2/RRC/NR/nr_rrc_proto.h
+0
-7
openair2/RRC/NR/rrc_gNB.c
openair2/RRC/NR/rrc_gNB.c
+40
-21
No files found.
cmake_targets/CMakeLists.txt
View file @
a6c95ca2
...
...
@@ -1399,6 +1399,7 @@ set(L2_SRC
${
NR_RRC_DIR
}
/rrc_gNB.c
${
NR_RRC_DIR
}
/nr_rrc_common.c
${
NR_RRC_DIR
}
/L2_nr_interface.c
${
NR_RRC_DIR
}
/nr_rrc_config.c
)
set
(
L2_SRC_UE
...
...
openair2/RRC/NR/MESSAGES/asn1_msg.c
View file @
a6c95ca2
...
...
@@ -280,7 +280,7 @@ uint8_t do_MIB_NR(rrc_gNB_carrier_data_t *carrier,
return
((
enc_rval
.
encoded
+
7
)
/
8
);
}
void
do
_SERVINGCELLCONFIGCOMMON
(
uint8_t
Mod_id
,
void
fill
_SERVINGCELLCONFIGCOMMON
(
uint8_t
Mod_id
,
int
CC_id
,
#if defined(ENABLE_ITTI)
gNB_RrcConfigurationReq
*
configuration
,
...
...
@@ -819,3 +819,4 @@ void do_SERVINGCELLCONFIGCOMMON(uint8_t Mod_id,
(
*
servingcellconfigcommon
)
->
ss_PBCH_BlockPower
=
configuration
->
ServingCellConfigCommon_ss_PBCH_BlockPower
[
CC_id
];
}
openair2/RRC/NR/nr_rrc_common.c
View file @
a6c95ca2
This diff is collapsed.
Click to expand it.
openair2/RRC/NR/nr_rrc_config.c
0 → 100644
View file @
a6c95ca2
This diff is collapsed.
Click to expand it.
openair2/RRC/NR/nr_rrc_config.h
0 → 100644
View file @
a6c95ca2
/*
* Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The OpenAirInterface Software Alliance licenses this file to You under
* the OAI Public License, Version 1.1 (the "License"); you may not use this file
* except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.openairinterface.org/?page_id=698
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*-------------------------------------------------------------------------------
* For more information about the OpenAirInterface (OAI) Software Alliance:
* contact@openairinterface.org
*/
/*! \file nr_rrc_config.c
* \brief rrc config for gNB
* \author Raymond Knopp, WEI-TAI CHEN
* \date 2018
* \version 1.0
* \company Eurecom, NTUST
* \email: raymond.knopp@eurecom.fr, kroempa@gmail.com
*/
#include "nr_rrc_defs.h"
typedef
struct
rlc_bearer_config_s
{
long
LogicalChannelIdentity
;
long
servedRadioBearer_present
;
long
srb_Identity
;
long
drb_Identity
;
long
reestablishRLC
;
long
rlc_Config_present
;
long
ul_AM_sn_FieldLength
;
long
t_PollRetransmit
;
long
pollPDU
;
long
pollByte
;
long
maxRetxThreshold
;
long
dl_AM_sn_FieldLength
;
long
dl_AM_t_Reassembly
;
long
t_StatusProhibit
;
long
ul_UM_sn_FieldLength
;
long
dl_UM_sn_FieldLength
;
long
dl_UM_t_Reassembly
;
long
priority
;
long
prioritisedBitRate
;
long
bucketSizeDuration
;
long
allowedServingCells
;
long
subcarrierspacing
;
long
maxPUSCH_Duration
;
long
configuredGrantType1Allowed
;
long
logicalChannelGroup
;
long
schedulingRequestID
;
/* OPTIONAL */
BOOLEAN_t
logicalChannelSR_Mask
;
BOOLEAN_t
logicalChannelSR_DelayTimerApplied
;
}
rlc_bearer_config_t
;
typedef
struct
mac_cellgroup_s
{
long
DRX_Config_PR
;
long
drx_onDurationTimer_PR
;
long
subMilliSeconds
;
long
milliSeconds
;
long
drx_InactivityTimer
;
long
drx_HARQ_RTT_TimerDL
;
long
drx_HARQ_RTT_TimerUL
;
long
drx_RetransmissionTimerDL
;
long
drx_RetransmissionTimerUL
;
long
drx_LongCycleStartOffset_PR
;
long
drx_LongCycleStartOffset
;
long
drx_ShortCycle
;
long
drx_ShortCycleTimer
;
long
drx_SlotOffset
;
long
schedulingRequestId
;
long
sr_ProhibitTimer
;
long
sr_TransMax
;
long
periodicBSR_Timer
;
long
retxBSR_Timer
;
long
logicalChannelSR_DelayTimer
;
long
tag_Id
;
long
timeAlignmentTimer
;
long
PHR_Config_PR
;
long
phr_PeriodicTimer
;
long
phr_ProhibitTimer
;
long
phr_Tx_PowerFactorChange
;
BOOLEAN_t
multiplePHR
;
BOOLEAN_t
phr_Type2SpCell
;
BOOLEAN_t
phr_Type2OtherCell
;
long
phr_ModeOtherCG
;
BOOLEAN_t
skipUplinkTxDynamic
;
}
mac_cellgroup_t
;
typedef
struct
physicalcellgroup_s
{
long
harq_ACK_SpatialBundlingPUCCH
;
long
harq_ACK_SpatialBundlingPUSCH
;
long
p_NR
;
long
pdsch_HARQ_ACK_Codebook
;
long
tpc_SRS_RNTI
;
long
tpc_PUCCH_RNTI
;
long
tpc_PUSCH_RNTI
;
long
sp_CSI_RNTI
;
long
RNTI_Value
;
}
physicalcellgroup_t
;
void
rrc_config_servingcellconfigcommon
(
uint8_t
Mod_id
,
int
CC_id
#if defined(ENABLE_ITTI)
,
gNB_RrcConfigurationReq
*
common_configuration
#endif
);
void
rrc_config_rlc_bearer
(
uint8_t
Mod_id
,
int
CC_id
,
rlc_bearer_config_t
*
rlc_config
);
void
rrc_config_mac_cellgroup
(
uint8_t
Mod_id
,
int
CC_id
,
mac_cellgroup_t
*
mac_cellgroup_config
);
void
rrc_config_physicalcellgroup
(
uint8_t
Mod_id
,
int
CC_id
,
physicalcellgroup_t
*
physicalcellgroup_config
);
openair2/RRC/NR/nr_rrc_proto.h
View file @
a6c95ca2
...
...
@@ -58,13 +58,6 @@ void rrc_gNB_generate_SgNBAdditionRequestAcknowledge(
rrc_gNB_ue_context_t
*
const
ue_context_pP
);
void
rrc_config_servingcellconfigcommon
(
uint8_t
Mod_id
,
int
CC_id
#if defined(ENABLE_ITTI)
,
gNB_RrcConfigurationReq
*
common_configuration
#endif
);
#if defined(ENABLE_ITTI)
/**\brief RRC eNB task.
\param void *args_p Pointer on arguments to start the task. */
...
...
openair2/RRC/NR/rrc_gNB.c
View file @
a6c95ca2
...
...
@@ -42,7 +42,7 @@
#include "UTIL/LOG/log.h"
#include "COMMON/mac_rrc_primitives.h"
#include "RRC/NR/MESSAGES/asn1_msg.h"
#include "nr_rrc_config.h"
#include "NR_BCCH-BCH-Message.h"
#include "NR_UL-DCCH-Message.h"
...
...
@@ -147,26 +147,43 @@ void rrc_gNB_generate_SgNBAdditionRequestAcknowledge(
uint8_t
size
;
uint8_t
buffer
[
100
];
int
CC_id
=
ue_context_pP
->
ue_context
.
primaryCC_id
;
/*
NR_CellGroup
Id_t cellGroupId
;
OCTET_STRING_t
*
secondaryCellGroup
;
NR_CellGroup
Config_t
*
cellGroupconfig
;
struct
NR_CellGroupConfig__rlc_BearerToAddModList
*
rlc_BearerToAddModList
;
struct
NR_MAC_CellGroupConfig
*
mac_CellGroupConfig
;
struct
NR_PhysicalCellGroupConfig
*
physicalCellGroupConfig
;
struct
NR_SpCellConfig
*
spCellConfig
;
struct
NR_CellGroupConfig__sCellToAddModList
*
sCellToAddModList
;
*/
cellGroupconfig
=
CALLOC
(
1
,
sizeof
(
NR_CellGroupConfig_t
));
cellGroupconfig
->
rlc_BearerToAddModList
=
CALLOC
(
1
,
sizeof
(
struct
NR_CellGroupConfig__rlc_BearerToAddModList
));
cellGroupconfig
->
mac_CellGroupConfig
=
CALLOC
(
1
,
sizeof
(
struct
NR_MAC_CellGroupConfig
));
cellGroupconfig
->
physicalCellGroupConfig
=
CALLOC
(
1
,
sizeof
(
struct
NR_PhysicalCellGroupConfig
));
cellGroupconfig
->
spCellConfig
=
CALLOC
(
1
,
sizeof
(
struct
NR_SpCellConfig
));
cellGroupconfig
->
sCellToAddModList
=
CALLOC
(
1
,
sizeof
(
struct
NR_CellGroupConfig__sCellToAddModList
));
rlc_BearerToAddModList
=
cellGroupconfig
->
rlc_BearerToAddModList
;
mac_CellGroupConfig
=
cellGroupconfig
->
mac_CellGroupConfig
;
physicalCellGroupConfig
=
cellGroupconfig
->
physicalCellGroupConfig
;
spCellConfig
=
cellGroupconfig
->
spCellConfig
;
sCellToAddModList
=
cellGroupconfig
->
sCellToAddModList
;
//rrc_config_rlc_bearer();
//rrc_config_mac_cellgroup();
//rrc_config_physicalcellgroup();
gNB_RrcConfigurationReq
*
common_configuration
;
common_configuration
=
CALLOC
(
1
,
sizeof
(
gNB_RrcConfigurationReq
));
//Fill
config
//Fill
servingcellconfigcommon config value
rrc_config_servingcellconfigcommon
(
ctxt_pP
->
module_id
,
ue_context_pP
->
ue_context
.
primaryCC_id
#if defined(ENABLE_ITTI)
,
common_configuration
#endif
);
//Fill config to structure
do
_SERVINGCELLCONFIGCOMMON
(
ctxt_pP
->
module_id
,
//Fill co
mmon co
nfig to structure
fill
_SERVINGCELLCONFIGCOMMON
(
ctxt_pP
->
module_id
,
ue_context_pP
->
ue_context
.
primaryCC_id
,
#if defined(ENABLE_ITTI)
common_configuration
,
...
...
@@ -179,6 +196,8 @@ void rrc_gNB_generate_SgNBAdditionRequestAcknowledge(
sizeof(struct NR_ServingCellConfigCommon));
*/
}
///---------------------------------------------------------------------------------------------------------------///
...
...
@@ -217,7 +236,7 @@ static void init_NR_SI(const protocol_ctxt_t* const ctxt_pP,
#endif
);
do
_SERVINGCELLCONFIGCOMMON
(
ctxt_pP
->
module_id
,
fill
_SERVINGCELLCONFIGCOMMON
(
ctxt_pP
->
module_id
,
CC_id
,
#if defined(ENABLE_ITTI)
configuration
,
...
...
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