[U-Boot] maybe a bug for flash write, CFI_CMDSET_AMD_LEGACY
    cheng gao 
    jianminggao at gmail.com
       
    Wed Jul 15 03:25:12 CEST 2009
    
    
  
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.
    
    
More information about the U-Boot
mailing list