
Hi Wolfgang & Heiko,
On Wednesday 12 January 2011 08:59:20 Wolfgang Denk wrote:
diff --git a/doc/README.cfi b/doc/README.cfi new file mode 100644 index 0000000..fa35108 --- /dev/null +++ b/doc/README.cfi @@ -0,0 +1,15 @@ +known issues:
+using M29W128GH from Numonyx:
+You need to add a board specific flash_cmd_reset() function +for this chip to work correctly. Something like this should +work (tested on the digsy_mtc board):
+void flash_cmd_reset(flash_info_t *info) +{
flash_write_cmd(info, 0, 0, AMD_CMD_RESET);
+}
Stefan, can you please send an explicit ACK for this part?
If we put something like this into this new README, we should make the description a bit better. Something like:
--- <snip> --- The common CFI driver provides this weak default implementation for flash_cmd_reset():
void __flash_cmd_reset(flash_info_t *info) { /* * We do not yet know what kind of commandset to use, so we issue * the reset command in both Intel and AMD variants, in the hope * that AMD flash roms ignore the Intel command. */ flash_write_cmd(info, 0, 0, AMD_CMD_RESET); flash_write_cmd(info, 0, 0, FLASH_CMD_RESET); } void flash_cmd_reset(flash_info_t *info) __attribute__((weak,alias("__flash_cmd_reset")));
Some flash chips seems to have trouble with this reset sequence. In this case the board specific code can override this weak default version with a board specific function. For example the digsy_mtc board equipped with the M29W128GH from Numonyx needs this version to function properly:
void flash_cmd_reset(flash_info_t *info) { flash_write_cmd(info, 0, 0, AMD_CMD_RESET); } --- <snip> ---
Heiko, if nobody objects then please include this version into your next patch version. Here my:
Signed-off-by: Stefan Roese sr@denx.de
Thanks.
Cheers, Stefan
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office@denx.de