diff options
author | Marek Vasut | 2018-10-03 00:46:24 +0200 |
---|---|---|
committer | Marek Vasut | 2018-10-09 17:21:44 +0200 |
commit | beced53a74a32087651150b0c2a8a95eaddd53c2 (patch) | |
tree | 70ef89623d35116eef8ffc32f5a182237f53d870 /drivers/mmc | |
parent | 92bde154ec91222c4d9a766052ab6dcdbf0cf410 (diff) |
mmc: tmio: Limit DMA to 32bit on R-Car Gen3
The internal DMAC on Gen3 is 32bit only, limit the DMA address
range to 32bit.
Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Diffstat (limited to 'drivers/mmc')
-rw-r--r-- | drivers/mmc/tmio-common.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/mmc/tmio-common.c b/drivers/mmc/tmio-common.c index 6b219419914..138de59470a 100644 --- a/drivers/mmc/tmio-common.c +++ b/drivers/mmc/tmio-common.c @@ -379,6 +379,12 @@ static bool tmio_sd_addr_is_dmaable(const char *src) if (!IS_ALIGNED(addr, TMIO_SD_DMA_MINALIGN)) return false; +#if defined(CONFIG_RCAR_GEN3) + /* Gen3 DMA has 32bit limit */ + if (addr >> 32) + return false; +#endif + #if defined(CONFIG_ARCH_UNIPHIER) && !defined(CONFIG_ARM64) && \ defined(CONFIG_SPL_BUILD) /* |