public inbox for linux-mtd@lists.infradead.org
 help / color / mirror / Atom feed
* Re: FAT for NAND Flash
  2002-05-18  5:16     ` Yong-iL Joh
@ 2000-01-12 11:37       ` Thomas Gleixner
  2002-05-18  7:19       ` David Woodhouse
  2002-05-19 23:58       ` FAT for NAND Flash --> Use of OOB Charles Manning
  2 siblings, 0 replies; 31+ messages in thread
From: Thomas Gleixner @ 2000-01-12 11:37 UTC (permalink / raw)
  To: Yong-iL Joh, Studying MTD; +Cc: David Woodhouse, linux-mtd

On Saturday, 18. May 2002 07:16, Yong-iL Joh wrote:
> Studying MTD <studying_mtd@yahoo.com> writes:
> > If i want to use FAT with NAND then i have to use :-
> >
> > A. FAT: filesystem driver
> > B. Translation: Translation layer
> > C. MTD: Memory Technology Devices driver
> > D. NAND: generic NAND driver
> > E. Hardware specific driver
> >
> > So i have to add only Translation layer, rest layers
> > will remain same.
> >
> > Am i right ? If not, please correct me.
> >
> > How can i write traslation layer , any reference.
>
> IMHO, you're right.
> we have implemented this way for SMC(SmartMedia Card). :)
>
> but, we can't use current MTD's nand.c because of different usage of OOB.
> we called SMCTL as "B. Translation".

The usage of OOB data in nand.c is configurable. So you could use it for 
SmartMedia-FAT too.

-- 
Thomas
___________________________________
autronix automation GmbH
http://www.autronix.de gleixner@autronix.de

^ permalink raw reply	[flat|nested] 31+ messages in thread

* FAT for NAND Flash
@ 2002-05-16 14:14 Studying MTD
  2002-05-16 14:24 ` David Woodhouse
  2002-05-18  5:13 ` FAT for NAND Flash Yong-iL Joh
  0 siblings, 2 replies; 31+ messages in thread
From: Studying MTD @ 2002-05-16 14:14 UTC (permalink / raw)
  To: linux-mtd

Hello all,

I am studying MTD and i have few stupid questions in
my mind. I have seen that you are using JFFS2 for NAND
Flash devices. 

1. Is it possible to use FAT filesystem with NAND
Flash.

2. What are the advantages and disadvantages of using
FAT with NAND Flash.

3. What is the difference between SmartMedia DOS-FAT
and ordinary Fat filesystem.

Thank you for your help.


__________________________________________________
Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience
http://launch.yahoo.com

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-16 14:14 FAT for NAND Flash Studying MTD
@ 2002-05-16 14:24 ` David Woodhouse
  2002-05-16 14:46   ` Studying MTD
  2002-05-17 13:44   ` FAT for NAND Flash Studying MTD
  2002-05-18  5:13 ` FAT for NAND Flash Yong-iL Joh
  1 sibling, 2 replies; 31+ messages in thread
From: David Woodhouse @ 2002-05-16 14:24 UTC (permalink / raw)
  To: Studying MTD; +Cc: linux-mtd

studying_mtd@yahoo.com said:
>  1. Is it possible to use FAT filesystem with NAND Flash.

Not directly. You need to use a translation layer on the NAND flash to make 
it emulate a normal hard drive, on which you can put any normal file system.

> 2. What are the advantages and disadvantages of using FAT with NAND
> Flash.

You end up with a file system on top of another pseudo-filesystem which is 
doing the hard drive emulation for you. Ideally, both of them need to do 
their own journalling to ensure consistency at each level -- that's why 
it's better just to have a file system that's designed to run on flash.

We aren't running DOS any more. We don't need to pretend to be a hard drive 
just so that we can provide an INT 13h handler and have it 'just work'.

> 3. What is the difference between SmartMedia DOS-FAT and ordinary Fat
> filesystem. 

AFAIK nothing. SmartMedia has a translation layer just like FTL and NFTL, 
and you put a normal FAT file system on top of that.

