Thanks a lot for your info !

Btw to request  unallocated DMA channel is it the right thing  am  doing in
the following segment?


int dm9000_dma_tx_ch;
int err, tcc;
err = davinci_request_dma(DAVINCI_DMA_CHANNEL_ANY, "DM9000
Tx", dm9000_dma_tx_callback, dev, &dm9000_dma_tx_ch,
              &tcc, EVENTQ_0);

where
#define DAVINCI_DMA_CHANNEL_ANY           -1   ---> edma.h


Best Regards!!

U.C. Lee



On Thu, Dec 11, 2008 at 6:46 AM, Narnakaje, Snehaprabha <[EMAIL PROTECTED]
> wrote:

>  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

Reply via email to