diff options
author | Axel Lin <axel.lin@ingics.com> | 2014-05-02 21:07:42 -0400 |
---|---|---|
committer | Chris Ball <chris@printf.net> | 2014-05-22 08:33:31 -0400 |
commit | 03a16853401dcbb1495e7aef6f72b5281c3159e7 (patch) | |
tree | 37ff283e45f46056dea6b6d31405a1156846feae /drivers/mmc/host/omap.c | |
parent | e6cc0123d91e52a454d9e958b9124ca8a61fd82c (diff) |
mmc: omap: Use DIV_ROUND_UP instead of open coded
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>
Diffstat (limited to 'drivers/mmc/host/omap.c')
-rw-r--r-- | drivers/mmc/host/omap.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/mmc/host/omap.c b/drivers/mmc/host/omap.c index 5c2e58b29305..81974ecdfcbc 100644 --- a/drivers/mmc/host/omap.c +++ b/drivers/mmc/host/omap.c | |||
@@ -177,7 +177,7 @@ static void mmc_omap_fclk_offdelay(struct mmc_omap_slot *slot) | |||
177 | unsigned long tick_ns; | 177 | unsigned long tick_ns; |
178 | 178 | ||
179 | if (slot != NULL && slot->host->fclk_enabled && slot->fclk_freq > 0) { | 179 | if (slot != NULL && slot->host->fclk_enabled && slot->fclk_freq > 0) { |
180 | tick_ns = (1000000000 + slot->fclk_freq - 1) / slot->fclk_freq; | 180 | tick_ns = DIV_ROUND_UP(NSEC_PER_SEC, slot->fclk_freq); |
181 | ndelay(8 * tick_ns); | 181 | ndelay(8 * tick_ns); |
182 | } | 182 | } |
183 | } | 183 | } |
@@ -435,7 +435,7 @@ static void mmc_omap_send_stop_work(struct work_struct *work) | |||
435 | struct mmc_data *data = host->stop_data; | 435 | struct mmc_data *data = host->stop_data; |
436 | unsigned long tick_ns; | 436 | unsigned long tick_ns; |
437 | 437 | ||
438 | tick_ns = (1000000000 + slot->fclk_freq - 1)/slot->fclk_freq; | 438 | tick_ns = DIV_ROUND_UP(NSEC_PER_SEC, slot->fclk_freq); |
439 | ndelay(8*tick_ns); | 439 | ndelay(8*tick_ns); |
440 | 440 | ||
441 | mmc_omap_start_command(host, data->stop); | 441 | mmc_omap_start_command(host, data->stop); |
@@ -477,7 +477,7 @@ mmc_omap_send_abort(struct mmc_omap_host *host, int maxloops) | |||
477 | u16 stat = 0; | 477 | u16 stat = 0; |
478 | 478 | ||
479 | /* Sending abort takes 80 clocks. Have some extra and round up */ | 479 | /* Sending abort takes 80 clocks. Have some extra and round up */ |
480 | timeout = (120*1000000 + slot->fclk_freq - 1)/slot->fclk_freq; | 480 | timeout = DIV_ROUND_UP(120 * USEC_PER_SEC, slot->fclk_freq); |
481 | restarts = 0; | 481 | restarts = 0; |
482 | while (restarts < maxloops) { | 482 | while (restarts < maxloops) { |
483 | OMAP_MMC_WRITE(host, STAT, 0xFFFF); | 483 | OMAP_MMC_WRITE(host, STAT, 0xFFFF); |
@@ -677,8 +677,8 @@ mmc_omap_xfer_data(struct mmc_omap_host *host, int write) | |||
677 | if (n > host->buffer_bytes_left) | 677 | if (n > host->buffer_bytes_left) |
678 | n = host->buffer_bytes_left; | 678 | n = host->buffer_bytes_left; |
679 | 679 | ||
680 | nwords = n / 2; | 680 | /* Round up to handle odd number of bytes to transfer */ |
681 | nwords += n & 1; /* handle odd number of bytes to transfer */ | 681 | nwords = DIV_ROUND_UP(n, 2); |
682 | 682 | ||
683 | host->buffer_bytes_left -= n; | 683 | host->buffer_bytes_left -= n; |
684 | host->total_bytes_left -= n; | 684 | host->total_bytes_left -= n; |