mmc: rockchip: covert dsb() to dsb(sy)
authorHuang, Tao <huangtao@rock-chips.com>
Wed, 10 Dec 2014 11:24:11 +0000 (19:24 +0800)
committerHuang, Tao <huangtao@rock-chips.com>
Wed, 10 Dec 2014 11:24:11 +0000 (19:24 +0800)
drivers/mmc/host/rk_sdmmc.c
include/linux/mmc/rk_mmc.h

index 83a00a984bd5cb1faf53310aaabe207b0c2d1cc7..a61fadf2b066dfdbd9cfa0cc5eac88141281efaf 100755 (executable)
@@ -1684,12 +1684,12 @@ static void dw_mci_hw_reset(struct mmc_host *mmc)
        */
        mci_writel(slot->host, PWREN, 0x0);
        mci_writel(slot->host, RST_N, 0x0);
-       dsb();
+       dsb(sy);
        udelay(10); /* 10us for bad quality eMMc. */
 
        mci_writel(slot->host, PWREN, 0x1);
        mci_writel(slot->host, RST_N, 0x1);
-       dsb();
+       dsb(sy);
        usleep_range(500, 1000); /* at least 500(> 200us) */
 }
 
index a8127dda1f8c83d236fb510514940cb1529b035e..1eb5d455ad88083e953d9195607e5f60d7d35693 100755 (executable)
@@ -293,7 +293,7 @@ struct dw_mci_board {
        struct block_settings *blk_settings;
 };
 #define grf_writel(v, offset)   do \
-        { writel_relaxed(v, RK_GRF_VIRT + offset); dsb(); } \
+        { writel_relaxed(v, RK_GRF_VIRT + offset); dsb(sy); } \
                 while (0)
 
 #endif /* LINUX_MMC_DW_MMC_H */