This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Block IO to GPMC on OMAP4

I need to transfer a block of data to a device attached to the GPMC bus of an OMAP4 (Pandaboard)

I currently loop in C in my OMAP4 Linux (Ubuntu) device driver calling writew or readw

I was wondering if ioread16_rep and iowrite16_rep would be faster

I tried to follow the implementations to see how it was done but I am having problems following the code

does anyone know if ioread16_rep is more efficient (using DMA or some other facility of the OMAP4 to improve performance)?

the transfers are blocks of 512B so I am not sure if the overhead of setting up the DMA is worth the gain it provides

thanks

Bernard

  • Hi Bernard

    I think DMA transfers would be faster  than non-DMA and also the processor is freed to do other tasks.

    I am trying to setup DMA transfers on OMAP4(Pandaboard),  still working on it. Did you get the GPMC DMA transfer link up ? I am finding issues like though the DMA is configured and started, not able to see the data transfer happening,  no GPMC_CLK and CS signals on the Logic Analyzer.  In Non-DMA mode using readw and writew, the LA observed GPMC signals are as per my settings.

    Thanks

    Vijay