AnsweredAssumed Answered

LS1043ARDB simple reflector crash

Question asked by Etienne Cordroc'h on Jul 1, 2020

Hello dear,

I'm currently trying to develop a simple Kernel module packet reflector based on LSDK 19.09 on LS1043ARDB board. The rx side is ok since i manage to dump the received frames, however it crashes when i enqueue the packets back to an egress queue.

 

The set up is the following: I send a ping from my pc to the board through an ethernet connection to the SGMII port. On the board I have a rx frame queue mapped to a core  and a tx frame queue mapped to the SGMII.P2 port (fm1-mac5). I configure them using  fsl_qman.h APIs. To be shure that packets arrive to the rx queue I use the fmc tool with a PCD configuration that steers all received packet to it.

 

When a packet arrives it raises an interrupt that launches a dqrr callback. I enqueue back the packets with qman_enqueue() API and then it crashes. Could you tell me if it is because of bad rx/tx queue initialization or have I missed something on ressource allocation like buffer allocation or port initialization? Should I use dpdk instead? I have attached my module code and the crash log.

 

Thanks,

 

Etienne

Attachments

Outcomes