Fixes after merging develop

Reversion of changes to tx_data.request and rx_data.indication on functions not related to Aerial L1.
Addition of ifdefs to include files related to Aerial integration
Fix DMRS ports id and numDmrsCdmGrpsNoData to only set changed values when on Aerial mode.
Fix dci_pdu->num_antenna_ports value to only set to 2 when on Aerial, in other cases, it remains with the previously used value.
Removal of commented define.
parent 34ae4a93
......@@ -75,4 +75,4 @@ nfapi_mode_t nfapi_getmode(void) {
void nfapi_setmode(nfapi_mode_t nfapi_mode) {
nfapi_params.nfapi_mode = nfapi_mode;
nfapi_logmode();
}
\ No newline at end of file
}
......@@ -21,7 +21,6 @@
extern "C" {
#endif
//#define FAPI_BYTE_ORDERING_BIG_ENDIAN
// todo : move to public_inc so can be used by vendor extensions
#define MAX_BAD_TAG 3
......
......@@ -2017,7 +2017,7 @@ static uint8_t pack_hi_dci0_request(void *msg, uint8_t **ppWritePackedMsg, uint8
static uint8_t pack_tx_data_pdu_list_value(void *tlv, uint8_t **ppWritePackedMsg, uint8_t *end)
{
nfapi_nr_pdu_t *value = (nfapi_nr_pdu_t *)tlv;
if (!(push32(value->PDU_length, ppWritePackedMsg, end) && push16(value->PDU_index, ppWritePackedMsg, end)
if (!(push16(value->PDU_length, ppWritePackedMsg, end) && push16(value->PDU_index, ppWritePackedMsg, end)
&& push32(value->num_TLV, ppWritePackedMsg, end)))
return 0;
......@@ -5901,7 +5901,7 @@ static uint8_t unpack_hi_dci0_request(uint8_t **ppReadPackedMsg, uint8_t *end, v
static uint8_t unpack_tx_data_pdu_list_value(uint8_t **ppReadPackedMsg, uint8_t *end, void *msg) {
nfapi_nr_pdu_t *pNfapiMsg = (nfapi_nr_pdu_t *)msg;
if(!(pull32(ppReadPackedMsg, &pNfapiMsg->PDU_length, end) &&
if(!(pull16(ppReadPackedMsg, (uint16_t *)&pNfapiMsg->PDU_length, end) &&
pull16(ppReadPackedMsg, &pNfapiMsg->PDU_index, end) &&
pull32(ppReadPackedMsg, &pNfapiMsg->num_TLV, end)
))
......@@ -6004,10 +6004,10 @@ static uint8_t unpack_tx_request(uint8_t **ppReadPackedMsg, uint8_t *end, void *
nfapi_tx_request_pdu_t *pdu = &(pNfapiMsg->tx_request_body.tx_pdu_list[i]);
if (pdu) {
uint32_t length = 0;
uint16_t length = 0;
uint16_t index = 0;
if(!(pull32(ppReadPackedMsg, &length, end) &&
if(!(pull16(ppReadPackedMsg, &length, end) &&
pull16(ppReadPackedMsg, &index, end)))
return 0;
......@@ -6073,14 +6073,13 @@ static uint8_t unpack_nr_rx_data_indication_body(nfapi_nr_rx_data_pdu_t *value,
nfapi_p7_codec_config_t *config)
{
if (!(pull32(ppReadPackedMsg, &value->handle, end) && pull16(ppReadPackedMsg, &value->rnti, end)
&& pull8(ppReadPackedMsg, &value->harq_id, end) && pull32(ppReadPackedMsg, &value->pdu_length, end)
&& pull8(ppReadPackedMsg, &value->harq_id, end) && pull16(ppReadPackedMsg, (uint16_t *)&value->pdu_length, end)
&& pull8(ppReadPackedMsg, &value->ul_cqi, end) && pull16(ppReadPackedMsg, &value->timing_advance, end)
&& pull16(ppReadPackedMsg, &value->rssi, end)))
return 0;
uint32_t length = value->pdu_length;
value->pdu = nfapi_p7_allocate(sizeof(*value->pdu) * length, config);
end += length; // Aerial, To remove after handling proper unpacking (pdu comes in another buffer)
if (pullarray8(ppReadPackedMsg, value->pdu, length, length, end) == 0) {
NFAPI_TRACE(NFAPI_TRACE_ERROR, "%s pullarray8 failure\n", __FUNCTION__);
return 0;
......
......@@ -27,8 +27,9 @@
#include "vnf.h"
#include "nfapi_nr_interface.h"
#include "nfapi_nr_interface_scf.h"
#ifdef ENABLE_AERIAL
#include "fapi/oai-integration/fapi_nvIPC.h"
#endif
#include "nfapi/oai_integration/vendor_ext.h"
void* vnf_malloc(nfapi_vnf_config_t* config, size_t size)
......
......@@ -25,8 +25,9 @@
#include <errno.h>
#include <stdio.h>
#include <assert.h>
#ifdef ENABLE_AERIAL
#include <fapi/oai-integration/fapi_nvIPC.h>
#endif
#include "vnf_p7.h"
#ifdef NDEBUG
......
......@@ -29,7 +29,9 @@
* \note
* \warning
*/
#ifdef ENABLE_AERIAL
#include <fapi/oai-integration/fapi_vnf_p5.h>
#endif
#include "fapi_nr_l1.h"
#include "common/ran_context.h"
#include "PHY/NR_TRANSPORT/nr_transport_proto.h"
......
......@@ -91,7 +91,9 @@
#include "RRC/NR/nr_rrc_extern.h"
#include "openair2/LAYER2/nr_pdcp/nr_pdcp.h"
#include "nfapi/oai_integration/vendor_ext.h"
#ifdef ENABLE_AERIAL
#include "fapi/oai-integration/fapi_vnf_p5.h"
#endif
extern uint16_t sf_ahead;
......
......@@ -228,13 +228,23 @@ NR_pdsch_dmrs_t get_dl_dmrs_params(const NR_ServingCellConfigCommon_t *scc,
switch (Layers) {
case 1:
#ifdef ENABLE_AERIAL
dmrs.dmrs_ports_id = 3;
dmrs.numDmrsCdmGrpsNoData = 2;
#else
dmrs.dmrs_ports_id = 0;
dmrs.numDmrsCdmGrpsNoData = 1;
#endif
frontloaded_symb = 1;
break;
case 2:
#ifdef ENABLE_AERIAL
dmrs.dmrs_ports_id = 7;
dmrs.numDmrsCdmGrpsNoData = 2;
#else
dmrs.dmrs_ports_id = 2;
dmrs.numDmrsCdmGrpsNoData = 1;
#endif
frontloaded_symb = 1;
break;
case 3:
......@@ -743,7 +753,11 @@ void config_uldci(const NR_UE_ServingCell_Info_t *sc_info,
// antenna_ports.val = 0 for transform precoder is disabled, dmrs-Type=1, maxLength=1, Rank=1/2/3/4
// Antenna Ports
dci_pdu_rel15->antenna_ports.val = 2;
if(NFAPI_MODE == NFAPI_MODE_AERIAL){
dci_pdu_rel15->antenna_ports.val = 2;
} else {
dci_pdu_rel15->antenna_ports.val = 0;
}
// DMRS sequence initialization
dci_pdu_rel15->dmrs_sequence_initialization.val = pusch_pdu->scid;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment