在调试BCP和FFTC等硬核资源时,会有descriptor和free descriptor queue的相关配置
比如API:cppi_initDescriptor()就为全局fdq分配了若干个descriptors,
问题是该API中分配的descriptors数目是如何确定的?
在硬核资源中,对应的有allocate_fdq和deallocate_fdq,但是这只是释放了fdq,并没有释放被使用的descriptor资源。
例如:
我在多次调用BCP资源时,上面的全局fdq分配了32个descriptors,
所以我在使用allocate_fdq时,只能为RX分配31个descriptor(其中还有一个descriptor资源被TX使用)
继续调用就出现资源不够,调用descriptor失败。
请问,如何适时释放出已经用过的descriptor,使其可以继续被循环使用?
诚邀TI工程师解答,谢谢。