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
a1f13883
Commit
a1f13883
authored
Feb 12, 2024
by
Giulio Carota
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix(du) encode directly MIB inside the F1AP Setup Request
parent
7c280fe6
Changes
3
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
72 additions
and
58 deletions
+72
-58
openair2/GNB_APP/gnb_config.c
openair2/GNB_APP/gnb_config.c
+56
-55
openair2/RRC/NR/nr_rrc_config.c
openair2/RRC/NR/nr_rrc_config.c
+15
-3
openair2/RRC/NR/nr_rrc_config.h
openair2/RRC/NR/nr_rrc_config.h
+1
-0
No files found.
openair2/GNB_APP/gnb_config.c
View file @
a1f13883
This diff is collapsed.
Click to expand it.
openair2/RRC/NR/nr_rrc_config.c
View file @
a1f13883
...
...
@@ -842,7 +842,7 @@ void nr_rrc_config_ul_tda(NR_ServingCellConfigCommon_t *scc, int min_fb_delay){
*
pusch_timedomainresourceallocation
->
k2
=
k2
;
pusch_timedomainresourceallocation
->
mappingType
=
NR_PUSCH_TimeDomainResourceAllocation__mappingType_typeB
;
pusch_timedomainresourceallocation
->
startSymbolAndLength
=
get_SLIV
(
0
,
13
);
asn1cSeqAdd
(
&
scc
->
uplinkConfigCommon
->
initialUplinkBWP
->
pusch_ConfigCommon
->
choice
.
setup
->
pusch_TimeDomainAllocationList
->
list
,
pusch_timedomainresourceallocation
);
asn1cSeqAdd
(
&
scc
->
uplinkConfigCommon
->
initialUplinkBWP
->
pusch_ConfigCommon
->
choice
.
setup
->
pusch_TimeDomainAllocationList
->
list
,
pusch_timedomainresourceallocation
);
// UL TDA index 1 in case of SRS
struct
NR_PUSCH_TimeDomainResourceAllocation
*
pusch_timedomainresourceallocation1
=
CALLOC
(
1
,
sizeof
(
struct
NR_PUSCH_TimeDomainResourceAllocation
));
...
...
@@ -1843,6 +1843,18 @@ int encode_MIB_NR(NR_BCCH_BCH_Message_t *mib, int frame, uint8_t *buf, int buf_s
return
(
enc_rval
.
encoded
+
7
)
/
8
;
}
int
encode_MIB_NR_setup
(
NR_MIB_t
*
mib
,
int
frame
,
uint8_t
*
buf
,
int
buf_size
)
{
DevAssert
(
mib
!=
NULL
);
uint8_t
sfn_msb
=
(
uint8_t
)((
frame
>>
4
)
&
0x3f
);
*
mib
->
systemFrameNumber
.
buf
=
sfn_msb
<<
2
;
asn_enc_rval_t
enc_rval
=
uper_encode_to_buffer
(
&
asn_DEF_NR_MIB
,
NULL
,
mib
,
buf
,
buf_size
);
AssertFatal
(
enc_rval
.
encoded
>
0
,
"ASN1 message encoding failed (%s, %lu)!
\n
"
,
enc_rval
.
failed_type
->
name
,
enc_rval
.
encoded
);
LOG_D
(
NR_RRC
,
"Encoded MIB for frame %d sfn_msb %d, bits %lu
\n
"
,
frame
,
sfn_msb
,
enc_rval
.
encoded
);
return
(
enc_rval
.
encoded
+
7
)
/
8
;
}
NR_BCCH_DL_SCH_Message_t
*
get_SIB1_NR
(
const
NR_ServingCellConfigCommon_t
*
scc
,
const
f1ap_plmn_t
*
plmn
,
uint64_t
cellID
,
int
tac
)
{
AssertFatal
(
cellID
<
(
1l
<<
36
),
"cellID must fit within 36 bits, but is %ld
\n
"
,
cellID
);
...
...
@@ -1961,7 +1973,7 @@ NR_BCCH_DL_SCH_Message_t *get_SIB1_NR(const NR_ServingCellConfigCommon_t *scc, c
LOG_I
(
NR_RRC
,
"SIB1 freq: offsetToPointA %d
\n
"
,
(
int
)
sib1
->
servingCellConfigCommon
->
downlinkConfigCommon
.
frequencyInfoDL
.
offsetToPointA
);
for
(
int
i
=
0
;
i
<
frequencyInfoDL
->
scs_SpecificCarrierList
.
list
.
count
;
i
++
)
{
asn1cSeqAdd
(
&
ServCellCom
->
downlinkConfigCommon
.
frequencyInfoDL
.
scs_SpecificCarrierList
.
list
,
frequencyInfoDL
->
scs_SpecificCarrierList
.
list
.
array
[
i
]);
...
...
@@ -2452,7 +2464,7 @@ NR_CellGroupConfig_t *get_initial_cellGroupConfig(int uid,
/* mac CellGroup Config */
cellGroupConfig
->
mac_CellGroupConfig
=
configure_mac_cellgroup
();
cellGroupConfig
->
physicalCellGroupConfig
=
configure_phy_cellgroup
();
cellGroupConfig
->
spCellConfig
=
get_initial_SpCellConfig
(
uid
,
scc
,
servingcellconfigdedicated
,
configuration
);
...
...
openair2/RRC/NR/nr_rrc_config.h
View file @
a1f13883
...
...
@@ -55,6 +55,7 @@ void prepare_sim_uecap(NR_UE_NR_Capability_t *cap,
NR_BCCH_BCH_Message_t
*
get_new_MIB_NR
(
const
NR_ServingCellConfigCommon_t
*
scc
);
void
free_MIB_NR
(
NR_BCCH_BCH_Message_t
*
mib
);
int
encode_MIB_NR
(
NR_BCCH_BCH_Message_t
*
mib
,
int
frame
,
uint8_t
*
buf
,
int
buf_size
);
int
encode_MIB_NR_setup
(
NR_MIB_t
*
mib
,
int
frame
,
uint8_t
*
buf
,
int
buf_size
);
#define NR_MAX_SIB_LENGTH 2976 // 3GPP TS 38.331 section 5.2.1
...
...
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