Hi, You do not have a dedicated EDMA channel for DM9000-EMIF. But you can always use an unallocated DMA channel for Transmit and Receive.
EDMA will be used to transfer the data to/from DDR from/to DM9000 FIFO. We had tried to change the current DM9000 driver to use EDMA on the transmit path. We had to change the hard_xmit function of DM9000A to set up the DMA channel, provide source (DDR location), destination (DM9000A FIFO) parameters and finally start the DMA. Once we get the DMA completion interrupt (callback), we configure the DM9000 TX registers to start the transmission. It becomes a little tricky, since DM9000 controller has two TX buffers and while it is transmitting one buffer, other one can be filled up through DMA. We did free up CPU cycles, but did not improve the performance much. This could be due to the wait for DMA interrupts and also not changing the Receive side to use DMA. Thanks Sneha ________________________________ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Griffis, Brad Sent: Wednesday, December 10, 2008 11:03 AM To: umangsu lee; [email protected] Subject: RE: DMA for device connected on DM355's EMIF ? There are two pieces to this issue: 1) The transfer between memory and the DM9000. This should be no problem as the DM9000 will show up in the EMIF address space. 2) The initiation of the transfer. You either need to manually invoke the transfer (through the ESR) or an event can start the transfer. For example, assuming the DM9000 toggles some kind of pin to indicate it’s ready for a data transfer you could hook that pin up to GPINT0 which drives EDMA event 32 as shown in the datasheet. Brad ________________________________ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of umangsu lee Sent: Wednesday, December 10, 2008 2:52 AM To: [email protected] Subject: DMA for device connected on DM355's EMIF ? Hi All, I am new to the DM355 & Davinci-linux development. We have a custom DM355 based board which is similar to DM355EVM board. The board have DM9000 ethernet chip on EMIF . I want to implment DMA for DM9000's transmit/receive oparation, DM355 has EDMA provisions for various peripherals but DM9000 on EMIF is not one of them . Even datasheet doesnt tell anything about using DMA for device connected on EMIF. Is it possible to use any available DMA channel for the DM9000 ethernet chip which is connected via EMIF. if so which channel I can use for it ? Any help will be greatly appreaciated !! Best Regards! U. C. Lee
_______________________________________________ Davinci-linux-open-source mailing list [email protected] http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
