]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
MFC r358450, r358635
authorEmmanuel Vadot <manu@FreeBSD.org>
Fri, 19 Jun 2020 17:52:48 +0000 (17:52 +0000)
committerEmmanuel Vadot <manu@FreeBSD.org>
Fri, 19 Jun 2020 17:52:48 +0000 (17:52 +0000)
commite6a5a10a0a19e46003fd036a46ab4e39b88bc91c
treed95277ecac0b5cbaed3fe4e7a906d313ec4eec01
parentddd6f050381555ff3218b3d7d314cfd554edd40a
MFC r358450, r358635

r358450:
mmc: dwmmc: Fix off by one error

The IVAR_MAX_DATA is supposed to have the number of descriptor X the mmc
block size and desc_count contain all this information + 1.

Reported by: phk

r358635:
dwmmc: Rework the DMA engine

Each segment can be up to 4096 bytes in chain structure according to the
RK3399 TRM Part 2.
Set the buffers in full ring where the last one point to the first one.
Correctly reports the MMC_IVAR_MAX_DATA.
Use CACHE_LINE_SIZE for bus_dma alignment.
sys/dev/mmc/host/dwmmc.c
sys/dev/mmc/host/dwmmc_hisi.c
sys/dev/mmc/host/dwmmc_var.h