AnsweredAssumed Answered

SDIO DMA usage

Question asked by Metzger.Marco on Jul 8, 2016
Latest reply on Jul 21, 2017 by Radek R
I'm trying to get the SDIO system working with DMA. The system works in the configuration without DMA.

Now I set the read and write operations in the "sd_diskio.c" to DMA, by adding _DMA to the starting commands BSP_SD_WriteBlocks_DMA and BSP_SD_ReadBlocks_DMA.

Now all the interrupts for SDIO and DMA fire several times but the my system stops at
HAL_SD_CheckReadOperation in line:

  /* Wait until the Rx transfer is no longer active */
  while((__HAL_SD_SDIO_GET_FLAG(hsd, SDIO_FLAG_RXACT)) && (timeout > 0U))
  {
    timeout--;  
  }

from hsd->SdTransferErr I got SD_RX_OVERRUN

any idea, what is wrong?

Best regards
Marco



Outcomes