X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=README-linux;h=93cf4a14ce41deadff15868587ab48aa28701d95;hp=16da045706d2b3cb25c0772ca276ad7fa5613be3;hb=fe192b14d52d6c7d4722402686dcb553153916c3;hpb=457fb8efdcd9b61c657b8b03b942f048eaa5168c diff --git a/README-linux b/README-linux index 16da045..93cf4a1 100644 --- a/README-linux +++ b/README-linux @@ -1,6 +1,6 @@ Welcome to YAFFS, the first file system developed specifically for NAND flash. -It is now YAFFS2 - original YAFFS (AYFFS1) only supports 512-byte page +It is now YAFFS2 - original YAFFS (YAFFS1) only supports 512-byte page NAND and is now deprecated. YAFFS2 supports 512b page in 'YAFFS1 compatibility' mode (CONFIG_YAFFS_YAFFS1) and 2K or larger page NAND in YAFFS2 mode (CONFIG_YAFFS_YAFFS2). @@ -145,6 +145,48 @@ Blocks containing data that is written but never erased will not get back into the free list, so wear is levelled over only blocks which are free or become free, not blocks which never change. +Integrating YAFFS2 into a Linux 2.6.x kernel +-------------------------------------------- + +We'll start by assuming you have a building linux 2.6.x source tree called +linux-dir and have the +yaffs2 source code in a directory calls yaffs-dir. + +yaffs-dir has a handy shell script called patch-ker.sh will painlessly do all the patching +for you. + +patch-ker.sh takes three parameters: +c/l copy or link: c will copy yaffs files into the kernel tree, l will +create symbolic links. +m/s multi-version or single version vfs glue layer. Suggest you use m. +linux-tree + +eg. + +cd yaffs-dir +./patch-ker.sh c m linux-tree + +You will now have to do "make menuconfig" or similar in the Linux tree to +set up the yaffs2 configs. The configs are found under: +File systems/Miscellaneous file systems/ yaffs2 + + +Updating YAFFS2 in a Linux 2.6.x. kernel +---------------------------------------- + +Updating the yaffs in a kernel tree is much the same as above. The only +difference is that you will have to first get rid of the old yaffs2 code. +Just run patch-ker.sh as above which will tell you what to do. + +eg. + +cd yaffs-dir +./patch-ker.sh c m linux-tree + complains that linux-tree/fs/yaffs2 already exists +rm -rf linuux-tree/fs/yaffs2 +./patch-ker.sh c m linux-tree + +Now go and do the linux menuconfig again to set up any new configs. Some helpful info