]> git.baikalelectronics.ru Git - kernel.git/commit
mmc: meson-gx: add support for descriptor chain mode
authorHeiner Kallweit <hkallweit1@gmail.com>
Fri, 7 Apr 2017 19:22:44 +0000 (21:22 +0200)
committerUlf Hansson <ulf.hansson@linaro.org>
Mon, 24 Apr 2017 19:42:21 +0000 (21:42 +0200)
commit83e4e95551154e1c5a915cf624d65cef20bfdfc9
treec3fdf8c4648f371abf3eb7edb4eab654bf64f685
parent35410b775d29833ecd3856a15907d8b6992eba79
mmc: meson-gx: add support for descriptor chain mode

So far a bounce buffer is used to serialize the scatterlist(s).
This overhead can be avoided by switching to descriptor chain mode.
As result the performance is drastically improved. On a Odroid-C2 with
a 128 GB eMMC module raw reads reach 140 MB/s.

Prerequisite for descriptor chain mode is that all scatterlist buffers
are 8 byte aligned for 64-bit DMA. That's not always the case, at least
the brcmfmac SDIO WiFi driver is known to cause problems.

Therefore, for each request, check upfront whether all scatterlist
buffers are 8 byte aligned and fall back to bounce buffer mode if
that's not the case.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/meson-gx-mmc.c