diff --git a/drivers/nand/nand_base.c b/drivers/nand/nand_base.c
index 2e3fcdf5ab9361c151b5de60c7b5904d516cfc8f..421550b1512b92bf2e9d8de57a517253ea403e33 100644
--- a/drivers/nand/nand_base.c
+++ b/drivers/nand/nand_base.c
@@ -838,9 +838,9 @@ static int nand_wait(struct mtd_info *mtd, struct nand_chip *this, int state)
 	unsigned long	timeo;
 
 	if (state == FL_ERASING)
-		timeo += (HZ * 400) / 1000;
+ 		timeo = (CFG_HZ * 400) / 1000;
 	else
-		timeo += (HZ * 20) / 1000;
+		timeo = (CFG_HZ * 20) / 1000;
 
 	if ((state == FL_ERASING) && (this->options & NAND_IS_AND))
 		this->cmdfunc(mtd, NAND_CMD_STATUS_MULTI, -1, -1);