[U-Boot] maybe a bug for flash write, CFI_CMDSET_AMD_LEGACY
Stefan Roese
sr at denx.de
Wed Jul 15 05:48:18 CEST 2009
On Wednesday 15 July 2009 03:25:12 cheng gao wrote:
> u-boot-2009.06\drivers\mtd\cfi_flash.c
> Line: 836~845
> Function: flash_write_cfiword
>
> case CFI_CMDSET_AMD_EXTENDED:
> case CFI_CMDSET_AMD_STANDARD:
> #ifdef CONFIG_FLASH_CFI_LEGACY
> case CFI_CMDSET_AMD_LEGACY:
> #endif
> sect = find_sector(info, dest);
> flash_unlock_seq (info, sect);
> flash_write_cmd (info, sect, info->addr_unlock1, AMD_CMD_WRITE);
> sect_found = 1;
> break;
>
>
> It should be :
>
> case CFI_CMDSET_AMD_EXTENDED:
> case CFI_CMDSET_AMD_STANDARD:
>
> sect = find_sector(info, dest);
> flash_unlock_seq (info, sect);
> flash_write_cmd (info, sect, info->addr_unlock1, AMD_CMD_WRITE);
> sect_found = 1;
> break;
> #ifdef CONFIG_FLASH_CFI_LEGACY
> case CFI_CMDSET_AMD_LEGACY:
> flash_unlock_seq (info, 0);
> flash_write_cmd (info, 0, info->addr_unlock1, AMD_CMD_WRITE);
> sect_found = 1;
> break;
> #endif
>
> to make it work for SST39LF040 which is only 4k per serctor.
Take a look at the latest version of the file in mainline. It already has such
a patch integrated:
http://git.denx.de/?p=u-boot/u-boot-cfi-
flash.git;a=commitdiff;h=b4db4a7638ef90cf0aacf7b954d9bf3043dda780
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 at denx.de
=====================================================================
More information about the U-Boot
mailing list