micropython/micropython — pull request #744 by dhylands (2014-07-06 17:05:47+00:00)
Title: Disable IRQs around sdcard reads.

Once the code switches to using DMA, this can be removed.

This should fix #743

I tracked the problem down to an SDIO_FLAG_RXOVERR error. Since the FIFO is only 32 bit x 32 entries (or 128 bytes), I guessed that the timer tick interrupt was probably happening during a read and causing the FIFO to overflow.

Once the code is switched to using DMA, then the disable/enable IRQ can be removed.