I am using a FRDM-K64 eval board as a starting point, developing a baremetal project under KDS. I have ported my old Coldfire FEC driver code to the Kinetis ENET and modified it as appears to be necessary.
I am using the "legacy FEC" buffer descriptors. I can transmit one packet at a time without any problems. However when I send (say) five packets, I only see one packet on my Ethernet sniffer. The BABT flag is getting set in the ENET_EIR register. It seems like all the frames are getting appended into one oversized packet.
And, YES, I am setting the L bit ("last in frame") for each buffer descriptor, there are plenty of buffer descriptors in the ring, the W (wrap) and R (ready) bits seem to be working fine, the DBSWP bit is set, and I am not trying to use DMA.
Has anyone else seen a similar issue? If so, how did you resolve it?