Hello,
I am experimenting the following problem in using NETCP over Keystone2.
NETCP is programmed to decode a LTE bearer composed by Ethernet + UPD + GTP-U + payload over slowPath (enableFastPath = 0)
Netfp_DRBRxCfg.bearerId = bid;
Netfp_DRBRxCfg.chDrbEnc = pdcp_layer.drbEncQueueHandle;
Netfp_DRBRxCfg.countC = COUNT;
Netfp_DRBRxCfg.enableFastPath = false;
Netfp_DRBRxCfg.gtpuId = gtpuId;
Netfp_DRBRxCfg.slowPathFlowHandle = saFlowHandle;
Netfp_DRBRxCfg.chDrbRohc = pdcp_layer.gtpuFPQueueHandle;
Netfp_DRBRxCfg.drbEncFlowHandle = saFlowHandle;
Netfp_DRBRxCfg.ueId = rnti;
Netfp_DRBRxCfg.userSecHandle = userSecHandle;
Packet is correctly received and payload matches, but it is completely missing of Ethernet, UPD and GTP-U headers.
In my understanding header insertion/removal is a functionality offered by PA2 of NETCP on K2E, then I am missing something in the configuration, but I cannot spot what.
I was able to obtain the headers by changing Netfp_configureRemoveHeader inside the Netfp_init function of NETFP original driver, to program only trailing removal:
paCmdInfo[0].cmd = pa_CMD_REMOVE_TAIL;
/* Configure 1 command sets */
if (Netfp_configCommandSet (9, 1, &paCmdInfo[0]) < 0)
return -1;
But this should be only related to fastpath, or not?
Feedbacks appreciated.
Thanks
Regards
Stefano