summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWolfgang Denk <wd@pollux.denx.de>2006-07-19 14:07:21 +0200
committerWolfgang Denk <wd@pollux.denx.de>2006-07-19 14:07:21 +0200
commit0de7fa59391fa529bec4ef11647f063f67fd9786 (patch)
tree33c57ce629e5723869e72a2b3deb8fee59a7345c
parentb87dfd2854809ddcf4be54d772752e7ed137386f (diff)
downloadu-boot-imx-0de7fa59391fa529bec4ef11647f063f67fd9786.zip
u-boot-imx-0de7fa59391fa529bec4ef11647f063f67fd9786.tar.gz
u-boot-imx-0de7fa59391fa529bec4ef11647f063f67fd9786.tar.bz2
Add additional error messages to flash driver on TRAB board
(for erase errors and timeout errors) Patch by Martin Krause, 14 Feb 2006
-rw-r--r--CHANGELOG4
-rw-r--r--board/trab/flash.c9
2 files changed, 12 insertions, 1 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 3e6b1f9..e1e68aa 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,10 @@
Changes since U-Boot 1.1.4:
======================================================================
+* Add additional error messages to flash driver on TRAB board
+ (for erase errors and timeout errors)
+ Patch by Martin Krause, 14 Feb 2006
+
* Add support for TB5200 board
The TB5200 ("Tinybox") is a small baseboard for the TQM5200 module
integrated in a little aluminium case.
diff --git a/board/trab/flash.c b/board/trab/flash.c
index 8cdd824..77a6fc2 100644
--- a/board/trab/flash.c
+++ b/board/trab/flash.c
@@ -281,10 +281,12 @@ int flash_erase (flash_info_t * info, int s_first, int s_last)
if (chip1 == ERR || chip2 == ERR) {
rc = ERR_PROG_ERROR;
+ printf ("Flash erase error\n");
goto outahere;
}
if (chip1 == TMO) {
rc = ERR_TIMOUT;
+ printf ("Flash erase timeout error\n");
goto outahere;
}
}
@@ -384,8 +386,13 @@ static int write_word (flash_info_t * info, ulong dest, ulong data)
*addr = CMD_READ_ARRAY;
- if (chip1 == ERR || chip2 == ERR || *addr != data)
+ if (chip1 == ERR || chip2 == ERR || *addr != data) {
rc = ERR_PROG_ERROR;
+ printf ("Flash program error\n");
+ debug ("chip1: %#x, chip2: %#x, addr: %#lx *addr: %#lx, "
+ "data: %#lx\n",
+ chip1, chip2, addr, *addr, data);
+ }
if (iflag)
enable_interrupts ();