Hello,
In my application I have two ADS8688 converters daisy chained to OMAPL138. To read ADCs I need to transfer 6Bytes. To read all 8 channels I need to do 8x6B transfers so that CS goes high between each 6B. I'm using EDMA to transfer each 6B set. I'm using single EDMA param set which I'm reactivating after each 6B transfer in a an EDMA- interrupt function - works fine.
Unfortunately I noticed that my EDMA activation cycle takes some 12us and transfer itself of 6B some 5.5us. I've prepared a vectors of 6x8B to transfer to SIMO and to receive from SOMI, between transfers I just increase these pointers with 6B and give that new pointer values to EDMA start routine - so actual data preparation does not take time.
I would like to ask experts if there is a method to shorten my EDMA preparation time, maybe using several param sets - taking into account that I need to bring CS up between transfers?? Naturally an alternative method would be the use of SPI- interrupts without EDMA.
I'm using SYS/BIOS Hwi but I don't think it has any role in this business.OMAP138 is currently running with 300MHz which I'm planning to increase to 456MHz but that should not significantly help, I think. All code and data is in L2.
Best Regards,
Risto