-
Notifications
You must be signed in to change notification settings - Fork 170
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
bugfix/slave_sdio Track number of buffers currently in Tx queue
IDF `sdio_slave.c` throws an assert() if its internal queue holding the number of finished Tx transactions becomes full. This can happen when Hosted slave is sending a lot of SDIO packets, but the task to clear the finished Tx transactions is delayed due to other tasks (Wi-Fi task, for example). This is similar to the condition encountered by the slave SPI HD (half-duplex) driver when it has to Tx a lot of data also. Fix is similar: introduce a counting semaphore (= number of SDIO send buffers) to keep track of the number of Tx transactions in progress. Corrected calloc() order in mempool. Warning generated by -Wcalloc-transposed-args. Added more #if !SIMPLIFIED_SDIO_SLAVE around code to remove compiler warnings if SIMPLIFIED_SDIO_SLAVE is defined.
- Loading branch information
1 parent
ed6195d
commit e07f0a9
Showing
2 changed files
with
24 additions
and
5 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters