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
wangjie
OpenXG-RAN
Commits
e3cf9bcf
Commit
e3cf9bcf
authored
Jul 21, 2020
by
Javier Morgade
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fembms: handle L2 eNB/UE config
Signed-off-by:
Javier Morgade
<
javier.morgade@ieee.org
>
parent
1f034ab4
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
21 additions
and
3 deletions
+21
-3
openair2/LAYER2/MAC/config.c
openair2/LAYER2/MAC/config.c
+20
-3
openair2/LAYER2/MAC/config_ue.c
openair2/LAYER2/MAC/config_ue.c
+1
-0
No files found.
openair2/LAYER2/MAC/config.c
View file @
e3cf9bcf
...
...
@@ -660,7 +660,7 @@ config_sib2_mbsfn_part( int Mod_idP,
if
(
mbsfn_SubframeConfigListP
->
list
.
array
[
i
]
->
subframeAllocation
.
present
==
LTE_MBSFN_SubframeConfig__subframeAllocation_PR_oneFrame
)
{
phycfg
.
cfg
->
embms_mbsfn_config
.
fourframes_flag
[
i
]
=
0
;
phycfg
.
cfg
->
embms_mbsfn_config
.
mbsfn_subframeconfig
[
i
]
=
mbsfn_SubframeConfigListP
->
list
.
array
[
i
]
->
subframeAllocation
.
choice
.
oneFrame
.
buf
[
0
];
// 6-bit subframe configuration
LOG_I
(
MAC
,
"[CONFIG] MBSFN_SubframeConfig[%d] pattern is %d
\n
"
,
i
,
phycfg
.
cfg
->
embms_mbsfn_config
.
mbsfn_subframeconfig
[
i
]);
LOG_I
(
MAC
,
"[CONFIG] MBSFN_SubframeConfig[%d]
oneFrame
pattern is %d
\n
"
,
i
,
phycfg
.
cfg
->
embms_mbsfn_config
.
mbsfn_subframeconfig
[
i
]);
}
else
if
(
mbsfn_SubframeConfigListP
->
list
.
array
[
i
]
->
subframeAllocation
.
present
==
LTE_MBSFN_SubframeConfig__subframeAllocation_PR_fourFrames
)
{
// 24-bit subframe configuration
phycfg
.
cfg
->
embms_mbsfn_config
.
fourframes_flag
[
i
]
=
1
;
phycfg
.
cfg
->
embms_mbsfn_config
.
mbsfn_subframeconfig
[
i
]
=
...
...
@@ -668,7 +668,7 @@ config_sib2_mbsfn_part( int Mod_idP,
(
mbsfn_SubframeConfigListP
->
list
.
array
[
i
]
->
subframeAllocation
.
choice
.
oneFrame
.
buf
[
1
]
<<
8
)
|
(
mbsfn_SubframeConfigListP
->
list
.
array
[
i
]
->
subframeAllocation
.
choice
.
oneFrame
.
buf
[
0
]
<<
16
);
LOG_I
(
MAC
,
"[CONFIG] MBSFN_SubframeConfig[%d] pattern is %x
\n
"
,
i
,
LOG_I
(
MAC
,
"[CONFIG] MBSFN_SubframeConfig[%d]
fourFrame
pattern is %x
\n
"
,
i
,
phycfg
.
cfg
->
embms_mbsfn_config
.
mbsfn_subframeconfig
[
i
]);
}
}
...
...
@@ -777,7 +777,8 @@ int rrc_mac_config_req_eNB(module_id_t Mod_idP,
LTE_SchedulingInfo_MBMS_r14_t
*
schedulingInfo_fembms
,
struct
LTE_NonMBSFN_SubframeConfig_r14
*
nonMBSFN_SubframeConfig
,
LTE_SystemInformationBlockType1_MBMS_r14_t
*
sib1_mbms_r14_fembms
,
LTE_MBSFN_AreaInfoList_r9_t
*
mbsfn_AreaInfoList_fembms
LTE_MBSFN_AreaInfoList_r9_t
*
mbsfn_AreaInfoList_fembms
,
LTE_MBSFNAreaConfiguration_r9_t
*
mbms_AreaConfig
)
{
int
i
;
int
UE_id
=
-
1
;
...
...
@@ -989,6 +990,7 @@ int rrc_mac_config_req_eNB(module_id_t Mod_idP,
cfg
->
num_tlv
++
;
//We need to reuse current MCH scheduler
//TOCHECK whether we can simply reuse current mbsfn_SubframeConfig stuff
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
FeMBMS_flag
=
FeMBMS_Flag
;
}
if
(
mbsfn_AreaInfoList
!=
NULL
)
{
...
...
@@ -1005,6 +1007,21 @@ int rrc_mac_config_req_eNB(module_id_t Mod_idP,
}
}
if
(
mbms_AreaConfig
!=
NULL
)
{
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_AllocPeriod_r9
=
mbms_AreaConfig
->
commonSF_AllocPeriod_r9
;
LOG_I
(
MAC
,
"[eNB %d][CONFIG] LTE_MBSFNAreaConfiguration_r9_t(%p) commonSF_AllocPeriod_r9(%d)
\n
"
,
Mod_idP
,
mbms_AreaConfig
,
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_AllocPeriod_r9
);
for
(
i
=
0
;
i
<
mbms_AreaConfig
->
commonSF_Alloc_r9
.
list
.
count
;
i
++
){
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_Alloc_r9_mbsfn_SubframeConfig
[
i
]
=
mbms_AreaConfig
->
commonSF_Alloc_r9
.
list
.
array
[
i
];
LOG_I
(
RRC
,
"[eNB %d][CONFIG] MBSFNArea[%d] commonSF_Alloc_r9: radioframeAllocationPeriod(%ldn),radioframeAllocationOffset(%ld), subframeAllocation(%x,%x,%x)
\n
"
,
Mod_idP
,
i
,
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_Alloc_r9_mbsfn_SubframeConfig
[
i
]
->
radioframeAllocationPeriod
,
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_Alloc_r9_mbsfn_SubframeConfig
[
i
]
->
radioframeAllocationOffset
,
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_Alloc_r9_mbsfn_SubframeConfig
[
i
]
->
subframeAllocation
.
choice
.
oneFrame
.
buf
[
0
]
,
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_Alloc_r9_mbsfn_SubframeConfig
[
i
]
->
subframeAllocation
.
choice
.
oneFrame
.
buf
[
1
]
,
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_Alloc_r9_mbsfn_SubframeConfig
[
i
]
->
subframeAllocation
.
choice
.
oneFrame
.
buf
[
2
]);
}
}
if
(
pmch_InfoList
!=
NULL
)
{
// LOG_I(MAC,"DUY: lcid when entering rrc_mac config_req is %02d\n",(pmch_InfoList->list.array[0]->mbms_SessionInfoList_r9.list.array[0]->logicalChannelIdentity_r9));
LOG_I
(
MAC
,
"[CONFIG] Number of PMCH in this MBSFN Area %d
\n
"
,
...
...
openair2/LAYER2/MAC/config_ue.c
View file @
e3cf9bcf
...
...
@@ -530,6 +530,7 @@ rrc_mac_config_req_ue(module_id_t Mod_idP,
LOG_I
(
MAC
,
"[UE %d] Configuring LTE_NonMBSFN
\n
"
,
Mod_idP
);
phy_config_sib1_fembms_ue
(
Mod_idP
,
CC_idP
,
0
,
nonMBSFN_SubframeConfig
);
UE_mac_inst
[
Mod_idP
].
non_mbsfn_SubframeConfig
=
nonMBSFN_SubframeConfig
;
}
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME
...
...
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