Hi,
I am using GPIF to transfer data to USB.
Now if i config the dma channel as auto mode, the channel work well. But when i config the dma channel as manual mode, add the prob notification and callback. I cant see the callback has been called.
The size of dma is 15KB and the count is 8 .
Anyone can give me some ideas the reason?
Thanks a lot!
Solved! Go to Solution.
I have solved this problem.
The reason is that I only load the GPIF configuration, but did not initialize the PIB configuration.
But I still don't know why I can work without initializing the PIB in Auto mode, that confuses my judgment.
Hi,
Which firmware example you are referring? Please note that you have to register DmaCallback in DMA channel config. You can refer to C:\Users\abga\workspace\UartLpDmaMode firmware example.
Thanks & regards
Abhinav
Hi, abga
I am referring USBBulkLoopManual, and I just modify the dmaCfg as:
dmaCfg.notification=CY_U3P_DMA_CB_PROD_EVENT;
dmaCfg.cb = mycallback;
and modify the CY_U3P_DMA_TYPE_AUTO into CY_U3P_DMA_TYPE_MANUAL.
then I add my mycallback function that print debug message at first step.
Are there any other steps to registe the callback?
I have solved this problem.
The reason is that I only load the GPIF configuration, but did not initialize the PIB configuration.
But I still don't know why I can work without initializing the PIB in Auto mode, that confuses my judgment.