I'm writing a customized client driver for high capacity SD/MMC devices for the TI OMAP3530 EVM. It uses the underlying SDBus and SDIO Host Controller implementations available in the BSP. My driver seems to be working but under certain testing regimes (specifically multithreaded file system testing) I am getting a strange message out of the BSP's SDIO Host Controller thread:
"CSDIOControllerBase::CommandTransferCompleteHandler - Unable to get/lock current request!"
Under single-threaded testing I almost never see this, but in multithreaded testing I see it by the thousands; they come so thick they seem to gum up the context switching and the tests sometimes fail. If I comment the message out ( line 1712 of PLATFORM\COMMON\src\SOC\COMMON_TI_V1\COMMONTI\SDHC\BASE\SDHC.cpp) and rebuild the BSP, the tests pass, and the driver seems to work okay.
My question is, does anyone know the significance of this message? I looked at the SDHC source code and it seems that this message could pop up if a command to the host controller is cancelled, but my client driver never asks the SDBus to do that. I've verified that the client properly serializes SD Bus requests. In any case the driver seems to work other than this.
I'm using WinCE 6.0R3 on the TI OMAP3530 EVM Rev. G, and the BSP that came with it. I have a high-capacity MMC device inserted in the SD slot, and I put an ExFAT partition on it. I am using a proprietary in-house file-system test application that I run from the target control shell, which is capable of spawning multiple threads and exercising the file system in various ways from each.