--
dwmw2

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-16 14:24 ` David Woodhouse
@ 2002-05-16 14:46   ` Studying MTD
  2002-05-16 15:08     ` David Woodhouse
  2002-05-18  5:16     ` Yong-iL Joh
  2002-05-17 13:44   ` FAT for NAND Flash Studying MTD
  1 sibling, 2 replies; 31+ messages in thread
From: Studying MTD @ 2002-05-16 14:46 UTC (permalink / raw)
  To: David Woodhouse; +Cc: linux-mtd

--- David Woodhouse <dwmw2@infradead.org> wrote:
> 
> studying_mtd@yahoo.com said:
> >  1. Is it possible to use FAT filesystem with NAND
> Flash.
> 
> Not directly. You need to use a translation layer on
> the NAND flash to make 
> it emulate a normal hard drive, on which you can put
> any normal file system.
> 

To use JFFS2 with NAND, currently we use four layers
of software :-

A. JFFS2: filesystem driver 
B. MTD: Memory Technology Devices driver 
C. NAND: generic NAND driver 
D. Hardware specific driver 

If i want to use FAT with NAND then i have to use :-

A. FAT: filesystem driver 
B. Translation: Translation layer
C. MTD: Memory Technology Devices driver 
D. NAND: generic NAND driver 
E. Hardware specific driver 

So i have to add only Translation layer, rest layers
will remain same.

Am i right ? If not, please correct me.

How can i write traslation layer , any reference.


> > 3. What is the difference between SmartMedia
> DOS-FAT and ordinary Fat
> > filesystem. 
> 
> AFAIK nothing. SmartMedia has a translation layer
> just like FTL and NFTL, 
> and you put a normal FAT file system on top of that.
> 

Are you supporting SmartMedia DOS-FAT .
>From where i can get sources for SmartMedia DOS-FAT ,
Linux tree , your CVS or some where else.

Thank you for your help.


__________________________________________________
Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience
http://launch.yahoo.com

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-16 14:46   ` Studying MTD
@ 2002-05-16 15:08     ` David Woodhouse
  2002-05-16 16:31       ` Paul
  2002-05-18  5:16     ` Yong-iL Joh
  1 sibling, 1 reply; 31+ messages in thread
From: David Woodhouse @ 2002-05-16 15:08 UTC (permalink / raw)
  To: Studying MTD; +Cc: linux-mtd

studying_mtd@yahoo.com said:
> To use JFFS2 with NAND, currently we use four layers
> of software :-
> 
> A. JFFS2: filesystem driver 
> B. MTD: Memory Technology Devices driver 
> C. NAND: generic NAND driver 
> D. Hardware specific driver 
> 
> If i want to use FAT with NAND then i have to use :-
> 
> A. FAT: filesystem driver 
> B. Translation: Translation layer
> C. MTD: Memory Technology Devices driver 
> D. NAND: generic NAND driver 
> E. Hardware specific driver 
> 
> So i have to add only Translation layer, rest layers
> will remain same.
> 
> Am i right ? If not, please correct me.

Basically, yes. Some of those layers are so small they probably shouldn't 
be included -- the 'MTD' layer only really allows MTD 'users' such as JFFS2 
and the translation layers to find MTD 'device' such as the flash chip 
drivers -- it doesn't get involved after passing a pointer to the access 
methods.


> How can i write traslation layer , any reference.

Look at the FTL and NFTL code in drivers/mtd/ . Also look at the sddr09 
driver for USB SmartMedia readers -- I think that has some of the actual 
SmartMedia format implemented. 

> Are you supporting SmartMedia DOS-FAT .
> From where i can get sources for SmartMedia DOS-FAT ,
> Linux tree , your CVS or some where else.

We don't support the SmartMedia translation layer yet. Many people have 
talked about implementing it; nobody's yet shown me code. There is some 
code which may be useful in the SDDR-09 driver for USB SmartMedia readers, 
though. 

--
dwmw2

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-16 15:08     ` David Woodhouse
@ 2002-05-16 16:31       ` Paul
  2002-05-16 17:35         ` David Woodhouse
  0 siblings, 1 reply; 31+ messages in thread
From: Paul @ 2002-05-16 16:31 UTC (permalink / raw)
  To: David Woodhouse; +Cc: Studying MTD, linux-mtd

On Thu, 16 May 2002, David Woodhouse wrote:

> Look at the FTL and NFTL code in drivers/mtd/ . Also look at the sddr09 
> driver for USB SmartMedia readers -- I think that has some of the actual 
> SmartMedia format implemented. 
> 
> > Are you supporting SmartMedia DOS-FAT .
> > From where i can get sources for SmartMedia DOS-FAT ,
> > Linux tree , your CVS or some where else.
> 
> We don't support the SmartMedia translation layer yet. Many people have 
> talked about implementing it; nobody's yet shown me code. There is some 
> code which may be useful in the SDDR-09 driver for USB SmartMedia readers, 
> though. 

Michael and I have been looking at the SDDR-09 driver.  I could be 
wrong, but as far as I can tell, the sddr09.c code does not grok FAT12.  
It only seems to have generic SCSI commands sent to the USB SCSI emulation 
layer (i.e. it seems to treat SmartMedia cards as generic block devices).  
I believe the actual FAT12 translation occurs in the firmware of the USB 
SmartMedia reader?

-- Paul

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-16 16:31       ` Paul
@ 2002-05-16 17:35         ` David Woodhouse
  2002-05-16 20:34           ` Paul
  0 siblings, 1 reply; 31+ messages in thread
From: David Woodhouse @ 2002-05-16 17:35 UTC (permalink / raw)
  To: Paul; +Cc: Studying MTD, linux-mtd

paul@oz.net said:
>  Michael and I have been looking at the SDDR-09 driver.  I could be
> wrong, but as far as I can tell, the sddr09.c code does not grok
> FAT12.   It only seems to have generic SCSI commands sent to the USB
> SCSI emulation  layer (i.e. it seems to treat SmartMedia cards as
> generic block devices).   I believe the actual FAT12 translation
> occurs in the firmware of the USB  SmartMedia reader?

No.

SmartMedia is just a translation layer. It emulates a block device.

You may use a FAT filesystem on that block device. Most people do. But why
do you expect the driver to have any knowledge of FAT? Does the floppy disk 
driver? Does the IDE disk driver?

The FAT (or ext2, or reiserfs, or whatever) file system is an entirely 
separate layer from the block device which is provided by the SmartMedia 
driver. 

--
dwmw2

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-16 17:35         ` David Woodhouse
@ 2002-05-16 20:34           ` Paul
  2002-05-17  6:03             ` David Woodhouse
  0 siblings, 1 reply; 31+ messages in thread
