Browse Source

Merge branch 'master' of git+ssh://wbx@openadk.org/git/openadk

Waldemar Brodkorb 15 years ago
parent
commit
026459174c

+ 1 - 1
mk/rootfs.mk

@@ -18,7 +18,7 @@ $(eval $(call rootfs_template,archive,ARCHIVE))
 $(eval $(call rootfs_template,initramfs,INITRAMFS))
 $(eval $(call rootfs_template,initramfs-piggyback,INITRAMFS_PIGGYBACK))
 $(eval $(call rootfs_template,squashfs,SQUASHFS))
-$(eval $(call rootfs_template,yaffs,YAFFS))
+$(eval $(call rootfs_template,yaffs,YAFFS,root=/dev/mtdblock1))
 $(eval $(call rootfs_template,nfsroot,NFSROOT,root=/dev/nfs ip=dhcp init=/init))
 $(eval $(call rootfs_template,encrypted,ENCRYPTED))
 

+ 2 - 2
package/Config.in

@@ -4,18 +4,18 @@
 menu "Package selection"
 
 menu "Basesystem"
+source "package/adkinstall/Config.in"
 source "package/base-files/Config.in"
 source "package/busybox/Config.in.manual"
 source "package/cfgfs/Config.in"
-source "package/cfinstall/Config.in"
 source "package/cryptinit/Config.in"
 source "package/uclibc/Config.in.manual"
 source "package/glibc/Config.in.manual"
 source "package/eglibc/Config.in.manual"
 source "package/libc/Config.in.manual"
-source "package/rpm/Config.in"
 source "package/grub/Config.in"
 source "package/grub-bin/Config.in"
+source "package/rpm/Config.in"
 endmenu
 
 menu "Bluetooth"

+ 11 - 6
package/cfinstall/Makefile → package/adkinstall/Makefile

@@ -3,10 +3,10 @@
 
 include ${TOPDIR}/rules.mk
 
-PKG_NAME:=		cfinstall
+PKG_NAME:=		adkinstall
 PKG_VERSION:=		1.0
-PKG_RELEASE:=		2
-PKG_DESCR:=		compact flash installer
+PKG_RELEASE:=		3
+PKG_DESCR:=		installer for compact flash or nand/mtd devices
 PKG_SECTION:=		base
 PKG_DEPENDS:=		parted sfdisk
 
@@ -17,7 +17,7 @@ NO_DISTFILES:=		1
 
 include ${TOPDIR}/mk/package.mk
 
