No need to flush cache for command without data.
Signed-off-by: Kevin Liu <kevinliu@asrmicro.com>
 
        sdhci_writel(host, cmd->cmdarg, SDHCI_ARGUMENT);
 #ifdef CONFIG_MMC_SDHCI_SDMA
-       trans_bytes = ALIGN(trans_bytes, CONFIG_SYS_CACHELINE_SIZE);
-       flush_cache(start_addr, trans_bytes);
+       if (data != 0) {
+               trans_bytes = ALIGN(trans_bytes, CONFIG_SYS_CACHELINE_SIZE);
+               flush_cache(start_addr, trans_bytes);
+       }
 #endif
        sdhci_writew(host, SDHCI_MAKE_CMD(cmd->cmdidx, flags), SDHCI_COMMAND);
        start = get_timer(0);