From 251c269fa5cab2809613fcd071154aa97ddf1aa8 Mon Sep 17 00:00:00 2001 From: Huang Shijie Date: Thu, 13 Sep 2012 14:57:55 +0800 Subject: [PATCH] --- yaml --- r: 332768 b: refs/heads/master c: ae70ba2d6078d60c527c93076133accf59becaf8 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/mtd/nand/gpmi-nand/gpmi-lib.c | 10 ++++------ 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/[refs] b/[refs] index b4e000f8d0fc..a5169731c580 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ddab3838aa3332ed2c8ea96accbed5218a2a72b7 +refs/heads/master: ae70ba2d6078d60c527c93076133accf59becaf8 diff --git a/trunk/drivers/mtd/nand/gpmi-nand/gpmi-lib.c b/trunk/drivers/mtd/nand/gpmi-nand/gpmi-lib.c index c95dbe8bb272..41e905dfc399 100644 --- a/trunk/drivers/mtd/nand/gpmi-nand/gpmi-lib.c +++ b/trunk/drivers/mtd/nand/gpmi-nand/gpmi-lib.c @@ -293,6 +293,7 @@ static int gpmi_nfc_compute_hardware_timing(struct gpmi_nand_data *this, struct gpmi_nfc_hardware_timing *hw) { struct timing_threshod *nfc = &timing_default_threshold; + struct resources *r = &this->resources; struct nand_chip *nand = &this->nand; struct nand_timing target = this->timing; bool improved_timing_is_available; @@ -332,8 +333,9 @@ static int gpmi_nfc_compute_hardware_timing(struct gpmi_nand_data *this, (target.tRHOH_in_ns >= 0) ; /* Inspect the clock. */ + nfc->clock_frequency_in_hz = clk_get_rate(r->clock[0]); clock_frequency_in_hz = nfc->clock_frequency_in_hz; - clock_period_in_ns = 1000000000 / clock_frequency_in_hz; + clock_period_in_ns = NSEC_PER_SEC / clock_frequency_in_hz; /* * The NFC quantizes setup and hold parameters in terms of clock cycles. @@ -738,7 +740,6 @@ static int gpmi_nfc_compute_hardware_timing(struct gpmi_nand_data *this, void gpmi_begin(struct gpmi_nand_data *this) { struct resources *r = &this->resources; - struct timing_threshod *nfc = &timing_default_threshold; void __iomem *gpmi_regs = r->gpmi_regs; unsigned int clock_period_in_ns; uint32_t reg; @@ -753,10 +754,6 @@ void gpmi_begin(struct gpmi_nand_data *this) goto err_out; } - /* Get the timing information we need. */ - nfc->clock_frequency_in_hz = clk_get_rate(r->clock[0]); - clock_period_in_ns = 1000000000 / nfc->clock_frequency_in_hz; - gpmi_nfc_compute_hardware_timing(this, &hw); /* [1] Set HW_GPMI_TIMING0 */ @@ -801,6 +798,7 @@ void gpmi_begin(struct gpmi_nand_data *this) * * Calculate the amount of time we need to wait, in microseconds. */ + clock_period_in_ns = NSEC_PER_SEC / clk_get_rate(r->clock[0]); dll_wait_time_in_us = (clock_period_in_ns * 64) / 1000; if (!dll_wait_time_in_us)