we are using a AVNET Camera Eval board with BF561 DSP and the Ethernet LAN Controller SMSC 9218. The ADI driver library also includes a driver for the SMSC LAN9218 which I assume is for the EZ-Kit 548 board. We have now adapted the driver to the AVNET Camera board for the BF561.
We figured out this driver have some troubles if you want handle massive traffic(we transfer packets of frames) driver is to slow if you want to receive packets which are very close together in time domain.
We can see this since we have a demo application on PC which is sending 10 packages with 1492 byts from the PC over the network to the board with a pause of 10 ms between the packages. The 10 packages are also visible with a network analyser. The interrupt routine from the LAN9218_InterruptHandler only reports that we have received on frame or sometimes it reports we have received two frames but we want to see 10 ethernet frames.
What is the status of the Ethernet driver for the LAN9218 from the ADI Lib folder. Is this a final version?
We are also wondering about the DMA:
1. The driver does not use DMA.
case ADI_DEV_CMD_GET_PERIPHERAL_DMA_SUPPORT: // no we dont want peripheral DMA suppot (*(int *)pArg) = false; break;
2. The adi_pdd_Control does not handle buffers for DMA list
case ADI_ETHER_CMD_MEM_SIZES: msizes = (ADI_ETHER_MEM_SIZES *)pArg; msizes->BaseMemSize = sizeof(ADI_ETHER_STATISTICS_COUNTS); msizes->MemPerRecv = 0; msizes->MemPerXmit = 0; break;
The driver that is in the ADI folder ...\Analog Devices\VisualDSP 5.0\Blackfin\lib\src\drivers\ethernet\lan9218 does not really have the impression that it has final release state and also there is no documentation like for the LAN91C111.c controller.
The question is if there is a final driver also for the LAN9218.
The adi_ports file is for the Port Control Manager. As detailed in the Device Drivers and System Services Libraries Manual, the port control manager service is available for Blackfin processors that support port control. Port Control is standard on all Blackfin processors beginning with (and subsequent to) the ADSP-BF534, ADSP-BF536, and ADSP-BF537 Blackfin processor class.
Port Control is not supported on the older BF561 processors, so there is no support in the Port Control Manager for these processors.