mmc: sdhci: Add ADMA3 DMA support for V4 enabled host
authorSowjanya Komatineni <skomatineni@nvidia.com>
Wed, 23 Jan 2019 19:30:53 +0000 (11:30 -0800)
committerUlf Hansson <ulf.hansson@linaro.org>
Mon, 25 Feb 2019 07:40:58 +0000 (08:40 +0100)
commit4c4faff62bf59e64c5175b7704727e6b9db361f2
tree7131cbe49c104f7817e91cf598a065188f476dcd
parentc7fddbd5db5cffd10ed4d18efa20e36803d1899f
mmc: sdhci: Add ADMA3 DMA support for V4 enabled host

Below are the supported DMA types in Host Control1 Register
with Version 4 enable
b'00 - SDMA
b'01 - Not Used
b'10 - ADMA2
b'11 - ADMA2 or ADMA3

ADMA3 uses Command Descriptor to issue an SD command.
A multi-block data transfer is performed by using a pair of CMD
descriptor and ADMA2 descriptor.

ADMA3 performs multiple of multi-block data transfer by using
Integrated Descriptor which is more suitable for Command Queuing
to fetch both Command and Transfer descriptors.

Host Capabilities register indicates the supports of ADMA3 DMA.

Signed-off-by: Sowjanya Komatineni <skomatineni@nvidia.com>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Reviewed-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/sdhci.c
drivers/mmc/host/sdhci.h