https://bugzilla.kernel.org/show_bug.cgi?id=209555 --- Comment #18 from Minas Harutyunyan (Minas.Harutyunyan@xxxxxxxxxxxx) --- Hi Yunhao, Thank you for provided info. Driver by default set to DDMA mode. In DDMA mode very important when requests producer (function driver) produce more requests that consumer (HW) can process, otherwise BNA (buffer not available) interrupt will be asserted. In your case function driver queued only 2 requests for EP2OUT. Driver create descriptor list with 2 descriptors. On completion of 2nd descriptor core returning to first one, which already completed and not renewed yet. Because of this BNA asserted. For OUT EP's on BNA interrupt RxFIFO should be flushed, but due to AHB not idle - core permanently try to get new descriptor, but no new descriptor created yet. This create infinite loop. So, I suggest you, to allow your function driver produce more requests before first ISOC OUT packets will received in RxFIFO to have enough big pool of descriptors. If you can't control initial requests count from function driver then you can try set core to BDMA mode: g_dma_desc : 1 --> 0 In BDMA mode BNA will not asserted. Thanks, Minas -- You may reply to this email to add a comment. You are receiving this mail because: You are watching the assignee of the bug.