mmc: use ilog2 for fifoth calculation

Signed-off-by: lintao <lintao@rock-chips.com>
This commit is contained in:
lintao
2015-03-17 16:49:37 +08:00
parent f8847331f8
commit 77d06da6c3

View File

@@ -46,6 +46,7 @@
#include <linux/clk-private.h>
#include <linux/rockchip/cpu.h>
#include <linux/rfkill-wlan.h>
#include <linux/log2.h>
#include "rk_sdmmc.h"
#include "rk_sdmmc_dbg.h"
#include <linux/regulator/rockchip_io_vol_domain.h>
@@ -639,7 +640,9 @@ static void dw_mci_edmac_start_dma(struct dw_mci *host, unsigned int sg_len)
if (mburst > burst_limit) {
mburst = burst_limit;
fifoth_val = SDMMC_SET_FIFOTH(mszs[3], mszs[3] - 1, (host->fifo_depth) / 2);
fifoth_val = SDMMC_SET_FIFOTH(ilog2(mburst) - 1,
(host->fifo_depth) / 2 - 1,
(host->fifo_depth) / 2);
mci_writel(host, FIFOTH, fifoth_val);
}