]> git.karo-electronics.de Git - linux-beck.git/commitdiff
mmc: omap: Use DIV_ROUND_UP instead of open coded
authorAxel Lin <axel.lin@ingics.com>
Sat, 3 May 2014 01:07:42 +0000 (09:07 +0800)
committerChris Ball <chris@printf.net>
Thu, 22 May 2014 12:33:31 +0000 (08:33 -0400)
Also uses NSEC_PER_SEC and USEC_PER_SEC instead of hard-coded value.
This makes the intention more clear.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Chris Ball <chris@printf.net>
drivers/mmc/host/omap.c

index 5c2e58b29305ce4cab01e34c2d3e17b842979334..81974ecdfcbcb7a1649eee6eeab7a14dd8f49600 100644 (file)
@@ -177,7 +177,7 @@ static void mmc_omap_fclk_offdelay(struct mmc_omap_slot *slot)
        unsigned long tick_ns;
 
        if (slot != NULL && slot->host->fclk_enabled && slot->fclk_freq > 0) {
-               tick_ns = (1000000000 + slot->fclk_freq - 1) / slot->fclk_freq;
+               tick_ns = DIV_ROUND_UP(NSEC_PER_SEC, slot->fclk_freq);
                ndelay(8 * tick_ns);
        }
 }
@@ -435,7 +435,7 @@ static void mmc_omap_send_stop_work(struct work_struct *work)
        struct mmc_data *data = host->stop_data;
        unsigned long tick_ns;
 
-       tick_ns = (1000000000 + slot->fclk_freq - 1)/slot->fclk_freq;
+       tick_ns = DIV_ROUND_UP(NSEC_PER_SEC, slot->fclk_freq);
        ndelay(8*tick_ns);
 
        mmc_omap_start_command(host, data->stop);
@@ -477,7 +477,7 @@ mmc_omap_send_abort(struct mmc_omap_host *host, int maxloops)
        u16 stat = 0;
 
        /* Sending abort takes 80 clocks. Have some extra and round up */
-       timeout = (120*1000000 + slot->fclk_freq - 1)/slot->fclk_freq;
+       timeout = DIV_ROUND_UP(120 * USEC_PER_SEC, slot->fclk_freq);
        restarts = 0;
        while (restarts < maxloops) {
                OMAP_MMC_WRITE(host, STAT, 0xFFFF);
@@ -677,8 +677,8 @@ mmc_omap_xfer_data(struct mmc_omap_host *host, int write)
        if (n > host->buffer_bytes_left)
                n = host->buffer_bytes_left;
 
-       nwords = n / 2;
-       nwords += n & 1; /* handle odd number of bytes to transfer */
+       /* Round up to handle odd number of bytes to transfer */
+       nwords = DIV_ROUND_UP(n, 2);
 
        host->buffer_bytes_left -= n;
        host->total_bytes_left -= n;