From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tolunay Orkun Date: Wed, 01 Nov 2006 11:41:31 -0600 Subject: [U-Boot-Users] Sector size with CFI driver? In-Reply-To: <4548D496.3090605@freescale.com> References: <4547AB63.8090802@freescale.com> <4548CC8F.1040001@freescale.com> <4548D228.8060103@freescale.com> <200611011803.46043.sr@denx.de> <4548D496.3090605@freescale.com> Message-ID: <4548DC4B.6010500@orkun.us> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Timur Tabi wrote: > Stefan Roese wrote: >> On Wednesday 01 November 2006 17:58, Timur Tabi wrote: >>> Timur Tabi wrote: >>>> + >>>> +#ifdef CONFIG_MPC8349ITX >>>> + for (i = num_erase_regions-1; i >= 0; i--) { /* top >>>> boot */ +#else >>>> for (i = 0; i < num_erase_regions; i++) { >>>> +#endif >>>> + >>> Ok, I put the above change into cfi_flash.c, and now it works! Can someone >>> explain to me why? Does U-Boot not normally support "top boot" flash? If >>> so, is there a better way of doing this? >> Seems like your FLASH doesn't really support the CFI "Device Geometry >> Definition". Both versions (top & bottom boot block) most likely report the >> same layout. > > Assuming this is true (and I will try to find out), can you recommend how you > want me to implement a fix for my board? Should I do something like > > #define CFG_CFI_DEV_GEO_BROKEN > > in my board header file, and then do something like: > > +#ifdef CFG_CFI_DEV_GEO_BROKEN > + for (i = num_erase_regions-1; i >= 0; i--) { > +#else > for (i = 0; i < num_erase_regions; i++) { > +#endif > > This is really ugly, I know, but I need help coming up with a method that you > guys will accept. I would not assume that all broken geometry to be one way or another. Secondly, it looks like the erase region list returned is reversed for this flash chip. I think, CFG_CFI_GEOMETRY_REVERSED would be more appropriate. Perhaps you can identify such a reserved list from the CFI tables on the flash. If this can be done no macros would be needed to handle this case. Can you tell me the exact part number for your flash. I would like to read the data sheet and compare its CFI structures if I can. Best regards, Tolunay