
On Tuesday 29 January 2008, Mike Frysinger wrote:
On Tuesday 29 January 2008, Stefan Roese wrote:
On Tuesday 29 January 2008, Mike Frysinger wrote:
The cmd_reset member of the flash info struct is not initialized until the specific cmdset function is called. This normally happens by: flash_get_size -> flash_detect_cfi -> cmdset_*_init That means we cannot use cmd_reset inside of the cfi detection functions.
Right. But your version now uses the Intel reset command (0xff) unconditionally. AMD/Spansion style flash chips need AMD_CMD_RESET (0xf0) instead. Any idea how we should handle this?
i saw that, but there's a define already to account for this i think: CFG_FLASH_CFI_AMD_RESET ... or did i miss the purpose of this ?
But you need to know what FLASH chips you are using in this case (Intel or AMD/Spansion). But you are right, they are not pin compatible, so it should be fixed for one board and your solution should be ok. The board config file just has to select CFG_FLASH_CFI_AMD_RESET is AMD/Spasion style flash chips are used.
the other option is to just not issue a reset ... when i looked at the kernel, it didnt seem to issue a reset in the cfi detection case
Yes, this is probably an even better solution, since we have here a chicken-egg-problem.
Any thoughts on this? How should we proceed?
Best regards, 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 =====================================================================