Files
u-boot/drivers
Marek Vasut 60649a8d6c mmc: tmio: Check INFO1 for completion during DMA transfer
In case a CRC error occurs during DMA transfer, the transfer completion
flag is not set in TMIO_SD_DMA_INFO1 and the transfer would eventually
time out. The timeout could be very long in case the transfer consists
of a large amount of blocks, the base timeout is 10 seconds and every
block adds 100 us more.

In case a CRC error does occur, a completion flag is set in a different
register, TMIO_SD_INFO1. Use this other completion flag to detect DMA
transfer ended and stop waiting for TMIO_SD_DMA_INFO1 completion flag.
This reduces the lengthy timeout in case of an error. The unconditional
check of TMIO_SD_DMA_INFO2 register for DMA related errors must not be
skipped in any case to actually recognize the DMA error and report it.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Paul Barker <paul.barker.ct@bp.renesas.com>
Tested-by: Paul Barker <paul.barker.ct@bp.renesas.com>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2024-04-15 15:19:12 +09:00
..
2023-11-20 09:19:50 -05:00
2023-12-21 08:54:37 -05:00
2023-05-02 14:23:58 -04:00
2024-01-29 22:35:02 -05:00
2023-10-11 10:35:24 -04:00
2024-03-22 10:17:34 +01:00
2023-12-13 11:35:16 -05:00
2024-01-29 22:35:02 -05:00
2023-11-07 14:50:51 -05:00
2023-11-20 09:19:50 -05:00
2024-01-16 12:26:54 +00:00
2024-03-27 09:29:00 +01:00
2024-01-29 22:35:02 -05:00