From: Paul @ 2002-05-16 20:34 UTC (permalink / raw)
  To: David Woodhouse; +Cc: Studying MTD, linux-mtd

Thank you for your reply, David.

Perhaps I used the wrong terminology when I said "FAT12 translation",
but doesn't the firmware on a USB SmartMedia reader have to be able to 
parse the SSFDC Physical Format Specification, such as the CIS (Card 
Information Structure)?  This is the part that seems to be missing
in sddr09.c, and the upper level stuff (e.g. fs/fat/inode.c) only handles 
pure FAT12.  In that case, sddr09.c isn't as useful to us as previously
suggested.

Thank you for your patience. :)  

-- Paul

On Thu, 16 May 2002, David Woodhouse wrote:

> paul@oz.net said:
> >  Michael and I have been looking at the SDDR-09 driver.  I could be
> > wrong, but as far as I can tell, the sddr09.c code does not grok
> > FAT12.   It only seems to have generic SCSI commands sent to the USB
> > SCSI emulation  layer (i.e. it seems to treat SmartMedia cards as
> > generic block devices).   I believe the actual FAT12 translation
> > occurs in the firmware of the USB  SmartMedia reader?
>
> No.
> 
> SmartMedia is just a translation layer. It emulates a block device.
> 
> You may use a FAT filesystem on that block device. Most people do. But why
> do you expect the driver to have any knowledge of FAT? Does the floppy disk 
> driver? Does the IDE disk driver?
> 
> The FAT (or ext2, or reiserfs, or whatever) file system is an entirely 
> separate layer from the block device which is provided by the SmartMedia 
> driver. 
> 

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-16 20:34           ` Paul
@ 2002-05-17  6:03             ` David Woodhouse
  2002-05-17  6:40               ` Paul
  0 siblings, 1 reply; 31+ messages in thread
From: David Woodhouse @ 2002-05-17  6:03 UTC (permalink / raw)
  To: Paul; +Cc: Studying MTD, linux-mtd

paul@oz.net said:
>  Perhaps I used the wrong terminology when I said "FAT12 translation",
> but doesn't the firmware on a USB SmartMedia reader have to be able to
>  parse the SSFDC Physical Format Specification, such as the CIS (Card
> Information Structure)?  This is the part that seems to be missing in
> sddr09.c, and the upper level stuff (e.g. fs/fat/inode.c) only handles
>  pure FAT12.  In that case, sddr09.c isn't as useful to us as
> previously suggested.

OK, I thought there was more knowledge about the SmartMedia translation 
layer in the driver than that -- after all, if they were going to do it in 
firmware they could have just presented it as a standard USB-storage device 
and not required a special driver.

Have you also looked at the updated driver at 
	ftp://ftp.kernel.org/pub/linux/kernel/people/aeb/

--
dwmw2

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-17  6:03             ` David Woodhouse
@ 2002-05-17  6:40               ` Paul
  0 siblings, 0 replies; 31+ messages in thread
From: Paul @ 2002-05-17  6:40 UTC (permalink / raw)
  To: David Woodhouse; +Cc: Studying MTD, linux-mtd

On Fri, 17 May 2002, David Woodhouse wrote:

> Have you also looked at the updated driver at 
> 	ftp://ftp.kernel.org/pub/linux/kernel/people/aeb/
> 

Thanks _very_ much for this pointer!  Didn't realize that
the new USB storage modules for the 2.5.x kernels now have
a separate smartmedia.c file with some good info.  Looks
like there's some overlap with the MTD stuff as well; for
example, nand_ids.h, ECC, etc.

Cheers,

-- Paul

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-16 14:24 ` David Woodhouse
  2002-05-16 14:46   ` Studying MTD
@ 2002-05-17 13:44   ` Studying MTD
  2002-05-17 13:50     ` David Woodhouse
  1 sibling, 1 reply; 31+ messages in thread
From: Studying MTD @ 2002-05-17 13:44 UTC (permalink / raw)
  To: David Woodhouse; +Cc: linux-mtd

--- David Woodhouse <dwmw2@infradead.org> wrote:
> AFAIK nothing. SmartMedia has a translation layer
> just like FTL and NFTL, 
> and you put a normal FAT file system on top of that.
> 

Are you also using FTL or NFTL for NAND Flash Device.

Is it necessary to use FTL or NFTL for NAND Flash
Device.

What is the difference between FTL and NFTL.

Thank you for your response.


__________________________________________________
Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience
http://launch.yahoo.com

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-17 13:44   ` FAT for NAND Flash Studying MTD
@ 2002-05-17 13:50     ` David Woodhouse
  2002-05-17 14:00       ` Studying MTD
  0 siblings, 1 reply; 31+ messages in thread
