- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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.