[U-Boot-Users] [rfc] new spiflash subsystem
Jean-Christophe PLAGNIOL-VILLARD
plagnioj at jcrosoft.com
Tue Jan 29 09:28:14 CET 2008
On 19:41 Mon 28 Jan , Mike Frysinger wrote:
> On Monday 28 January 2008, Ulf Samuelsson wrote:
> > Unfortunately, this code seems useless, at least for the combination AT91 +
> > SPI flash. Some issues:
> >
> > I believe that the AT45 is not using the same command set as other
> > SPI flash memories. I think the commands need to be separated.
>
> i already accounted for different command sets based on part family.
>
> > AT45 is much more advanced than other SPI flash.
>
> yes, but it still has a basic subset which can be used.
>
> > Did you really test your code on the AT45 series?
>
> it was the part i developed the code on originally (the 64mbit one).
>
> > You assume, incorrectly, that all sector sizes are the same size.
>
> that depends on what level you look at it. sector 0 can be accessed in
> pieces, but it can also be treated as one big sector the same as all the
> others. this is how i treated it.
>
> > How do you do "byte writes" which is an important feature of the AT45?
>
> simple: i dont. spi flash writing isnt something to be done constantly nor is
> it fast, so i dont sweat getting maximum performance.
>
> > Your code does not support DMA transfers, while the current dataflash code
> > runs DMA up to 50 Mbps.
>
> so ? the point of u-boot is to do everything in PIO mode.
>
> > Erasing the entire SPI flash is generally stupid, since you store the
> > environment there. You typically also store the initial bootloader and
> > U-Boot.
>
> so the user is stupid if they erase the entire flash ? you could say the same
> thing about any flash type.
>
> > Very rarely you want to erase the complete flash ,and a protection
> > mechanism is needed to avoid accidental overwrites.
> > The current solution allows dataflash pages to be protected.
I disagree on some product you use a spi flash to store other code and
not nessarely store u-boot in it? (you can have 2 falsh)
>
> yes, protection of pages (hardware and software) is missing.
>
> > Typically you want to store data with a checksum,since relying
> > on the boot of the linux kernel to produce the error, will in my experience
> > make people confused and they will spend a lot of time barking up the wrong
> > tree.
>
> ok ? not sure how this is relevant to the topic at hand.
>
> > There is a general problem with U-Boot which seems to assume
> > that there is more RAM than flash in the system.
> > How do you easily copy 256 MB from an SD-Card to an onboard 256 MB NAND
> > flash when the SDRAM is 64 MB?
> >
> > Today, you have to use 10 lines (U-Boot occupies 1 MB) and that is really
> > bad.
> >
> > The vanilla way of supporting storage devices is really wasteful in
> > resources, and you cannot compare two memory areas if the memory area is
> > larger than half the SDRAM size.
>
> ok ? u-boot is designed as a monitor to get the system bootstrapped and
> execute something else. it isnt an operating system, it doesnt get maximal
> performance, and it isnt supposed to support all sorts of extended features.
> what you describe as deficiency doesnt apply to the topic at hand and really
> sounds like a basic design decision for u-boot. if you want optimal
> performance, use Linux.
I also disagree you may need the optimal performance, in some project I
need it.
Best Regards,
J.
> -mike
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________
> U-Boot-Users mailing list
> U-Boot-Users at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/u-boot-users
More information about the U-Boot
mailing list