lkml.org 
[lkml]   [2008]   [Mar]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH 08/18] MMC: OMAP: Fix timeout calculation for MMC multislot support
    From: Juha Yrjola <juha.yrjola@solidboot.com>

    Fix the data timeout calculation for MMC multislot support.

    Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com>
    Signed-off-by: Jarkko Lavinen <jarkko.lavinen@nokia.com>
    Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>
    Signed-off-by: Tony Lindgren <tony@atomide.com>
    ---
    drivers/mmc/host/omap.c | 9 ++++-----
    1 files changed, 4 insertions(+), 5 deletions(-)

    diff --git a/drivers/mmc/host/omap.c b/drivers/mmc/host/omap.c
    index f652de9..e4e7537 100644
    --- a/drivers/mmc/host/omap.c
    +++ b/drivers/mmc/host/omap.c
    @@ -861,13 +861,12 @@ static inline void set_cmd_timeout(struct mmc_omap_host *host, struct mmc_reques

    static inline void set_data_timeout(struct mmc_omap_host *host, struct mmc_request *req)
    {
    - int timeout;
    + unsigned int timeout, cycle_ns;
    u16 reg;

    - /* Convert ns to clock cycles by assuming 20MHz frequency
    - * 1 cycle at 20MHz = 500 ns
    - */
    - timeout = req->data->timeout_clks + req->data->timeout_ns / 500;
    + cycle_ns = 1000000000 / host->current_slot->fclk_freq;
    + timeout = req->data->timeout_ns / cycle_ns;
    + timeout += req->data->timeout_clks;

    /* Check if we need to use timeout multiplier register */
    reg = OMAP_MMC_READ(host, SDIO);
    -- 1.5.3.GIT


    \
     
     \ /
      Last update: 2008-03-26 21:19    [W:0.022 / U:0.676 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site