I'm working with the xCORE-200 MC Audio board and the associated Gigabit AVB with I2S appnote, AN00202. I don't need Listener functionality and would like to strip all of it out of the code. I can easily use
Code: Select all
#define AVB_1722_1_LISTENER_ENABLED 0
but when I comment out listener-related code in main(), things break, so this #define obviously does not remove code like I would like. It only disables some functionality so it doesn't work all the way. I've tried hacking the backend libraries, and commenting listener-related things out. Tried setting listener-related parameters (like channel ends or interfaces) to "null" in main(), but a lot of the library functions don't support "null".
Almost everything I tried either did not build, or would cause the code to freeze during runtime, breaking the Talker functionality. I presume this is due to some code putting data into a channel endpoint for the listener but the mini channel FIFO is full, making the channel write operation a blocking operation. I thought I found where this was happening in the media clocking files and tried commenting it out, but I didn't see any improvement.
Right now, I'm back to just setting LISTENER_ENABLED to 0 and leaving it at that. I'm not exactly happy with it, but it works for now.
How can I truly remove the Listener functions from the application? Thanks!