Skip to contentSkip to conversation

nand/denali: optimize denali irq wait and irq handler functions

PATCH In review Chuanxiao.Dong 1 participant 1 message Aug 12, 2010

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH v2 1/6 nand/denali: optimize denali irq wait and irq handler functions

From f2e9d56b9d605dfbca3c703d9252d2b663e296e9 Mon Sep 17 00:00:00 2001
From: Chuanxiao Dong <[email protected]>
Date: Thu, 12 Aug 2010 13:31:20 +0800
Subject: [PATCH 1/6] nand/denali: optimize denali irq wait and irq handler functions

---
 drivers/mtd/nand/denali.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)
drivers/mtd/nand/denali.c +3 -3
index 532fe07..dd32d04 100644
@@ -660,6 +660,7 @@ static irqreturn_t denali_isr(int irq, void *dev_id)
 	uint32_t irq_status = 0x0;
 	irqreturn_t result = IRQ_NONE;
 
+	denali_set_intr_modes(denali, false);
 	spin_lock(&denali->irq_lock);
 
 	/* check to see if a valid NAND chip has
@@ -682,16 +683,16 @@ static irqreturn_t denali_isr(int irq, void *dev_id)
 			result = IRQ_HANDLED;
 		}
 	}
+
 	spin_unlock(&denali->irq_lock);
+	denali_set_intr_modes(denali, true);
 	return result;
 }
-#define BANK(x) ((x) << 24)
 
 static uint32_t wait_for_irq(struct denali_nand_info *denali, uint32_t irq_mask)
 {
 	unsigned long comp_res = 0;
 	uint32_t intr_status = 0;
-	bool retry = false;
 	unsigned long timeout = msecs_to_jiffies(1000);
 
 	do {
@@ -709,7 +710,6 @@ static uint32_t wait_for_irq(struct denali_nand_info *denali, uint32_t irq_mask)
 			/* these are not the interrupts you are looking for -
 			 * need to wait again */
 			spin_unlock_irq(&denali->irq_lock);
-			retry = true;
 		}
 	} while (comp_res != 0);
 
Signature · 1 line
1.6.6.1