Hi, I have seen that the DAT module API has changed in the new CSL (v3.0). As far as I saw, it's not possible to have more than 1 transfer at a time. When you open the module with DAT_open you have to define on which QDMA channel the transfer will be triggered, and which tcc you get. There's no more DAT_CHAANY as it was before. I do some transfers and get the same xfr_id. So the question is, how can I work with double buffering when the transfer id is the same for all transfers? Also, if the former DAT_copy call has not been complete, another call to DAT_copy blocks. Am I missing something? Here is some code I ran: DAT_Setup datSetup;; datSetup.qchNum = CSL_DAT_QCHA_0; datSetup.regionNum = CSL_DAT_REGION_GLOBAL ; datSetup.tccNum = 1; datSetup.paramNum = 0 ; datSetup.priority = CSL_DAT_PRI_0; for (i = 0; i < 5; i++) { dat_id[i] = DAT_copy(p_int[i], p_ext[i], ARRAY_SIZE); } I get in dat_id: {1,1,1,1,1}.
DAT module in CSL 3.0 (EDMA 3)
Started by ●September 26, 2006