[PATCH 1/1] Add fixup for AT49BV6416 devices which needs to swap the region info

Haavard Skinnemoen haavard.skinnemoen at atmel.com
Mon Apr 28 09:05:00 EDT 2008


David Woodhouse <dwmw2 at infradead.org> wrote:
> On Tue, 2008-01-08 at 11:27 +0100, Hans-Christian Egtvedt wrote:
> > This patch adds a fixup for Atmel AT49BV6416 devices which has the erase region
> > information swapped. The fixup swaps them correct.  
> 
> How does this interact with the code in fixup_convert_atmel_pri() which
> sets extp->TopBottom? Doesn't the code _already_ print "Swapping erase
> regions for broken CFI table" for _all_ top-boot chips?

IIRC the AT49BV6416 got it wrong -- the CFI table indicates top-boot
layout, so we need to swap the erase regions for bottom-boot chips and
keep them as is for top-boot chips (or swap them twice, of course.)

Other Atmel chips like the AT49BV642D (which is a replacement for the
obsolete 6416 chip) gives the top-boot bit a more "traditional"
meaning. So I think it's correct to handle the 6416 as a special case.

I haven't checked how many other chips may suffer from this quirk.

Haavard



More information about the linux-mtd mailing list