From: David Woodhouse @ 2002-05-17 13:50 UTC (permalink / raw)
  To: Studying MTD; +Cc: linux-mtd

studying_mtd@yahoo.com said:
>  Are you also using FTL or NFTL for NAND Flash Device.
> Is it necessary to use FTL or NFTL for NAND Flash Device.
> What is the difference between FTL and NFTL. 

FTL is used on NOR flash, NFTL on NAND. 

--
dwmw2

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-17 13:50     ` David Woodhouse
@ 2002-05-17 14:00       ` Studying MTD
  2002-05-17 14:39         ` David Woodhouse
  0 siblings, 1 reply; 31+ messages in thread
From: Studying MTD @ 2002-05-17 14:00 UTC (permalink / raw)
  To: David Woodhouse; +Cc: linux-mtd

--- David Woodhouse <dwmw2@infradead.org> wrote:
> 
> studying_mtd@yahoo.com said:
> >  Are you also using FTL or NFTL for NAND Flash
> Device.
> > Is it necessary to use FTL or NFTL for NAND Flash
> Device.
> > What is the difference between FTL and NFTL. 
> 
> FTL is used on NOR flash, NFTL on NAND. 
> 

I was asking these question because you told me that i
have to add translation layer for FAT. what i was
thinking that, is it possible that if i write only one
translation layer which will be good for FAT as well
as it will replace NFTL.

Is it possible ? or this is irrelevant ?

Thank you for your help.


__________________________________________________
Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience
http://launch.yahoo.com

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-17 14:00       ` Studying MTD
@ 2002-05-17 14:39         ` David Woodhouse
  2002-05-17 16:19           ` Studying MTD
  0 siblings, 1 reply; 31+ messages in thread
From: David Woodhouse @ 2002-05-17 14:39 UTC (permalink / raw)
  To: Studying MTD; +Cc: linux-mtd

studying_mtd@yahoo.com said:
>  I was asking these question because you told me that i have to add
> translation layer for FAT. what i was thinking that, is it possible
> that if i write only one translation layer which will be good for FAT
> as well as it will replace NFTL.

I don't understand what you're trying to say. Please could you rephrase it, 
preferably not making any reference at all to FAT, ext2, reiserfs or 
anything else which is not relevant because it's handled by an entirely 
separate layer.

--
dwmw2

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-17 14:39         ` David Woodhouse
@ 2002-05-17 16:19           ` Studying MTD
  2002-05-18 16:00             ` David Woodhouse
  0 siblings, 1 reply; 31+ messages in thread
From: Studying MTD @ 2002-05-17 16:19 UTC (permalink / raw)
  To: David Woodhouse; +Cc: linux-mtd

To use FAT filesystem for NAND flash i need :-

A. FAT: filesystem driver 
B. Translation: translation layer on the NAND flash to
make it emulate a normal hard drive
C. MTD: Memory Technology Devices driver (MTD Block)
D. NAND: generic NAND driver
E. Hardware specific driver (Plus NFTL)

am i right ? Please correct me as i am still learning
MTD's model.

yes, i can understand that NAND Flash Translation
Layer(NFTL) and Translation layer for FAT are in
different layers.

but is it possible to make FAT filesystem for NAND
flash like this :-

A. FAT: filesystem driver 
B. Translation: translation layer on the NAND flash to
make it emulate a normal hard drive (with NFTL)
C. MTD: Memory Technology Devices driver (MTD Char)
D. NAND: generic NAND driver 
E. Hardware specific driver (without NFTL)

Thank you for your help.

--- David Woodhouse <dwmw2@infradead.org> wrote:
> 
> studying_mtd@yahoo.com said:
> >  I was asking these question because you told me
> that i have to add
> > translation layer for FAT. what i was thinking
> that, is it possible
> > that if i write only one translation layer which
> will be good for FAT
> > as well as it will replace NFTL.
> 
> I don't understand what you're trying to say. Please
> could you rephrase it, 
> preferably not making any reference at all to FAT,
> ext2, reiserfs or 
> anything else which is not relevant because it's
> handled by an entirely 
> separate layer.
> 
> --
> dwmw2
> 
> 
> 
>
______________________________________________________
> Linux MTD discussion mailing list
>
http://lists.infradead.org/mailman/listinfo/linux-mtd/


__________________________________________________
Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience
http://launch.yahoo.com

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-16 14:14 FAT for NAND Flash Studying MTD
  2002-05-16 14:24 ` David Woodhouse
@ 2002-05-18  5:13 ` Yong-iL Joh
  2002-05-18 15:30   ` Studying MTD
  1 sibling, 1 reply; 31+ messages in thread
From: Yong-iL Joh @ 2002-05-18  5:13 UTC (permalink / raw)
  To: Studying MTD; +Cc: linux-mtd

Studying MTD <studying_mtd@yahoo.com> writes:

> 3. What is the difference between SmartMedia DOS-FAT
> and ordinary Fat filesystem.

SmartMedia DOS-FAT(abbr. SMFS) filesystem is FAT compatible as they say.
we have implemented SMFS on MTD layer,
as following...

