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
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
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
OpenXG
OpenXG-RAN
Commits
b340ed8d
Commit
b340ed8d
authored
Mar 18, 2024
by
Rúben Soares da Silva
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Move TLV pack/unpack functions to make them available for both FAPI and nFAPI
parent
3fe2630a
Changes
3
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
74 additions
and
366 deletions
+74
-366
nfapi/open-nFAPI/nfapi/public_inc/nfapi_interface.h
nfapi/open-nFAPI/nfapi/public_inc/nfapi_interface.h
+27
-0
nfapi/open-nFAPI/nfapi/src/nfapi.c
nfapi/open-nFAPI/nfapi/src/nfapi.c
+41
-0
nfapi/open-nFAPI/nfapi/src/nfapi_p5.c
nfapi/open-nFAPI/nfapi/src/nfapi_p5.c
+6
-366
No files found.
nfapi/open-nFAPI/nfapi/public_inc/nfapi_interface.h
View file @
b340ed8d
...
@@ -3930,6 +3930,33 @@ typedef struct nfapi_p4_p5_codec_config {
...
@@ -3930,6 +3930,33 @@ typedef struct nfapi_p4_p5_codec_config {
// Functions
// Functions
//
//
uint32_t
get_packed_msg_len
(
uintptr_t
msgHead
,
uintptr_t
msgEnd
);
uint8_t
pack_uint32_tlv_value
(
void
*
tlv
,
uint8_t
**
ppWritePackedMsg
,
uint8_t
*
end
);
uint8_t
unpack_uint32_tlv_value
(
void
*
tlv
,
uint8_t
**
ppReadPackedMsg
,
uint8_t
*
end
);
uint8_t
pack_uint16_tlv_value
(
void
*
tlv
,
uint8_t
**
ppWritePackedMsg
,
uint8_t
*
end
);
uint8_t
unpack_uint16_tlv_value
(
void
*
tlv
,
uint8_t
**
ppReadPackedMsg
,
uint8_t
*
end
);
uint8_t
pack_int16_tlv_value
(
void
*
tlv
,
uint8_t
**
ppWritePackedMsg
,
uint8_t
*
end
);
uint8_t
unpack_int16_tlv_value
(
void
*
tlv
,
uint8_t
**
ppReadPackedMsg
,
uint8_t
*
end
);
uint8_t
pack_uint8_tlv_value
(
void
*
tlv
,
uint8_t
**
ppWritePackedMsg
,
uint8_t
*
end
);
uint8_t
unpack_uint8_tlv_value
(
void
*
tlv
,
uint8_t
**
ppReadPackedMsg
,
uint8_t
*
end
);
uint8_t
pack_ipv4_address_value
(
void
*
tlv
,
uint8_t
**
ppWritePackedMsg
,
uint8_t
*
end
);
uint8_t
unpack_ipv4_address_value
(
void
*
tlv
,
uint8_t
**
ppReadPackedMsg
,
uint8_t
*
end
);
uint8_t
pack_ipv6_address_value
(
void
*
tlv
,
uint8_t
**
ppWritePackedMsg
,
uint8_t
*
end
);
uint8_t
unpack_ipv6_address_value
(
void
*
tlv
,
uint8_t
**
ppReadPackedMsg
,
uint8_t
*
end
);
/*! \brief Encodes an NFAPI P4 message to a buffer
/*! \brief Encodes an NFAPI P4 message to a buffer
* \param pMessageBuf A pointer to a nfapi p4 message structure
* \param pMessageBuf A pointer to a nfapi p4 message structure
* \param messageBufLen The size of the p4 message structure
* \param messageBufLen The size of the p4 message structure
...
...
nfapi/open-nFAPI/nfapi/src/nfapi.c
View file @
b340ed8d
...
@@ -1138,6 +1138,47 @@ uint8_t pack_nr_tlv(uint16_t tag, void *tlv, uint8_t **ppWritePackedMsg, uint8_t
...
@@ -1138,6 +1138,47 @@ uint8_t pack_nr_tlv(uint16_t tag, void *tlv, uint8_t **ppWritePackedMsg, uint8_t
return
1
;
return
1
;
}
}
uint8_t
pack_uint32_tlv_value
(
void
*
tlv
,
uint8_t
**
ppWritePackedMsg
,
uint8_t
*
end
)
{
nfapi_uint32_tlv_t
*
value
=
(
nfapi_uint32_tlv_t
*
)
tlv
;
return
push32
(
value
->
value
,
ppWritePackedMsg
,
end
);
}
uint8_t
unpack_uint32_tlv_value
(
void
*
tlv
,
uint8_t
**
ppReadPackedMsg
,
uint8_t
*
end
)
{
nfapi_uint32_tlv_t
*
value
=
(
nfapi_uint32_tlv_t
*
)
tlv
;
return
pull32
(
ppReadPackedMsg
,
&
value
->
value
,
end
);
}
uint8_t
pack_uint16_tlv_value
(
void
*
tlv
,
uint8_t
**
ppWritePackedMsg
,
uint8_t
*
end
)
{
nfapi_uint16_tlv_t
*
value
=
(
nfapi_uint16_tlv_t
*
)
tlv
;
return
push16
(
value
->
value
,
ppWritePackedMsg
,
end
);
}
uint8_t
unpack_uint16_tlv_value
(
void
*
tlv
,
uint8_t
**
ppReadPackedMsg
,
uint8_t
*
end
)
{
nfapi_uint16_tlv_t
*
value
=
(
nfapi_uint16_tlv_t
*
)
tlv
;
return
pull16
(
ppReadPackedMsg
,
&
value
->
value
,
end
);
}
uint8_t
pack_int16_tlv_value
(
void
*
tlv
,
uint8_t
**
ppWritePackedMsg
,
uint8_t
*
end
)
{
nfapi_int16_tlv_t
*
value
=
(
nfapi_int16_tlv_t
*
)
tlv
;
return
pushs16
(
value
->
value
,
ppWritePackedMsg
,
end
);
}
uint8_t
unpack_int16_tlv_value
(
void
*
tlv
,
uint8_t
**
ppReadPackedMsg
,
uint8_t
*
end
)
{
nfapi_int16_tlv_t
*
value
=
(
nfapi_int16_tlv_t
*
)
tlv
;
return
pulls16
(
ppReadPackedMsg
,
&
value
->
value
,
end
);
}
uint8_t
pack_uint8_tlv_value
(
void
*
tlv
,
uint8_t
**
ppWritePackedMsg
,
uint8_t
*
end
)
{
nfapi_uint8_tlv_t
*
value
=
(
nfapi_uint8_tlv_t
*
)
tlv
;
return
push8
(
value
->
value
,
ppWritePackedMsg
,
end
);
}
uint8_t
unpack_uint8_tlv_value
(
void
*
tlv
,
uint8_t
**
ppReadPackedMsg
,
uint8_t
*
end
)
{
nfapi_uint8_tlv_t
*
value
=
(
nfapi_uint8_tlv_t
*
)
tlv
;
return
pull8
(
ppReadPackedMsg
,
&
value
->
value
,
end
);
}
const
char
*
nfapi_error_code_to_str
(
nfapi_error_code_e
value
)
{
const
char
*
nfapi_error_code_to_str
(
nfapi_error_code_e
value
)
{
switch
(
value
)
{
switch
(
value
)
{
case
NFAPI_MSG_OK
:
case
NFAPI_MSG_OK
:
...
...
nfapi/open-nFAPI/nfapi/src/nfapi_p5.c
View file @
b340ed8d
This diff is collapsed.
Click to expand it.
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