-$(eval $(call PKG_template,CFINSTALL,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+$(eval $(call PKG_template,ADKINSTALL,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
 BUILD_STYLE:=		manual
 INSTALL_STYLE:=		manual
@@ -26,7 +26,12 @@ pre-configure:
 	mkdir -p ${WRKBUILD}
 
 do-install:
-	${INSTALL_DIR} $(IDIR_CFINSTALL)/sbin
-	${INSTALL_BIN} ./src/cfinstall $(IDIR_CFINSTALL)/sbin
+	${INSTALL_DIR} $(IDIR_ADKINSTALL)/sbin
+ifeq ($(ADK_LINUX_MIPS_RB532),y)
+	${INSTALL_BIN} ./src/adkinstall.rb532 \
+		$(IDIR_ADKINSTALL)/sbin/adkinstall
+else
+	${INSTALL_BIN} ./src/adkinstall $(IDIR_ADKINSTALL)/sbin
+endif
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 0 - 0
package/cfinstall/src/cfinstall → package/adkinstall/src/adkinstall


+ 78 - 0
package/adkinstall/src/adkinstall.rb532

@@ -0,0 +1,78 @@
+#!/bin/sh
+# installs a rootfs tar archive from OpenADK onto 
+# a Compact Flash disk or NAND device
+# special script for routerboard rb532
+
+nandinstall=0
+cfinstall=0
+
+if [ -z $1 ];then
+        printf "Please give your target device as first parameter [cf|nand]\n"
+        exit 1
+fi
+if [ -z $2 ];then
+        printf "Please give your root tar archive as second parameter\n"
+        exit 1
+fi
+if [ -z $3 ];then
+        printf "Please give your kernel as third parameter\n"
+        exit 1
+fi
+case $1 in
+	nand)
+		nandinstall=1
+		;;
+	cf)
+		cfinstall=1
+		;;
+	*)
+		printf "Target not recognized\n"
+		exit 1
+		;;
+esac
+
+if [ $cfinstall -eq 1 ];then
+	# create empty partition table
+	printf "Creating partition scheme\n"
+	parted -s /dev/sda mklabel msdos
+	sleep 2
+	maxsize=$(env LC_ALL=C parted /dev/sda -s unit cyl print |awk '/^Disk/ { print $3 }'|sed -e 's/cyl//')
+	rootsize=$(($maxsize-2))
+	parted -s /dev/sda unit cyl mkpart primary ext2 0 1
+	parted -s /dev/sda unit cyl mkpartfs primary ext2 1 $rootsize
+	parted -s /dev/sda unit cyl mkpart primary fat32 $rootsize $maxsize
+	parted -s /dev/sda set 1 boot on
+	sfdisk --change-id /dev/sda 1 27 >/dev/null 2>&1
+	sfdisk --change-id /dev/sda 3 88 >/dev/null 2>&1
+	sleep 2
+	sync
+	printf "Installing kernel\n"
+	dd if=$3 of=/dev/sda1 bs=2048 >/dev/null 2>&1
+	sync
+	mount -t ext2 /dev/sda2 /mnt
+fi
+
+if [ $nandinstall -eq 1 ];then
+	printf "Installing kernel\n"
+	mount -t yaffs2 /dev/mtdblock0 /mnt
+	cp $3 /mnt/kernel
+	sync
+	umount /mnt
+	mount -t yaffs2 /dev/mtdblock1 /mnt
+	rm -rf /mnt/* >/dev/null 2>&1
+fi
+
+printf "Extracting install archive\n"
+tar -C /mnt -xzpf $2
+
+chmod 1777 /mnt/tmp
+chmod 4755 /mnt/bin/busybox
+
+printf "Creating device nodes\n"
+mknod -m 666 /mnt/dev/null c 1 3
+mknod -m 622 /mnt/dev/console c 5 1
+mknod -m 666 /mnt/dev/tty c 5 0
+
+umount /mnt
+printf "Successfully installed.\n"
+exit 0

+ 2 - 2
package/cfgfs/Makefile

@@ -8,12 +8,12 @@ PKG_VERSION:=		1.0.6
 PKG_RELEASE:=		5
 PKG_DESCR:=		compressed config filesystem
 PKG_SECTION:=		base
-PKG_TARGET_DEPENDS:=	alix1c alix2d alix2d13 wrap foxboard ag241 rb532
+PKG_TARGET_DEPENDS:=	alix wrap foxboard ag241 rb532
 
 WRKDIST=		${WRKDIR}/${PKG_NAME}-${PKG_VERSION}
 NO_DISTFILES:=		1
 
-CFLINE_CFGFS:= 		select BUSYBOX_COMM\n\tselect BUSYBOX_MD5SUM\n\tselect BUSYBOX_XARGS\n\tselect BUSYBOX_FEATURE_SORT_BIG\n\tdepends on !ADK_TARGET_ROOTFS_NFSROOT
+CFLINE_CFGFS:= 		select BUSYBOX_COMM\n\tselect BUSYBOX_MD5SUM\n\tselect BUSYBOX_XARGS\n\tselect BUSYBOX_FEATURE_SORT_BIG\n\tdepends on !ADK_TARGET_ROOTFS_NFSROOT\n\tdepends on !ADK_TARGET_ROOTFS_YAFFS
 
 include ${TOPDIR}/mk/package.mk
 

+ 1 - 1
package/parted/Makefile

@@ -9,7 +9,7 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		055305bc7bcf472ce38f9abf69a9d94d
 PKG_DESCR:=		GNU parted
 PKG_SECTION:=		admin
-PKG_DEPENDS:=		libuuid libreadline device-mapper
+PKG_DEPENDS:=		libuuid libreadline device-mapper libpthread
 PKG_BUILDDEP+=		e2fsprogs lvm readline
 PKG_URL:=		http://www.gnu.org/software/parted/index.shtml
 PKG_SITES:=		${MASTER_SITE_GNU:=parted/}

+ 1 - 0
target/Config.in

@@ -572,6 +572,7 @@ config ADK_LINUX_MIPS_RB532
 	select ADK_KERNEL_ATA
 	select ADK_KERNEL_BLK_DEV_SD
 	select ADK_KERNEL_SCSI
+	select ADK_KERNEL_EXT2_FS
 	select ADK_TARGET_WITH_MINIPCI
 	select ADK_TARGET_WITH_WATCHDOG
 	help

+ 0 - 14
target/linux/config/Config.in.fs

@@ -177,20 +177,6 @@ config ADK_KPACKAGE_KMOD_XFS_FS
 	  for complete details.  This implementation is on-disk compatible
 	  with the IRIX version of XFS.
 
-#config ADK_KPACKAGE_KMOD_YAFFS_FS
-#	prompt "kmod-fs-yaffs..................... YAFFS1/2 filesystem support"
-#	tristate
-#	default n
-#	select ADK_KERNEL_YAFFS_FS
-#	select ADK_KERNEL_YAFFS_YAFFS1
-#	select ADK_KERNEL_YAFFS_YAFFS2
-#	select ADK_KERNEL_YAFFS_AUTO_YAFFS2
-#	select ADK_KERNEL_YAFFS_SHORT_NAMES_IN_RAM
-#	help
-#	  Support for the YAFFS1 and YAFFS2 filesystems for the rb532 NAND
-#	  internal flash (for example). Say 'yes' here if you want to build
-#	  an initramfs for the Routerboard with access to internal flash.
-#
 config ADK_KPACKAGE_KMOD_FUSE_FS
 	prompt   "kmod-fs-fuse...................... Filesystem in Userspace support"
 	tristate

+ 0 - 26
target/linux/config/Config.in.kernel

@@ -87,29 +87,3 @@ config ADK_KERNEL_NFS_COMMON
 config ADK_KERNEL_SUNRPC
 	boolean
 	default n
-
-#config ADK_KERNEL_YAFFS_FS
-#	tristate
-#	default n
-
-#config ADK_KERNEL_YAFFS_YAFFS1
-#	boolean
-#	default n
-
-#config ADK_KERNEL_YAFFS_YAFFS2
-#	boolean
-#	default n
-
-#config ADK_KERNEL_YAFFS_AUTO_YAFFS2
-#	boolean
-#	default n
-
-#config ADK_KERNEL_YAFFS_CHECKPOINT_RESERVED_BLOCKS
-#	int
-#	default 0
-
-#config ADK_KERNEL_YAFFS_SHORT_NAMES_IN_RAM
-#	boolean
-#	default n
-
-

+ 109 - 109
target/linux/patches/2.6.32/yaffs2.patch

@@ -1,7 +1,7 @@
-diff -Nur linux-2.6.30.orig/fs/Kconfig linux-2.6.30/fs/Kconfig
---- linux-2.6.30.orig/fs/Kconfig	2009-06-10 05:05:27.000000000 +0200
-+++ linux-2.6.30/fs/Kconfig	2009-06-11 09:21:04.000000000 +0200
-@@ -162,6 +162,10 @@
+diff -Nur linux-2.6.32.orig/fs/Kconfig linux-2.6.32/fs/Kconfig
+--- linux-2.6.32.orig/fs/Kconfig	2009-12-03 04:51:21.000000000 +0100
++++ linux-2.6.32/fs/Kconfig	2010-01-30 20:35:00.921899692 +0100
+@@ -174,6 +174,10 @@
  source "fs/befs/Kconfig"
  source "fs/bfs/Kconfig"
  source "fs/efs/Kconfig"
@@ -12,17 +12,17 @@ diff -Nur linux-2.6.30.orig/fs/Kconfig linux-2.6.30/fs/Kconfig
  source "fs/jffs2/Kconfig"
  # UBIFS File system configuration
  source "fs/ubifs/Kconfig"
-diff -Nur linux-2.6.30.orig/fs/Makefile linux-2.6.30/fs/Makefile
---- linux-2.6.30.orig/fs/Makefile	2009-06-10 05:05:27.000000000 +0200
-+++ linux-2.6.30/fs/Makefile	2009-06-11 09:21:31.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/Makefile linux-2.6.32/fs/Makefile
+--- linux-2.6.32.orig/fs/Makefile	2009-12-03 04:51:21.000000000 +0100
++++ linux-2.6.32/fs/Makefile	2010-01-30 20:35:00.933084814 +0100
 @@ -124,3 +124,4 @@
  obj-$(CONFIG_BTRFS_FS)		+= btrfs/
  obj-$(CONFIG_GFS2_FS)           += gfs2/
  obj-$(CONFIG_EXOFS_FS)          += exofs/
 +obj-$(CONFIG_YAFFS_FS)		+= yaffs2/
-diff -Nur linux-2.6.30.orig/fs/Makefile.pre.yaffs linux-2.6.30/fs/Makefile.pre.yaffs
---- linux-2.6.30.orig/fs/Makefile.pre.yaffs	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/Makefile.pre.yaffs	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/Makefile.pre.yaffs linux-2.6.32/fs/Makefile.pre.yaffs
+--- linux-2.6.32.orig/fs/Makefile.pre.yaffs	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/Makefile.pre.yaffs	2010-01-30 20:35:00.983076819 +0100
 @@ -0,0 +1,126 @@
 +#
 +# Makefile for the Linux filesystems.
@@ -150,9 +150,9 @@ diff -Nur linux-2.6.30.orig/fs/Makefile.pre.yaffs linux-2.6.30/fs/Makefile.pre.y
 +obj-$(CONFIG_OCFS2_FS)		+= ocfs2/
 +obj-$(CONFIG_BTRFS_FS)		+= btrfs/
 +obj-$(CONFIG_GFS2_FS)           += gfs2/
-diff -Nur linux-2.6.30.orig/fs/yaffs2/devextras.h linux-2.6.30/fs/yaffs2/devextras.h
---- linux-2.6.30.orig/fs/yaffs2/devextras.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/devextras.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/devextras.h linux-2.6.32/fs/yaffs2/devextras.h
+--- linux-2.6.32.orig/fs/yaffs2/devextras.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/devextras.h	2010-01-30 20:35:01.021829008 +0100
 @@ -0,0 +1,196 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -350,9 +350,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/devextras.h linux-2.6.30/fs/yaffs2/devextr
 +
 +
 +#endif
-diff -Nur linux-2.6.30.orig/fs/yaffs2/Kconfig linux-2.6.30/fs/yaffs2/Kconfig
---- linux-2.6.30.orig/fs/yaffs2/Kconfig	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/Kconfig	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/Kconfig linux-2.6.32/fs/yaffs2/Kconfig
+--- linux-2.6.32.orig/fs/yaffs2/Kconfig	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/Kconfig	2010-01-30 20:35:01.053081300 +0100
 @@ -0,0 +1,156 @@
 +#
 +# YAFFS file system configurations
@@ -510,9 +510,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/Kconfig linux-2.6.30/fs/yaffs2/Kconfig
 +	  but makes look-ups faster.
 +
 +	  If unsure, say Y.
-diff -Nur linux-2.6.30.orig/fs/yaffs2/Makefile linux-2.6.30/fs/yaffs2/Makefile
---- linux-2.6.30.orig/fs/yaffs2/Makefile	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/Makefile	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/Makefile linux-2.6.32/fs/yaffs2/Makefile
+--- linux-2.6.32.orig/fs/yaffs2/Makefile	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/Makefile	2010-01-30 20:35:01.093074881 +0100
 @@ -0,0 +1,10 @@
 +#
 +# Makefile for the linux YAFFS filesystem routines.
@@ -524,9 +524,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/Makefile linux-2.6.30/fs/yaffs2/Makefile
 +yaffs-y += yaffs_packedtags1.o yaffs_packedtags2.o yaffs_nand.o yaffs_qsort.o
 +yaffs-y += yaffs_tagscompat.o yaffs_tagsvalidity.o
 +yaffs-y += yaffs_mtdif.o yaffs_mtdif1.o yaffs_mtdif2.o
-diff -Nur linux-2.6.30.orig/fs/yaffs2/moduleconfig.h linux-2.6.30/fs/yaffs2/moduleconfig.h
---- linux-2.6.30.orig/fs/yaffs2/moduleconfig.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/moduleconfig.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/moduleconfig.h linux-2.6.32/fs/yaffs2/moduleconfig.h
+--- linux-2.6.32.orig/fs/yaffs2/moduleconfig.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/moduleconfig.h	2010-01-30 20:35:01.131828051 +0100
 @@ -0,0 +1,65 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -593,9 +593,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/moduleconfig.h linux-2.6.30/fs/yaffs2/modu
 +#endif /* YAFFS_OUT_OF_TREE */
 +
 +#endif /* __YAFFS_CONFIG_H__ */
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_checkptrw.c linux-2.6.30/fs/yaffs2/yaffs_checkptrw.c
---- linux-2.6.30.orig/fs/yaffs2/yaffs_checkptrw.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_checkptrw.c	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_checkptrw.c linux-2.6.32/fs/yaffs2/yaffs_checkptrw.c
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_checkptrw.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_checkptrw.c	2010-01-30 20:35:01.171829690 +0100
 @@ -0,0 +1,394 @@
 +/*
 + * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
@@ -991,9 +991,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_checkptrw.c linux-2.6.30/fs/yaffs2/y
 +
 +
 +
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_checkptrw.h linux-2.6.30/fs/yaffs2/yaffs_checkptrw.h
---- linux-2.6.30.orig/fs/yaffs2/yaffs_checkptrw.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_checkptrw.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_checkptrw.h linux-2.6.32/fs/yaffs2/yaffs_checkptrw.h
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_checkptrw.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_checkptrw.h	2010-01-30 20:35:01.213084831 +0100
 @@ -0,0 +1,35 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -1030,9 +1030,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_checkptrw.h linux-2.6.30/fs/yaffs2/y
 +
 +#endif
 +
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_ecc.c linux-2.6.30/fs/yaffs2/yaffs_ecc.c
---- linux-2.6.30.orig/fs/yaffs2/yaffs_ecc.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_ecc.c	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_ecc.c linux-2.6.32/fs/yaffs2/yaffs_ecc.c
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_ecc.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_ecc.c	2010-01-30 20:35:01.251829837 +0100
 @@ -0,0 +1,326 @@
 +/*
 + * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
@@ -1360,9 +1360,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_ecc.c linux-2.6.30/fs/yaffs2/yaffs_e
 +
 +	return -1;
 +}
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_ecc.h linux-2.6.30/fs/yaffs2/yaffs_ecc.h
---- linux-2.6.30.orig/fs/yaffs2/yaffs_ecc.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_ecc.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_ecc.h linux-2.6.32/fs/yaffs2/yaffs_ecc.h
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_ecc.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_ecc.h	2010-01-30 20:35:01.292693842 +0100
 @@ -0,0 +1,44 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -1408,9 +1408,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_ecc.h linux-2.6.30/fs/yaffs2/yaffs_e
 +			yaffs_ECCOther *read_ecc,
 +			const yaffs_ECCOther *test_ecc);
 +#endif
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_fs.c linux-2.6.30/fs/yaffs2/yaffs_fs.c
---- linux-2.6.30.orig/fs/yaffs2/yaffs_fs.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_fs.c	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_fs.c linux-2.6.32/fs/yaffs2/yaffs_fs.c
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_fs.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_fs.c	2010-01-30 20:35:01.331845579 +0100
 @@ -0,0 +1,2529 @@
 +/*
 + * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
@@ -3941,9 +3941,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_fs.c linux-2.6.30/fs/yaffs2/yaffs_fs
 +MODULE_DESCRIPTION("YAFFS2 - a NAND specific flash file system");
 +MODULE_AUTHOR("Charles Manning, Aleph One Ltd., 2002-2006");
 +MODULE_LICENSE("GPL");
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_getblockinfo.h linux-2.6.30/fs/yaffs2/yaffs_getblockinfo.h
---- linux-2.6.30.orig/fs/yaffs2/yaffs_getblockinfo.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_getblockinfo.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_getblockinfo.h linux-2.6.32/fs/yaffs2/yaffs_getblockinfo.h
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_getblockinfo.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_getblockinfo.h	2010-01-30 20:35:01.373074589 +0100
 @@ -0,0 +1,34 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -3979,9 +3979,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_getblockinfo.h linux-2.6.30/fs/yaffs
 +}
 +
 +#endif
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_guts.c linux-2.6.30/fs/yaffs2/yaffs_guts.c
---- linux-2.6.30.orig/fs/yaffs2/yaffs_guts.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_guts.c	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_guts.c linux-2.6.32/fs/yaffs2/yaffs_guts.c
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_guts.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_guts.c	2010-01-30 20:35:01.393075518 +0100
 @@ -0,0 +1,7552 @@
 +/*
 + * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
@@ -11535,9 +11535,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_guts.c linux-2.6.30/fs/yaffs2/yaffs_
 +#endif
 +	return YAFFS_OK;
 +}
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_guts.h linux-2.6.30/fs/yaffs2/yaffs_guts.h
---- linux-2.6.30.orig/fs/yaffs2/yaffs_guts.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_guts.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_guts.h linux-2.6.32/fs/yaffs2/yaffs_guts.h
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_guts.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_guts.h	2010-01-30 20:35:01.441990129 +0100
 @@ -0,0 +1,904 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -12443,9 +12443,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_guts.h linux-2.6.30/fs/yaffs2/yaffs_
 +void yaffs_ReleaseTempBuffer(yaffs_Device *dev, __u8 *buffer, int lineNo);
 +
 +#endif
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffsinterface.h linux-2.6.30/fs/yaffs2/yaffsinterface.h
---- linux-2.6.30.orig/fs/yaffs2/yaffsinterface.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffsinterface.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffsinterface.h linux-2.6.32/fs/yaffs2/yaffsinterface.h
+--- linux-2.6.32.orig/fs/yaffs2/yaffsinterface.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffsinterface.h	2010-01-30 20:35:01.492020092 +0100
 @@ -0,0 +1,21 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -12468,9 +12468,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffsinterface.h linux-2.6.30/fs/yaffs2/ya
 +int yaffs_Initialise(unsigned nBlocks);
 +
 +#endif
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif1.c linux-2.6.30/fs/yaffs2/yaffs_mtdif1.c
---- linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif1.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_mtdif1.c	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_mtdif1.c linux-2.6.32/fs/yaffs2/yaffs_mtdif1.c
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_mtdif1.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_mtdif1.c	2010-01-30 20:35:01.534033438 +0100
 @@ -0,0 +1,365 @@
 +/*
 + * YAFFS: Yet another FFS. A NAND-flash specific file system.
@@ -12837,9 +12837,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif1.c linux-2.6.30/fs/yaffs2/yaff
 +}
 +
 +#endif /*MTD_VERSION*/
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif1.h linux-2.6.30/fs/yaffs2/yaffs_mtdif1.h
---- linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif1.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_mtdif1.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_mtdif1.h linux-2.6.32/fs/yaffs2/yaffs_mtdif1.h
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_mtdif1.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_mtdif1.h	2010-01-30 20:35:01.572068025 +0100
 @@ -0,0 +1,28 @@
 +/*
 + * YAFFS: Yet another Flash File System. A NAND-flash specific file system.
@@ -12869,9 +12869,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif1.h linux-2.6.30/fs/yaffs2/yaff
 +	yaffs_BlockState *state, __u32 *sequenceNumber);
 +
 +#endif
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif2.c linux-2.6.30/fs/yaffs2/yaffs_mtdif2.c
---- linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif2.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_mtdif2.c	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_mtdif2.c linux-2.6.32/fs/yaffs2/yaffs_mtdif2.c
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_mtdif2.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_mtdif2.c	2010-01-30 20:35:01.611828597 +0100
 @@ -0,0 +1,246 @@
 +/*
 + * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
@@ -13119,9 +13119,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif2.c linux-2.6.30/fs/yaffs2/yaff
 +		return YAFFS_FAIL;
 +}
 +
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif2.h linux-2.6.30/fs/yaffs2/yaffs_mtdif2.h
---- linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif2.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_mtdif2.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_mtdif2.h linux-2.6.32/fs/yaffs2/yaffs_mtdif2.h
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_mtdif2.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_mtdif2.h	2010-01-30 20:35:01.663084824 +0100
 @@ -0,0 +1,29 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -13152,9 +13152,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif2.h linux-2.6.30/fs/yaffs2/yaff
 +			yaffs_BlockState *state, __u32 *sequenceNumber);
 +
 +#endif
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif.c linux-2.6.30/fs/yaffs2/yaffs_mtdif.c
---- linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_mtdif.c	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_mtdif.c linux-2.6.32/fs/yaffs2/yaffs_mtdif.c
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_mtdif.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_mtdif.c	2010-01-30 20:35:01.701828807 +0100
 @@ -0,0 +1,241 @@
 +/*
 + * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
@@ -13397,9 +13397,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif.c linux-2.6.30/fs/yaffs2/yaffs
 +	return YAFFS_OK;
 +}
 +
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif.h linux-2.6.30/fs/yaffs2/yaffs_mtdif.h
---- linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_mtdif.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_mtdif.h linux-2.6.32/fs/yaffs2/yaffs_mtdif.h
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_mtdif.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_mtdif.h	2010-01-30 20:35:01.733074983 +0100
 @@ -0,0 +1,32 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -13433,9 +13433,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_mtdif.h linux-2.6.30/fs/yaffs2/yaffs
 +int nandmtd_EraseBlockInNAND(yaffs_Device *dev, int blockNumber);
 +int nandmtd_InitialiseNAND(yaffs_Device *dev);
 +#endif
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_nand.c linux-2.6.30/fs/yaffs2/yaffs_nand.c
---- linux-2.6.30.orig/fs/yaffs2/yaffs_nand.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_nand.c	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_nand.c linux-2.6.32/fs/yaffs2/yaffs_nand.c
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_nand.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_nand.c	2010-01-30 20:35:01.771938289 +0100
 @@ -0,0 +1,135 @@
 +/*
 + * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
@@ -13572,9 +13572,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_nand.c linux-2.6.30/fs/yaffs2/yaffs_
 +
 +
 +
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_nandemul2k.h linux-2.6.30/fs/yaffs2/yaffs_nandemul2k.h
---- linux-2.6.30.orig/fs/yaffs2/yaffs_nandemul2k.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_nandemul2k.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_nandemul2k.h linux-2.6.32/fs/yaffs2/yaffs_nandemul2k.h
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_nandemul2k.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_nandemul2k.h	2010-01-30 20:35:01.811826092 +0100
 @@ -0,0 +1,39 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -13615,9 +13615,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_nandemul2k.h linux-2.6.30/fs/yaffs2/
 +int nandemul2k_GetNumberOfBlocks(void);
 +
 +#endif
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_nand.h linux-2.6.30/fs/yaffs2/yaffs_nand.h
---- linux-2.6.30.orig/fs/yaffs2/yaffs_nand.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_nand.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_nand.h linux-2.6.32/fs/yaffs2/yaffs_nand.h
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_nand.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_nand.h	2010-01-30 20:35:01.851862979 +0100
 @@ -0,0 +1,44 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -13663,9 +13663,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_nand.h linux-2.6.30/fs/yaffs2/yaffs_
 +
 +#endif
 +
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_packedtags1.c linux-2.6.30/fs/yaffs2/yaffs_packedtags1.c
---- linux-2.6.30.orig/fs/yaffs2/yaffs_packedtags1.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_packedtags1.c	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_packedtags1.c linux-2.6.32/fs/yaffs2/yaffs_packedtags1.c
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_packedtags1.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_packedtags1.c	2010-01-30 20:35:01.902201298 +0100
 @@ -0,0 +1,50 @@
 +/*
 + * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
@@ -13717,9 +13717,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_packedtags1.c linux-2.6.30/fs/yaffs2
 +		memset(t, 0, sizeof(yaffs_ExtendedTags));
 +	}
 +}
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_packedtags1.h linux-2.6.30/fs/yaffs2/yaffs_packedtags1.h
---- linux-2.6.30.orig/fs/yaffs2/yaffs_packedtags1.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_packedtags1.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_packedtags1.h linux-2.6.32/fs/yaffs2/yaffs_packedtags1.h
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_packedtags1.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_packedtags1.h	2010-01-30 20:35:01.951826961 +0100
 @@ -0,0 +1,37 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -13758,9 +13758,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_packedtags1.h linux-2.6.30/fs/yaffs2
 +void yaffs_PackTags1(yaffs_PackedTags1 *pt, const yaffs_ExtendedTags *t);
 +void yaffs_UnpackTags1(yaffs_ExtendedTags *t, const yaffs_PackedTags1 *pt);
 +#endif
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_packedtags2.c linux-2.6.30/fs/yaffs2/yaffs_packedtags2.c
---- linux-2.6.30.orig/fs/yaffs2/yaffs_packedtags2.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_packedtags2.c	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_packedtags2.c linux-2.6.32/fs/yaffs2/yaffs_packedtags2.c
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_packedtags2.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_packedtags2.c	2010-01-30 20:35:01.991823846 +0100
 @@ -0,0 +1,206 @@
 +/*
 + * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
@@ -13968,9 +13968,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_packedtags2.c linux-2.6.30/fs/yaffs2
 +
 +}
 +
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_packedtags2.h linux-2.6.30/fs/yaffs2/yaffs_packedtags2.h
---- linux-2.6.30.orig/fs/yaffs2/yaffs_packedtags2.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_packedtags2.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_packedtags2.h linux-2.6.32/fs/yaffs2/yaffs_packedtags2.h
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_packedtags2.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_packedtags2.h	2010-01-30 20:35:02.031973375 +0100
 @@ -0,0 +1,43 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -14015,9 +14015,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_packedtags2.h linux-2.6.30/fs/yaffs2
 +void yaffs_PackTags2TagsPart(yaffs_PackedTags2TagsPart *pt, const yaffs_ExtendedTags *t);
 +void yaffs_UnpackTags2TagsPart(yaffs_ExtendedTags *t, yaffs_PackedTags2TagsPart *pt);
 +#endif
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_qsort.c linux-2.6.30/fs/yaffs2/yaffs_qsort.c
---- linux-2.6.30.orig/fs/yaffs2/yaffs_qsort.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_qsort.c	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_qsort.c linux-2.6.32/fs/yaffs2/yaffs_qsort.c
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_qsort.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_qsort.c	2010-01-30 20:35:02.071829765 +0100
 @@ -0,0 +1,163 @@
 +/*
 + * Copyright (c) 1992, 1993
@@ -14182,9 +14182,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_qsort.c linux-2.6.30/fs/yaffs2/yaffs
 +	}
 +/*		yaffs_qsort(pn - r, r / es, es, cmp);*/
 +}
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_qsort.h linux-2.6.30/fs/yaffs2/yaffs_qsort.h
---- linux-2.6.30.orig/fs/yaffs2/yaffs_qsort.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_qsort.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_qsort.h linux-2.6.32/fs/yaffs2/yaffs_qsort.h
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_qsort.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_qsort.h	2010-01-30 20:35:02.131826281 +0100
 @@ -0,0 +1,23 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -14209,9 +14209,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_qsort.h linux-2.6.30/fs/yaffs2/yaffs
 +			int (*cmp)(const void *, const void *));
 +
 +#endif
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_tagscompat.c linux-2.6.30/fs/yaffs2/yaffs_tagscompat.c
---- linux-2.6.30.orig/fs/yaffs2/yaffs_tagscompat.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_tagscompat.c	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_tagscompat.c linux-2.6.32/fs/yaffs2/yaffs_tagscompat.c
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_tagscompat.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_tagscompat.c	2010-01-30 20:35:02.173084965 +0100
 @@ -0,0 +1,541 @@
 +/*
 + * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
@@ -14754,9 +14754,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_tagscompat.c linux-2.6.30/fs/yaffs2/
 +
 +	return YAFFS_OK;
 +}
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_tagscompat.h linux-2.6.30/fs/yaffs2/yaffs_tagscompat.h
---- linux-2.6.30.orig/fs/yaffs2/yaffs_tagscompat.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_tagscompat.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_tagscompat.h linux-2.6.32/fs/yaffs2/yaffs_tagscompat.h
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_tagscompat.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_tagscompat.h	2010-01-30 20:35:02.213084840 +0100
 @@ -0,0 +1,39 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -14797,9 +14797,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_tagscompat.h linux-2.6.30/fs/yaffs2/
 +int yaffs_CountBits(__u8 byte);
 +
 +#endif
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_tagsvalidity.c linux-2.6.30/fs/yaffs2/yaffs_tagsvalidity.c
---- linux-2.6.30.orig/fs/yaffs2/yaffs_tagsvalidity.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_tagsvalidity.c	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_tagsvalidity.c linux-2.6.32/fs/yaffs2/yaffs_tagsvalidity.c
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_tagsvalidity.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_tagsvalidity.c	2010-01-30 20:35:02.251827798 +0100
 @@ -0,0 +1,28 @@
 +/*
 + * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
@@ -14829,9 +14829,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_tagsvalidity.c linux-2.6.30/fs/yaffs
 +		tags->validMarker1 == 0x55555555);
 +
 +}
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_tagsvalidity.h linux-2.6.30/fs/yaffs2/yaffs_tagsvalidity.h
---- linux-2.6.30.orig/fs/yaffs2/yaffs_tagsvalidity.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yaffs_tagsvalidity.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yaffs_tagsvalidity.h linux-2.6.32/fs/yaffs2/yaffs_tagsvalidity.h
+--- linux-2.6.32.orig/fs/yaffs2/yaffs_tagsvalidity.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yaffs_tagsvalidity.h	2010-01-30 20:35:02.292761803 +0100
 @@ -0,0 +1,24 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
@@ -14857,9 +14857,9 @@ diff -Nur linux-2.6.30.orig/fs/yaffs2/yaffs_tagsvalidity.h linux-2.6.30/fs/yaffs
 +void yaffs_InitialiseTags(yaffs_ExtendedTags *tags);
 +int yaffs_ValidateTags(yaffs_ExtendedTags *tags);
 +#endif
-diff -Nur linux-2.6.30.orig/fs/yaffs2/yportenv.h linux-2.6.30/fs/yaffs2/yportenv.h
---- linux-2.6.30.orig/fs/yaffs2/yportenv.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30/fs/yaffs2/yportenv.h	2009-06-11 09:21:04.000000000 +0200
+diff -Nur linux-2.6.32.orig/fs/yaffs2/yportenv.h linux-2.6.32/fs/yaffs2/yportenv.h
+--- linux-2.6.32.orig/fs/yaffs2/yportenv.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32/fs/yaffs2/yportenv.h	2010-01-30 20:35:02.332076176 +0100
 @@ -0,0 +1,203 @@
 +/*
 + * YAFFS: Yet another Flash File System . A NAND-flash specific file system.

+ 1 - 2
target/rb532/TODO

@@ -1,2 +1 @@
-- enable watchdog
-- test yaffs2 support
+- implement cfgfs for NAND/YAFFS2 rootfs

+ 99 - 2
target/rb532/kernel.config

@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
 # Linux kernel version: 2.6.32
-# Sat Jan 30 11:43:58 2010
+# Sat Jan 30 21:07:56 2010
 #
 CONFIG_MIPS=y
 
@@ -384,7 +384,93 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
 # CONFIG_FW_LOADER is not set
 # CONFIG_SYS_HYPERVISOR is not set
 # CONFIG_CONNECTOR is not set
-# CONFIG_MTD is not set
+CONFIG_MTD=y
+# CONFIG_MTD_DEBUG is not set
+# CONFIG_MTD_TESTS is not set
+# CONFIG_MTD_CONCAT is not set
+CONFIG_MTD_PARTITIONS=y
+# CONFIG_MTD_ROOTFS_ROOT_DEV is not set
+# CONFIG_MTD_REDBOOT_PARTS is not set
+# CONFIG_MTD_CMDLINE_PARTS is not set
+# CONFIG_MTD_AR7_PARTS is not set
+
+#
+# User Modules And Translation Layers
+#
+# CONFIG_MTD_CHAR is not set
+CONFIG_MTD_BLKDEVS=y
+CONFIG_MTD_BLOCK=y
+# CONFIG_FTL is not set
+# CONFIG_NFTL is not set
+# CONFIG_INFTL is not set
+# CONFIG_RFD_FTL is not set
+# CONFIG_SSFDC is not set
+# CONFIG_MTD_OOPS is not set
+
+#
+# RAM/ROM/Flash chip drivers
+#
+# CONFIG_MTD_CFI is not set
+# CONFIG_MTD_JEDECPROBE is not set
+# CONFIG_MTD_CFI_NOSWAP is not set
+# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set
+# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+# CONFIG_MTD_CFI_I4 is not set
+# CONFIG_MTD_CFI_I8 is not set
+# CONFIG_MTD_RAM is not set
+# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_ABSENT is not set
+
+#
+# Mapping drivers for chip access
+#
+# CONFIG_MTD_COMPLEX_MAPPINGS is not set
+# CONFIG_MTD_INTEL_VR_NOR is not set
+# CONFIG_MTD_PLATRAM is not set
+
+#
+# Self-contained MTD device drivers
+#
+# CONFIG_MTD_PMC551 is not set
+# CONFIG_MTD_SLRAM is not set
+# CONFIG_MTD_PHRAM is not set
+# CONFIG_MTD_MTDRAM is not set
+# CONFIG_MTD_BLOCK2MTD is not set
+
+#
+# Disk-On-Chip Device Drivers
+#
+# CONFIG_MTD_DOC2000 is not set
+# CONFIG_MTD_DOC2001 is not set
+# CONFIG_MTD_DOC2001PLUS is not set
+CONFIG_MTD_NAND=y
+# CONFIG_MTD_NAND_VERIFY_WRITE is not set
+# CONFIG_MTD_NAND_ECC_SMC is not set
+# CONFIG_MTD_NAND_MUSEUM_IDS is not set
+CONFIG_MTD_NAND_IDS=y
+# CONFIG_MTD_NAND_DISKONCHIP is not set
+# CONFIG_MTD_NAND_CAFE is not set
+# CONFIG_MTD_NAND_NANDSIM is not set
+CONFIG_MTD_NAND_PLATFORM=y
+# CONFIG_MTD_ONENAND is not set
+
+#
+# LPDDR flash memory drivers
+#
+# CONFIG_MTD_LPDDR is not set
+
+#
+# UBI - Unsorted block images
+#
+# CONFIG_MTD_UBI is not set
 # CONFIG_PARPORT is not set
 CONFIG_BLK_DEV=y
 # CONFIG_BLK_CPQ_DA is not set
@@ -888,6 +974,17 @@ CONFIG_MISC_FILESYSTEMS=y
 # CONFIG_BEFS_FS is not set
 # CONFIG_BFS_FS is not set
 # CONFIG_EFS_FS is not set
+CONFIG_YAFFS_FS=y
+CONFIG_YAFFS_YAFFS1=y
+# CONFIG_YAFFS_9BYTE_TAGS is not set
+# CONFIG_YAFFS_DOES_ECC is not set
+CONFIG_YAFFS_YAFFS2=y
+CONFIG_YAFFS_AUTO_YAFFS2=y
+# CONFIG_YAFFS_DISABLE_LAZY_LOAD is not set
+# CONFIG_YAFFS_DISABLE_WIDE_TNODES is not set
+# CONFIG_YAFFS_ALWAYS_CHECK_CHUNK_ERASED is not set
+CONFIG_YAFFS_SHORT_NAMES_IN_RAM=y
+# CONFIG_JFFS2_FS is not set
 # CONFIG_CRAMFS is not set
 # CONFIG_SQUASHFS is not set
 # CONFIG_VXFS_FS is not set