1. FAT (of Linux)
2. SCMTL (similar to FTL, NFTL,...)
3. NAND_smc (it's almost same NAND in MTD except handling ECC)
4. SMC (similart to spia.c)

if you will plan to implement SMFS for bootloader or like that,
just ports SMFS221 from SSDC forum.

-- 
Joh, Yong-iL
E-mail: tolkien@nownuri.net tolkien@mizi.com

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-16 14:46   ` Studying MTD
  2002-05-16 15:08     ` David Woodhouse
@ 2002-05-18  5:16     ` Yong-iL Joh
  2000-01-12 11:37       ` Thomas Gleixner
                         ` (2 more replies)
  1 sibling, 3 replies; 31+ messages in thread
From: Yong-iL Joh @ 2002-05-18  5:16 UTC (permalink / raw)
  To: Studying MTD; +Cc: David Woodhouse, linux-mtd

Studying MTD <studying_mtd@yahoo.com> writes:

> If i want to use FAT with NAND then i have to use :-
> 
> A. FAT: filesystem driver 
> B. Translation: Translation layer
> C. MTD: Memory Technology Devices driver 
> D. NAND: generic NAND driver 
> E. Hardware specific driver 
> 
> So i have to add only Translation layer, rest layers
> will remain same.
> 
> Am i right ? If not, please correct me.
> 
> How can i write traslation layer , any reference.

IMHO, you're right.
we have implemented this way for SMC(SmartMedia Card). :)

but, we can't use current MTD's nand.c because of different usage of OOB.
we called SMCTL as "B. Translation".

-- 
Joh, Yong-iL
E-mail: tolkien@nownuri.net tolkien@mizi.com

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-18  5:16     ` Yong-iL Joh
  2000-01-12 11:37       ` Thomas Gleixner
@ 2002-05-18  7:19       ` David Woodhouse
  2002-05-19 23:58       ` FAT for NAND Flash --> Use of OOB Charles Manning
  2 siblings, 0 replies; 31+ messages in thread
From: David Woodhouse @ 2002-05-18  7:19 UTC (permalink / raw)
  To: Yong-iL Joh; +Cc: Studying MTD, linux-mtd

tolkien@mizi.com said:
>  but, we can't use current MTD's nand.c because of different usage of
> OOB. we called SMCTL as "B. Translation".

We can fix nand.c so that you can use it.

--
dwmw2

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-18  5:13 ` FAT for NAND Flash Yong-iL Joh
@ 2002-05-18 15:30   ` Studying MTD
  2002-05-20  3:39     ` Yong-iL Joh
  0 siblings, 1 reply; 31+ messages in thread
From: Studying MTD @ 2002-05-18 15:30 UTC (permalink / raw)
  To: Yong-iL Joh; +Cc: linux-mtd

--- Yong-iL Joh <tolkien@mizi.com> wrote:
> SmartMedia DOS-FAT(abbr. SMFS) filesystem is FAT
> compatible as they say.
> we have implemented SMFS on MTD layer,
> as following...
> 
> 1. FAT (of Linux)
> 2. SCMTL (similar to FTL, NFTL,...)

what is SCMTL ? 

from where i can get specs of SCMTL.

is it also having patent ?

> 3. NAND_smc (it's almost same NAND in MTD except
> handling ECC)

then how you handle ECC ?

> 4. SMC (similart to spia.c)
>

from where i can get your source code.

Is it working properly .

Thank you for your help.


__________________________________________________
Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience
http://launch.yahoo.com

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-17 16:19           ` Studying MTD
@ 2002-05-18 16:00             ` David Woodhouse
  2002-05-18 17:53               ` Studying MTD
  2002-05-18 18:20               ` Studying MTD
  0 siblings, 2 replies; 31+ messages in thread
From: David Woodhouse @ 2002-05-18 16:00 UTC (permalink / raw)
  To: Studying MTD; +Cc: linux-mtd

studying_mtd@yahoo.com said:
> A. FAT: filesystem driver 
> B. Translation: translation layer on the NAND flash to
> make it emulate a normal hard drive
> C. MTD: Memory Technology Devices driver (MTD Block)
> D. NAND: generic NAND driver
> E. Hardware specific driver (Plus NFTL)

No. NFTL _is_ the translation layer in (B). The SmartMedia format could be
used in its place. The other list you gave looks more like the existing 
situation.

However, in neither list is item 'C' correct. Neither the 'mtdblock' nor 
'mtdchar' code is involved at all. NFTL or the SmartMedia code talks 
directly to the MTD device provided by the NAND code.

--
dwmw2

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-18 16:00             ` David Woodhouse
@ 2002-05-18 17:53               ` Studying MTD
  2002-05-18 18:20               ` Studying MTD
  1 sibling, 0 replies; 31+ messages in thread
From: Studying MTD @ 2002-05-18 17:53 UTC (permalink / raw)
  To: David Woodhouse; +Cc: linux-mtd

Thank you very much for your correction.

I think, this should also be corrected :-

http://www.linux-mtd.infradead.org/tech/nand.html says
that :-

There are four layers of software

JFFS2: filesystem driver 
MTD: Memory Technology Devices driver 
NAND: generic NAND driver 
Hardware specific driver 

It should be :-

There are five layers of software

JFFS2: filesystem driver 
Flash Translation Layer: FTL (for NOR) or NFTL (for
NAND)
MTD: Memory Technology Devices driver 
NAND: generic NAND driver 
Hardware specific driver 

Am i again wrong ?

Thank you for your help.

--- David Woodhouse <dwmw2@infradead.org> wrote:
> 
> studying_mtd@yahoo.com said:
> > A. FAT: filesystem driver 
> > B. Translation: translation layer on the NAND
> flash to
> > make it emulate a normal hard drive
> > C. MTD: Memory Technology Devices driver (MTD
> Block)
> > D. NAND: generic NAND driver
> > E. Hardware specific driver (Plus NFTL)
> 
> No. NFTL _is_ the translation layer in (B). The
> SmartMedia format could be
> used in its place. The other list you gave looks
> more like the existing 
> situation.
> 


__________________________________________________
Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience
http://launch.yahoo.com

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-18 16:00             ` David Woodhouse
  2002-05-18 17:53               ` Studying MTD
@ 2002-05-18 18:20               ` Studying MTD
  2002-05-19  9:34                 ` David Woodhouse
  1 sibling, 1 reply; 31+ messages in thread
From: Studying MTD @ 2002-05-18 18:20 UTC (permalink / raw)
  To: David Woodhouse; +Cc: linux-mtd

--- David Woodhouse <dwmw2@infradead.org> wrote:
> Neither the 'mtdblock' nor 
> 'mtdchar' code is involved at all. 

As per drivers/mtd/Config.help (2.5.15) :-

CONFIG_MTD_BLOCK
...
At the moment, it is also required for the Journalling
Flash File System(s) to obtain a handle on the MTD
device when it's mounted(although JFFS and JFFS2 don't
actually use any of the functionality of the mtdblock
device).
...
You do not need this option for use with the
DiskOnChip devices. For those, enable NFTL support
(CONFIG_NFTL) instead.


it means we have to set CONFIG_MTD_BLOCK, if we are
not using DoC but we are using JFFS2 filesystem.

i am confused, who is correct ?

Please guide me.

Thank for your help.



__________________________________________________
Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience
http://launch.yahoo.com

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-18 18:20               ` Studying MTD
@ 2002-05-19  9:34                 ` David Woodhouse
  2002-05-19 23:26                   ` Newby question Charles Manning
  0 siblings, 1 reply; 31+ messages in thread
From: David Woodhouse @ 2002-05-19  9:34 UTC (permalink / raw)
  To: Studying MTD; +Cc: linux-mtd

studying_mtd@yahoo.com said:
> > Neither the 'mtdblock' nor 
> > 'mtdchar' code is involved at all.  

> As per drivers/mtd/Config.help (2.5.15) :-

> You do not need this option for use with the
> DiskOnChip devices. For those, enable NFTL support
> (CONFIG_NFTL) instead.
> it means we have to set CONFIG_MTD_BLOCK, if we are
> not using DoC but we are using JFFS2 filesystem.

> i am confused, who is correct ?

Both. You do not need CONFIG_MTD_BLOCK in the situation about which we were 
talking; where you use a translation layer to mount a 'normal' file system 
on a flash device. CONFIG_MTD_BLOCK provides such a translation layer itself;
just a very naïve one which doesn't do any wear levelling and can lose data 
if you power down while it's writing.

Until about 2.5.10, you had to pretend to mount JFFS2 on the mtdblock 
device, but it didn't actually _use_ it - just looked at the minor device 
number to work out which MTD device to use. You don't need that hack any 
more in 2.5.

--
dwmw2

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Newby question
  2002-05-19  9:34                 ` David Woodhouse
@ 2002-05-19 23:26                   ` Charles Manning
  2002-05-20  6:49                     ` David Woodhouse
  0 siblings, 1 reply; 31+ messages in thread
From: Charles Manning @ 2002-05-19 23:26 UTC (permalink / raw)
  To: linux-mtd

OK, I've pulled the latest mtd stuff from CVS and have it in a direcory 
called ~/mtd.

Now I want to apply these files to my kernel directory (ie so that the files 
end up where they should be in the kernel tree).

I figure there's some flavour of cp or something that I should be using.

Help plz. Thanx

-- CHarles

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash  --> Use of OOB
  2002-05-18  5:16     ` Yong-iL Joh
  2000-01-12 11:37       ` Thomas Gleixner
  2002-05-18  7:19       ` David Woodhouse
@ 2002-05-19 23:58       ` Charles Manning
  2 siblings, 0 replies; 31+ messages in thread
From: Charles Manning @ 2002-05-19 23:58 UTC (permalink / raw)
  To: Yong-iL Joh, Studying MTD; +Cc: linux-mtd

On Sat, 18 May 2002 17:16, Yong-iL Joh wrote:
> Studying MTD <studying_mtd@yahoo.com> writes:
> > If i want to use FAT with NAND then i have to use :-
> >
> > A. FAT: filesystem driver
> > B. Translation: Translation layer
> > C. MTD: Memory Technology Devices driver
> > D. NAND: generic NAND driver
> > E. Hardware specific driver
> >
> > So i have to add only Translation layer, rest layers
> > will remain same.
> >
> > Am i right ? If not, please correct me.
> >
> > How can i write traslation layer , any reference.
>
> IMHO, you're right.
> we have implemented this way for SMC(SmartMedia Card). :)
>
> but, we can't use current MTD's nand.c because of different usage of OOB.
> we called SMCTL as "B. Translation".

Can you be more specific about the issue here? I'm interested as there might 
be some synergy.

I have a different file system (not JFFSx) that uses nand.c, but  the 
interface provided by nand.c is not optimal.

What I did is write some wrapper functions to map from the way I like to see 
NAND ( probably a bit more like SMFS) and the functions provided by nand.c

In the short term, writing your own wrappers is the way to go since it 
buffers your code from the mtd nand interface.
In the longer term, the mtd nand interface might expose more functions to to 
more SM friendly.

-- Charles

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-18 15:30   ` Studying MTD
@ 2002-05-20  3:39     ` Yong-iL Joh
  2002-05-20 11:36       ` Studying MTD
  0 siblings, 1 reply; 31+ messages in thread
From: Yong-iL Joh @ 2002-05-20  3:39 UTC (permalink / raw)
  To: Studying MTD; +Cc: linux-mtd

[-- Attachment #1: Type: text/plain, Size: 1104 bytes --]

Studying MTD <studying_mtd@yahoo.com> writes:

> --- Yong-iL Joh <tolkien@mizi.com> wrote:
> > 1. FAT (of Linux)
> > 2. SCMTL (similar to FTL, NFTL,...)
> 
> what is SCMTL ? 
> from where i can get specs of SCMTL.

Oh, mistype! SMCTL.
just name it for convenience.
Smart Media Card Translation Layer. :-)

> is it also having patent ?

I don't know, see SSFDC forum about that.

> > 3. NAND_smc (it's almost same NAND in MTD except
> > handling ECC)
> 
> then how you handle ECC ?

ECC algorithm is same. but different mapping of data in OOB

In SMFS by SSFDC, for the 512+16 bytes/pages models
usage of OOB is following

512 ~ 515       reserved
516             Data Status Byte
517             Block Status Byte
518,519         Block Address Field-1
520~522         ECC Field-2
523,524         Block Address Field-2
525~527         ECC Field-1

> from where i can get your source code.
> Is it working properly .

attatched source of driver is working properly based in 2.4.16-rmk2.
so mtd layer is a bit older.
(if this distribution is illegal, please do not use for commercial.
 I'm not lawyer. :p )

[-- Attachment #2: SMC by mizi --]
[-- Type: application/octet-stream, Size: 25325 bytes --]

[-- Attachment #3: Type: text/plain, Size: 63 bytes --]


-- 
Joh, Yong-iL
E-mail: tolkien@nownuri.net tolkien@mizi.com

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: Newby question
  2002-05-19 23:26                   ` Newby question Charles Manning
@ 2002-05-20  6:49                     ` David Woodhouse
  2002-05-20  7:48                       ` Newby question --> source tree management Charles Manning
  0 siblings, 1 reply; 31+ messages in thread
From: David Woodhouse @ 2002-05-20  6:49 UTC (permalink / raw)
  To: manningc2; +Cc: linux-mtd

manningc2@actrix.gen.nz said:
> OK, I've pulled the latest mtd stuff from CVS and have it in a
> direcory  called ~/mtd.

> Now I want to apply these files to my kernel directory (ie so that the
> files  end up where they should be in the kernel tree).

> I figure there's some flavour of cp or something that I should be
> using. 

You should be able to build modules just by typing 'make', and it'll find 
the build tree for your kernel in /lib/modules/`uname -r`/build. You can 
override that with LINUXDIR= and also ARCH= and CROSS_COMPILE= as normal 
with a kernel build.

If you want to build stuff into your kernel, copy or symlink the contents 
of the drivers/mtd and include/linux/mtd directories into your kernel tree.

I usually just use symlinks into the checked out MTD tree, 
so I can continue to cvs update it easily, etc.

There's a 'patchin.sh' script which does some of this, I think. I've never 
paid much attention to it.

--
dwmw2

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: Newby question --> source tree management
  2002-05-20  6:49                     ` David Woodhouse
@ 2002-05-20  7:48                       ` Charles Manning
  0 siblings, 0 replies; 31+ messages in thread
From: Charles Manning @ 2002-05-20  7:48 UTC (permalink / raw)
  To: David Woodhouse; +Cc: linux-mtd

On Mon, 20 May 2002 18:49, David Woodhouse wrote:
> manningc2@actrix.gen.nz said:
> > OK, I've pulled the latest mtd stuff from CVS and have it in a
> > direcory  called ~/mtd.
> >
> > Now I want to apply these files to my kernel directory (ie so that the
> > files  end up where they should be in the kernel tree).
> >
> > I figure there's some flavour of cp or something that I should be
> > using.
>
> You should be able to build modules just by typing 'make', and it'll find
> the build tree for your kernel in /lib/modules/`uname -r`/build. You can
> override that with LINUXDIR= and also ARCH= and CROSS_COMPILE= as normal
> with a kernel build.
>
> If you want to build stuff into your kernel, copy or symlink the contents
> of the drivers/mtd and include/linux/mtd directories into your kernel tree.
>
> I usually just use symlinks into the checked out MTD tree,
> so I can continue to cvs update it easily, etc.
>
> There's a 'patchin.sh' script which does some of this, I think. I've never
> paid much attention to it.

Thanx David

The symlinks sound like the best option once you get a bit more integrated 
than building seperate modules. 

Manual copying sucketh hugely and sounds rather error prone.

Can you give a few more details on how you structure this? I thought maybe of 
making an equivalence between LINUXDIR and the cvs root  mtd (which to me 
would seem the nicest) , but this would seem to cause pulling CVS to go stomp 
some key files at that level Makefile, COPYING...

Thanx

-- Charles

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-20  3:39     ` Yong-iL Joh
@ 2002-05-20 11:36       ` Studying MTD
  2002-05-21 10:52         ` Yong-iL Joh
  0 siblings, 1 reply; 31+ messages in thread
From: Studying MTD @ 2002-05-20 11:36 UTC (permalink / raw)
  To: Yong-iL Joh; +Cc: linux-mtd

--- Yong-iL Joh <tolkien@mizi.com> wrote:
> attatched source of driver is working properly based
> in 2.4.16-rmk2.
> so mtd layer is a bit older.

Thank you very much for your source code.

Can you please let me know, from where you took the
reference of :-

1. smctl_sm.c
2. smctlcore.c
3. smctl.h

Thank you for your help.


__________________________________________________
Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience
http://launch.yahoo.com

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-20 11:36       ` Studying MTD
@ 2002-05-21 10:52         ` Yong-iL Joh
  2002-05-21 22:36           ` Charles Manning
  0 siblings, 1 reply; 31+ messages in thread
From: Yong-iL Joh @ 2002-05-21 10:52 UTC (permalink / raw)
  To: Studying MTD; +Cc: linux-mtd

Studying MTD <studying_mtd@yahoo.com> writes:

> --- Yong-iL Joh <tolkien@mizi.com> wrote:
> > attatched source of driver is working properly based
> > in 2.4.16-rmk2.
> > so mtd layer is a bit older.
> 
> Thank you very much for your source code.
> 
> Can you please let me know, from where you took the
> reference of :-

visit SSFDC forum. :)

-- 
Joh, Yong-iL
E-mail: tolkien@nownuri.net tolkien@mizi.com

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: FAT for NAND Flash
  2002-05-21 10:52         ` Yong-iL Joh
@ 2002-05-21 22:36           ` Charles Manning
  0 siblings, 0 replies; 31+ messages in thread
From: Charles Manning @ 2002-05-21 22:36 UTC (permalink / raw)
  To: Yong-iL Joh, Studying MTD; +Cc: linux-mtd

On Tue, 21 May 2002 22:52, Yong-iL Joh wrote:
> Studying MTD <studying_mtd@yahoo.com> writes:
> > --- Yong-iL Joh <tolkien@mizi.com> wrote:
> > > attatched source of driver is working properly based
> > > in 2.4.16-rmk2.
> > > so mtd layer is a bit older.
> >
> > Thank you very much for your source code.
> >
> > Can you please let me know, from where you took the
> > reference of :-
>
> visit SSFDC forum. :)

Also the samsung www. This has a good description of the file system, ECC 
etc. However, I believe you need to sign an NDA to get the code.

-- CHarles

^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2002-05-21 22:42 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-05-16 14:14 FAT for NAND Flash Studying MTD
2002-05-16 14:24 ` David Woodhouse
2002-05-16 14:46   ` Studying MTD
2002-05-16 15:08     ` David Woodhouse
2002-05-16 16:31       ` Paul
2002-05-16 17:35         ` David Woodhouse
2002-05-16 20:34           ` Paul
2002-05-17  6:03             ` David Woodhouse
2002-05-17  6:40               ` Paul
2002-05-18  5:16     ` Yong-iL Joh
2000-01-12 11:37       ` Thomas Gleixner
2002-05-18  7:19       ` David Woodhouse
2002-05-19 23:58       ` FAT for NAND Flash --> Use of OOB Charles Manning
2002-05-17 13:44   ` FAT for NAND Flash Studying MTD
2002-05-17 13:50     ` David Woodhouse
2002-05-17 14:00       ` Studying MTD
2002-05-17 14:39         ` David Woodhouse
2002-05-17 16:19           ` Studying MTD
2002-05-18 16:00             ` David Woodhouse
2002-05-18 17:53               ` Studying MTD
2002-05-18 18:20               ` Studying MTD
2002-05-19  9:34                 ` David Woodhouse
2002-05-19 23:26                   ` Newby question Charles Manning
2002-05-20  6:49                     ` David Woodhouse
2002-05-20  7:48                       ` Newby question --> source tree management Charles Manning
2002-05-18  5:13 ` FAT for NAND Flash Yong-iL Joh
2002-05-18 15:30   ` Studying MTD
2002-05-20  3:39     ` Yong-iL Joh
2002-05-20 11:36       ` Studying MTD
2002-05-21 10:52         ` Yong-iL Joh
2002-05-21 22:36           ` Charles Manning

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox