summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChuanxiao Dong <chuanxiao.dong@intel.com>2010-08-11 17:53:29 +0800
committerDavid Woodhouse <David.Woodhouse@intel.com>2010-08-12 11:10:39 +0100
commit628bfd4164502fa531b6d284cb6a18e337ec3f20 (patch)
tree7b41a8e5fc648fa6374273f311bc3d7cfdeaf408
parentf0bc0c778fe12e43658193fae975fc5762e98773 (diff)
downloadlinux-628bfd4164502fa531b6d284cb6a18e337ec3f20.tar.gz
linux-628bfd4164502fa531b6d284cb6a18e337ec3f20.tar.bz2
linux-628bfd4164502fa531b6d284cb6a18e337ec3f20.zip
nand/denali: use cpu_relax() while waiting for hardware interrupt
Signed-off-by: Chuanxiao Dong <chuanxiao.dong@intel.com> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
-rw-r--r--drivers/mtd/nand/denali.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/mtd/nand/denali.c b/drivers/mtd/nand/denali.c
index 975a89351f97..5f7c8c8b8b67 100644
--- a/drivers/mtd/nand/denali.c
+++ b/drivers/mtd/nand/denali.c
@@ -211,9 +211,9 @@ static uint16_t denali_nand_reset(struct denali_nand_info *denali)
iowrite32(device_reset_banks[i],
denali->flash_reg + DEVICE_RESET);
while (!(ioread32(denali->flash_reg +
- intr_status_addresses[i]) &
+ intr_status_addresses[i]) &
(reset_complete[i] | operation_timeout[i])))
- ;
+ cpu_relax();
if (ioread32(denali->flash_reg + intr_status_addresses[i]) &
operation_timeout[i])
dev_dbg(&denali->dev->dev,