From 62b8f54877665e8f99ed1f0b9bb3d4e21e31ef41 Mon Sep 17 00:00:00 2001
From: Wolfgang Denk <wd@pollux.denx.de>
Date: Fri, 2 Jun 2006 11:46:20 +0200
Subject: [PATCH] Fix watchdog handling in CFI flash driver Just use udelay()
 when waiting for status changes which will implicitely trigger the watchdog.

---
 CHANGELOG           | 4 ++++
 drivers/cfi_flash.c | 6 +-----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/CHANGELOG b/CHANGELOG
index 4aab6fc04b..7342bb99cb 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,10 @@
 Changes since U-Boot 1.1.4:
 ======================================================================
 
+* Fix watchdog handling in CFI flash driver
+  Just use udelay() when waiting for status changes which will
+  implicitely trigger the watchdog.
+
 * Fix PCI to memory window size problems on PM82x boards
   We use the "automatic" mode that was used for  the  MPC8266ADS  and
   MPC8272 boards. Eventually this should be used on all boards?]
diff --git a/drivers/cfi_flash.c b/drivers/cfi_flash.c
index 37172379b9..fd0a186828 100644
--- a/drivers/cfi_flash.c
+++ b/drivers/cfi_flash.c
@@ -45,7 +45,6 @@
 /* #define DEBUG	*/
 
 #include <common.h>
-#include <watchdog.h>
 #include <asm/processor.h>
 #include <asm/byteorder.h>
 #include <environment.h>
@@ -794,6 +793,7 @@ static int flash_status_check (flash_info_t * info, flash_sect_t sector,
 			flash_write_cmd (info, sector, 0, info->cmd_reset);
 			return ERR_TIMOUT;
 		}
+		udelay (1);		/* also triggers watchdog */
 	}
 	return ERR_OK;
 }
@@ -1308,10 +1308,6 @@ static int flash_write_cfiword (flash_info_t * info, ulong dest,
 	if (flag)
 		enable_interrupts ();
 
-#if defined(CONFIG_MCF52x2)
-	WATCHDOG_RESET();
-#endif
-
 	return flash_full_status_check (info, find_sector (info, dest),
 					info->write_tout, "write");
 }
-- 
2.39.5