cancel
Showing results for 
Search instead for 
Did you mean: 

SDIO DMA times out

jasonp4113
Associate II
Posted on May 26, 2014 at 06:01

Hi all,

Using cube4.2.0 and STM32F205:

I am trying to use SDIO in DMA mode.

Polling mode work perfectly, but using ''HAL_SD_ReadBlocks_DMA()'' times out.

I have traced that ''SDIO_IRQHandler()'' fires and sets the ''hsd->SdTransferCplt'' flag, but ''DMA2_Stream3_IRQHandler()'' doesn't fire, therefore never sets the ''hsd->DmaTransferCplt'' flag, indicating an issue with the DMA.

From what I can tell, Cube has set up the DMA and ISR properly, but am I missing something else??

Thx

Jason

1 REPLY 1
jasonp4113
Associate II
Posted on May 27, 2014 at 04:43

After some research, I found someone else with exactly the same SDIO_DMA issue. It seems to be faulty HAL code in cube (therefore I hope they fix this in a later version...)

The info for how to fix the DMA timeouts can be found here:

https://my.st.com/public/STe2ecommunities/mcu/Lists/cortex_mx_stm32/Flat.aspx?RootFolder=%2Fpublic%2FSTe2ecommunities%2Fmcu%2FLists%2Fcortex_mx_stm32%2FSTM32Cube%20%2B%20F4-Discovery%20%2B%20FatFS&FolderCTID=0x01200200770978C69A1141439FE559EB459D7580009C4E14902C3CDE46A77F0FFD06506F5B&currentviews=10...