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
52c68dbe
Commit
52c68dbe
authored
Dec 19, 2023
by
francescomani
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
adding macro descriptions
parent
c18d5931
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
15 additions
and
0 deletions
+15
-0
openair2/LAYER2/NR_MAC_UE/mac_proto.h
openair2/LAYER2/NR_MAC_UE/mac_proto.h
+15
-0
No files found.
openair2/LAYER2/NR_MAC_UE/mac_proto.h
View file @
52c68dbe
...
@@ -40,6 +40,8 @@
...
@@ -40,6 +40,8 @@
#define NR_DL_MAX_DAI (4)
/* TS 38.213 table 9.1.3-1 Value of counter DAI for DCI format 1_0 and 1_1 */
#define NR_DL_MAX_DAI (4)
/* TS 38.213 table 9.1.3-1 Value of counter DAI for DCI format 1_0 and 1_1 */
#define NR_DL_MAX_NB_CW (2)
/* number of downlink code word */
#define NR_DL_MAX_NB_CW (2)
/* number of downlink code word */
// Macro updates DESTINATION with configuration from ORIGIN by swapping pointers
// Old configuration is freed after completing configuration
#define UPDATE_MAC_IE(DESTINATION, ORIGIN, TYPE) \
#define UPDATE_MAC_IE(DESTINATION, ORIGIN, TYPE) \
do { \
do { \
TYPE *tmp = ORIGIN; \
TYPE *tmp = ORIGIN; \
...
@@ -47,6 +49,10 @@
...
@@ -47,6 +49,10 @@
DESTINATION = tmp; \
DESTINATION = tmp; \
} while(0); \
} while(0); \
// Macro handles reception of SetupRelease element ORIGIN (see NR_SetupRelease.h)
// If release (NR_SetupRelease_xxx_PR_release equivalent to 1), removing structure from DESTINATION
// If setup (NR_SetupRelease_xxx_PR_setup equivalent to 2), add or modify structure in DESTINATION
// Destination is not a SetupRelease structure
#define HANDLE_SETUPRELEASE_DIRECT(DESTINATION, ORIGIN, TYPE, ASN_DEF) \
#define HANDLE_SETUPRELEASE_DIRECT(DESTINATION, ORIGIN, TYPE, ASN_DEF) \
do { \
do { \
if (ORIGIN->present == 1) { \
if (ORIGIN->present == 1) { \
...
@@ -56,6 +62,10 @@
...
@@ -56,6 +62,10 @@
UPDATE_MAC_IE(DESTINATION, ORIGIN->choice.setup, TYPE); \
UPDATE_MAC_IE(DESTINATION, ORIGIN->choice.setup, TYPE); \
} while(0); \
} while(0); \
// Macro handles reception of SetupRelease element ORIGIN (see NR_SetupRelease.h)
// If release (NR_SetupRelease_xxx_PR_release equivalent to 1), removing structure from DESTINATION
// If setup (NR_SetupRelease_xxx_PR_setup equivalent to 2), add or modify structure in DESTINATION
// Destination is a SetupRelease structure
#define HANDLE_SETUPRELEASE_IE(DESTINATION, ORIGIN, TYPE, ASN_DEF) \
#define HANDLE_SETUPRELEASE_IE(DESTINATION, ORIGIN, TYPE, ASN_DEF) \
do { \
do { \
if (ORIGIN->present == 1) { \
if (ORIGIN->present == 1) { \
...
@@ -69,6 +79,8 @@
...
@@ -69,6 +79,8 @@
} \
} \
} while(0); \
} while(0); \
// Macro releases entries in list TARGET if the corresponding ID is found in list SOURCE.
// Prints an error if ID not found in list.
#define RELEASE_IE_FROMLIST(SOURCE, TARGET, FIELD) \
#define RELEASE_IE_FROMLIST(SOURCE, TARGET, FIELD) \
do { \
do { \
for (int iI = 0; iI < SOURCE->list.count; iI++) { \
for (int iI = 0; iI < SOURCE->list.count; iI++) { \
...
@@ -85,6 +97,7 @@
...
@@ -85,6 +97,7 @@
} \
} \
} while (0) \
} while (0) \
// Macro adds or modifies entries of type TYPE in list TARGET with elements received in list SOURCE
#define ADDMOD_IE_FROMLIST(SOURCE, TARGET, FIELD, TYPE) \
#define ADDMOD_IE_FROMLIST(SOURCE, TARGET, FIELD, TYPE) \
do { \
do { \
for (int iI = 0; iI < SOURCE->list.count; iI++) { \
for (int iI = 0; iI < SOURCE->list.count; iI++) { \
...
@@ -104,6 +117,8 @@
...
@@ -104,6 +117,8 @@
} \
} \
} while (0) \
} while (0) \
// Macro adds or modifies entries of type TYPE in list TARGET with elements received in list SOURCE
// Action performed by function FUNC
#define ADDMOD_IE_FROMLIST_WFUNCTION(SOURCE, TARGET, FIELD, TYPE, FUNC) \
#define ADDMOD_IE_FROMLIST_WFUNCTION(SOURCE, TARGET, FIELD, TYPE, FUNC) \
do { \
do { \
for (int iI = 0; iI < SOURCE->list.count; iI++) { \
for (int iI = 0; iI < SOURCE->list.count; iI++) { \
...
...
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