Re: [CFT][patch]cfi driver support for NOR flash arrays

From: Aleksandr Rybalko <ray_at_ddteam.net>
Date: Tue, 15 Mar 2011 22:52:09 +0200
Hi Andrew, Marcel and list readers,

On Tue, 15 Mar 2011 14:41:09 -0400
Andrew Duane <aduane_at_juniper.net> wrote:

> Marcel Moolenaar wrote:
> > On Mar 14, 2011, at 8:09 AM, Aleksandr Rybalko wrote:
> > 
> >> Hi, all.
> >> 
> >> proposed patch add support of NOR flash arrays to cfi driver
> >> http://my.ddteam.net/files/2011-03-11_cfi_flash_array_support.patch
> > 
> > Hi Aleksandr,
> > 
> > The patch is interesting, but combines a whole bunch of different
> > changes. Some of the changes are similar to the fixes we have at
> > Juniper ourselves, so getting the driver sync'd up is a good idea.
> > Not to mention that we have added support for the SPI interface.
> > 
> > Just a quick question: is an array different from 2 independent
> > CFI devices on the same bus? I mean: can we support an array by
> > having 2 driver instances?
> > 
> > Thanks,
> 
> Arrays can be horizontal or vertical. A vertical array is just two
> chips, 0->XXXXX and XXXXX+1->YYYYYY. This would work with 2 driver
> instances.
> 
> Horizontal (interleaved) is two chips that share a single address
> space and provide alternating bits/bytes/words. This would not work
> with two instances.
> 
> --
> 
> Andrew Duane             Juniper Networks
> 978-589-0551             10 Technology Park Dr
> aduane_at_juniper.net       Westford, MA  01886-3418
>  

Driver designed to handle "any" array configuration (limitation only
1,2,4,8 for interleaved), only one rule must be applied - flash chips
must be same type, since driver don't handle different timing or sizes
of other chips.

So if for example we have:
	chip 1 at 0x1f000000 size 4M - CS rise on A22=0 and A23=0
	chip 2 at 0x1f400000 size 4M - CS rise on A22=1 and A23=0
	chip 3 at 0x1f800000 size 4M - CS rise on A22=0 and A23=1
as result we get 12M array.

If Marcel question in "can driver support more than one flash chip" -
answer yes, that why I wrote this patch.

But if you need join two devices located not back-to-back on bus -
answer is no. For that case I think best choice strip down one of geom
RAID modules like geom_strip or geom_concat. 

Maybe I misunderstand something, sorry for my English then. :)

-- 
Aleksandr Rybalko <ray_at_ddteam.net>
Received on Tue Mar 15 2011 - 20:04:48 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:12 UTC