On Thursday 02 October 2008, Mike Frysinger wrote:
> The CFI flash driver starts at flash_init() which calls down into
> flash_get_size().  This starts by calling flash_detect_cfi().  If said
> function fails, flash_get_size() finishes by attempting to reset the
> flash.  Unfortunately, it does this with an info->portwidth set to 0x10
> which filters down into flash_make_cmd() and that happily smashes the
> stack by sticking info->portwidth bytes into a cfiword_t variable that
> lives on the stack.  On a 64bit system you probably won't notice, but
> killing the last 8 bytes on a 32bit system usually leads to a corrupt
> return address.  Which is what happens on a Blackfin system.

Applied to u-boot-cfi-flash repository. Thanks.

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: [EMAIL PROTECTED]
=====================================================================

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users

Reply via email to