From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefan Roese Date: Mon, 20 Feb 2012 19:04:36 +0100 Subject: [U-Boot] Flash not erased problem. In-Reply-To: <85DFF0014DE4284D996716AC0595F56A130530F331@CHN-HCLT-EVS08.HCLT.CORP.HCL.IN> References: <85DFF0014DE4284D996716AC0595F56A130530F331@CHN-HCLT-EVS08.HCLT.CORP.HCL.IN> Message-ID: <201202201904.36923.sr@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Sanjoy, On Monday 20 February 2012 13:40:30 Sanjoy Saha - ERS, HCL Tech wrote: > I am using u-Boot [2009.08-CanyonlandsOptimized_2.6.30_1.13-01] in > canyonlands board to flash my ram file system (which I need to do often). > I go in step to erase/tftp/copy the binary in my flash. > > era 0xfc200000 0xfd5fffff > tftp 0x200000 canyonlands/ramdisk.img > cp.b ${fileaddr} 0xfc200000 ${filesize} > > other than copy command everything works fine. The copy command bails out > with error message "flash not erased". Size of ramdisk image is ~7MB. I > have verified the sectors for erase operation done properly (i.e filled > with 0xFFFFFFFF). > > After giving 'n" number of shot copy works great. I suspect timing problem > which degrades with age of flash memory. I have acquired a new board and i > see the same problem. > > Can some one help me out ? Did you check upgrading to a newer U-Boot version? Take a look at this commit: Author: Stefan Roese 2009-10-29 18:37:45 Committer: Stefan Roese 2009-11-09 13:30:19 Parent: 514bab6609acd1a2a19fdd75c2f6255178db7c96 (ppc4xx: Fix "chip_config" command for AMCC Arches) Child: 17a684449728ce4c9ce79fa9e7e75b86a5f9b41d (ppc4xx/Canyonlands added USB board callbacks) Branches: many (141) Follows: v2009.11-rc1 Precedes: v2009.11-rc2 ppc4xx: Canyonlands: Change EBC bus config to drive always (no high-z) This patch fixes a problem only seen very occasionally on Canyonlands. The NOR flash interface (CFI driver) doesn't work reliably in all cases. Erasing and/or programming sometimes doesn't work. Sometimes with an error message, like "flash not erased" when trying to program an area that should have just been erased. And sometimes without any error messages. As mentioned above, this problem was only seen rarely and with some PLL configuration (CPU speed, EBC speed). Now I spotted this problem a few times, when running my Canyonlands with the following setup (chip_config): 1000-nor - NOR CPU:1000 PLB: 200 OPB: 100 EBC: 100 Changing the EBC configuration to not release the bus into high impedance state inbetween the transfers (ATC, DTC and CTC bits set to 1 in EBC0_CFG) seems to fix this problem. I haven't seen any failure anymore with this patch applied. Signed-off-by: Stefan Roese So a newer U-Boot version should fix your issue. 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