I'm using BF537 for send/receive audio via Ethernet and Sport is used to get/put audio data to the codecs.
EthernetRx/Tx handled by DMA and Sport use RxDMA. DMA is used in large descr.mode and generates interrupts.(eth&sport)
each of the peripherals use "doubleBuffer" mechanism for send/receive. - no usage of any ADI driver because they are to slow for this task.
In "normal" situation we are able to handle(send/receive)up to 60audio channels via 100Mbit network,
and also receive commands from the controll PC.
AudioFrames on Ethernet are frames >220bytes and seem not to be problematic.
ControlFrames could be very small (=64bytes largest possible frame) and therefore it could be happen that
rx of frames via ethernet causes lost frames if more small controlFrames should be received.
in this case RX_COMP bit of each ethernetRxFrame status word is set. It seems that my functions are to slow in this case or DMA is congested.
My int functions for SPORT/Ethernet tasks called after DMA finished are below 5µs processing time and the min. frame duration
of a 64byte ethernet frame is 5.12µs.
So how can i determine if SPORT dma is in conflict with ethernetRx/Tx DMA? Sport is called only in a 1.3ms cycle
EthernetRX could happen at any time ? Prio of DMA's is the default priority.
Is it correct that if SPORT dma is active - EthernetRx is deferred ? or is there an interruption of SportDMA?