Permalink
Browse files

auto import from //depot/cupcake/@135843

  • Loading branch information...
1 parent c710b14 commit 40c4004d07a37a9b140067f893930ce4436b9346 The Android Open Source Project committed Mar 4, 2009
Showing with 20,810 additions and 0 deletions.
  1. +21 −0 Android.mk
  2. 0 MODULE_LICENSE_GPL
  3. +146 −0 yaffs2/Kconfig
  4. +10 −0 yaffs2/Makefile
  5. +23 −0 yaffs2/Makefile.module
  6. +269 −0 yaffs2/devextras.h
  7. +60 −0 yaffs2/direct/Makefile
  8. +1,999 −0 yaffs2/direct/dtest.c
  9. +217 −0 yaffs2/direct/yaffs_fileem.c
  10. +373 −0 yaffs2/direct/yaffs_fileem2k.c
  11. +49 −0 yaffs2/direct/yaffs_fileem2k.h
  12. +233 −0 yaffs2/direct/yaffs_flashif.c
  13. +35 −0 yaffs2/direct/yaffs_flashif.h
  14. +232 −0 yaffs2/direct/yaffs_ramdisk.c
  15. +32 −0 yaffs2/direct/yaffs_ramdisk.h
  16. +362 −0 yaffs2/direct/yaffs_ramem2k.c
  17. +122 −0 yaffs2/direct/yaffscfg.c
  18. +30 −0 yaffs2/direct/yaffscfg.h
  19. +179 −0 yaffs2/direct/yaffscfg2k.c
  20. +1,501 −0 yaffs2/direct/yaffsfs.c
  21. +217 −0 yaffs2/direct/yaffsfs.h
  22. +84 −0 yaffs2/direct/ydirectenv.h
  23. +32 −0 yaffs2/moduleconfig.h
  24. +33 −0 yaffs2/mtdemul/Makefile
  25. +711 −0 yaffs2/mtdemul/nandemul2k.c
  26. +109 −0 yaffs2/patch-ker.sh
  27. +54 −0 yaffs2/utils/Makefile
  28. +545 −0 yaffs2/utils/mkyaffs2image.c
  29. +593 −0 yaffs2/utils/mkyaffsimage.c
  30. +366 −0 yaffs2/yaffs_checkptrw.c
  31. +18 −0 yaffs2/yaffs_checkptrw.h
  32. +333 −0 yaffs2/yaffs_ecc.c
  33. +44 −0 yaffs2/yaffs_ecc.h
  34. +2,126 −0 yaffs2/yaffs_fs.c
  35. +6,637 −0 yaffs2/yaffs_guts.c
  36. +893 −0 yaffs2/yaffs_guts.h
  37. +241 −0 yaffs2/yaffs_mtdif.c
  38. +31 −0 yaffs2/yaffs_mtdif.h
  39. +313 −0 yaffs2/yaffs_mtdif2.c
  40. +29 −0 yaffs2/yaffs_mtdif2.h
  41. +138 −0 yaffs2/yaffs_nand.c
  42. +43 −0 yaffs2/yaffs_nand.h
  43. +42 −0 yaffs2/yaffs_nandemul2k.h
  44. +39 −0 yaffs2/yaffs_packedtags1.c
  45. +22 −0 yaffs2/yaffs_packedtags1.h
  46. +188 −0 yaffs2/yaffs_packedtags2.c
  47. +23 −0 yaffs2/yaffs_packedtags2.h
  48. +156 −0 yaffs2/yaffs_qsort.c
  49. +41 −0 yaffs2/yaffs_qsort.h
  50. +532 −0 yaffs2/yaffs_tagscompat.c
  51. +40 −0 yaffs2/yaffs_tagscompat.h
  52. +31 −0 yaffs2/yaffs_tagsvalidity.c
  53. +25 −0 yaffs2/yaffs_tagsvalidity.h
  54. +23 −0 yaffs2/yaffsinterface.h
  55. +165 −0 yaffs2/yportenv.h
View
@@ -0,0 +1,21 @@
+# Copyright 2005 The Android Open Source Project
+
+LOCAL_PATH:= $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := \
+ yaffs2/utils/mkyaffs2image.c \
+ yaffs2/yaffs_packedtags2.c \
+ yaffs2/yaffs_tagsvalidity.c
+
+LOCAL_CFLAGS = -O2 -Wall -DCONFIG_YAFFS_UTIL
+LOCAL_CFLAGS+= -Wshadow -Wpointer-arith -Wwrite-strings -Wstrict-prototypes -Wmissing-declarations
+LOCAL_CFLAGS+= -Wmissing-prototypes -Wredundant-decls -Wnested-externs -Winline
+
+LOCAL_C_INCLUDES += $(LOCAL_PATH)/yaffs2
+
+LOCAL_MODULE := mkyaffs2image
+
+include $(BUILD_HOST_EXECUTABLE)
+
+$(call dist-for-goals,droid,$(LOCAL_BUILT_MODULE))
View
No changes.
View
@@ -0,0 +1,146 @@
+#
+# YAFFS file system configurations
+#
+
+config YAFFS_FS
+ tristate "YAFFS2 file system support"
+ default n
+ depends on MTD
+ select YAFFS_YAFFS1
+ select YAFFS_YAFFS2
+ help
+ YAFFS2, or Yet Another Flash Filing System, is a filing system
+ optimised for NAND Flash chips.
+
+ To compile the YAFFS2 file system support as a module, choose M here:
+ the module will be called yaffs2.
+
+ If unsure, say N.
+
+ Further information on YAFFS2 is available at
+ <http://www.aleph1.co.uk/yaffs/>.
+
+config YAFFS_YAFFS1
+ bool "512 byte / page devices"
+ depends on YAFFS_FS
+ default y
+ help
+ Enable YAFFS1 support -- yaffs for 512 byte / page devices
+
+ If unsure, say Y.
+
+config YAFFS_DOES_ECC
+ bool "Lets Yaffs do its own ECC"
+ depends on YAFFS_FS && YAFFS_YAFFS1
+ default n
+ help
+ This enables Yaffs to use its own ECC functions instead of using
+ the ones from the generic MTD-NAND driver.
+
+ If unsure, say N.
+
+config YAFFS_ECC_WRONG_ORDER
+ bool "Use the same ecc byte order as Steven Hill's nand_ecc.c"
+ depends on YAFFS_FS && YAFFS_DOES_ECC
+ default n
+ help
+ This makes yaffs_ecc.c use the same ecc byte order as
+ Steven Hill's nand_ecc.c. If not set, then you get the
+ same ecc byte order as SmartMedia.
+
+ If unsure, say N.
+
+config YAFFS_YAFFS2
+ bool "2048 byte (or larger) / page devices"
+ depends on YAFFS_FS
+ default y
+ help
+ Enable YAFFS2 support -- yaffs for >= 2048 byte / page larger devices
+
+ If unsure, say Y.
+
+config YAFFS_AUTO_YAFFS2
+ bool "Autoselect yaffs2 format"
+ depends on YAFFS_YAFFS2
+ default y
+ help
+ Without this, you need to explicitely use yaffs2 as the file
+ system type. With this, you can say "yaffs" and yaffs or yaffs2
+ will be used depending on the device page size.
+
+ If unsure, say Y.
+
+config YAFFS_DISABLE_LAZY_LOAD
+ bool "Disable lazy loading"
+ depends on YAFFS_YAFFS2
+ default n
+ help
+ "Lazy loading" defers loading file details until they are
+ required. This saves mount time, but makes the first look-up
+ a bit longer.
+
+ Lazy loading will only happen if enabled by this option being 'n'
+ and if the appropriate tags are available, else yaffs2 will
+ automatically fall back to immediate loading and do the right
+ thing.
+
+ Lazy laoding will be required by checkpointing.
+
+ Setting this to 'y' will disable lazy loading.
+
+ If unsure, say N.
+
+config YAFFS_DISABLE_WIDE_TNODES
+ bool "Turn off wide tnodes"
+ depends on YAFFS_FS
+ default n
+ help
+ Wide tnodes are only used for large NAND arrays (>=32MB for
+ 512-byte page devices and >=128MB for 2k page devices). They use
+ slightly more RAM but are faster since they eliminate chunk group
+ searching.
+
+ Setting this to 'y' will force tnode width to 16 bits and make
+ large arrays slower.
+
+ If unsure, say N.
+
+config YAFFS_ALWAYS_CHECK_CHUNK_ERASED
+ bool "Force chunk erase check"
+ depends on YAFFS_FS
+ default n
+ help
+ Normally YAFFS only checks chunks before writing until an erased
+ chunk is found. This helps to detect any partially written chunks
+ that might have happened due to power loss.
+
+ Enabling this forces on the test that chunks are erased in flash
+ before writing to them. This takes more time but is potentially a
+ bit more secure.
+
+ Suggest setting Y during development and ironing out driver issues
+ etc. Suggest setting to N if you want faster writing.
+
+ If unsure, say Y.
+
+config YAFFS_SHORT_NAMES_IN_RAM
+ bool "Cache short names in RAM"
+ depends on YAFFS_FS
+ default y
+ help
+ If this config is set, then short names are stored with the
+ yaffs_Object. This costs an extra 16 bytes of RAM per object,
+ but makes look-ups faster.
+
+ If unsure, say Y.
+
+config YAFFS_ERASE_MOUNT_OPTION
+ bool "Erase device if erase is passed as the mount option"
+ depends on YAFFS_FS
+ default n
+ help
+ If this config is set, then passing erase as the mount option
+ will erase the MTD device before mounting the filesystem.
+
+ If unsure, say N.
+
View
@@ -0,0 +1,10 @@
+#
+# Makefile for the linux YAFFS filesystem routines.
+#
+
+obj-$(CONFIG_YAFFS_FS) += yaffs.o
+
+yaffs-y := yaffs_ecc.o yaffs_fs.o yaffs_guts.o yaffs_checkptrw.o
+yaffs-y += yaffs_packedtags2.o yaffs_nand.o yaffs_qsort.o
+yaffs-y += yaffs_tagscompat.o yaffs_tagsvalidity.o
+yaffs-y += yaffs_mtdif.o yaffs_mtdif2.o
@@ -0,0 +1,23 @@
+ifneq ($(KERNELRELEASE),)
+ EXTRA_CFLAGS += -DYAFFS_OUT_OF_TREE
+
+ obj-m := yaffs2.o
+
+ yaffs2-objs := yaffs_mtdif.o yaffs_mtdif2.o
+ yaffs2-objs += yaffs_ecc.o yaffs_fs.o yaffs_guts.o
+ yaffs2-objs += yaffs_packedtags2.o
+ yaffs2-objs += yaffs_tagscompat.o yaffs_tagsvalidity.o
+
+else
+ KERNELDIR ?= /lib/modules/$(shell uname -r)/build
+ PWD := $(shell pwd)
+
+modules default:
+ $(MAKE) -C $(KERNELDIR) M=$(PWD) modules
+
+mi modules_install:
+ $(MAKE) -C $(KERNELDIR) M=$(PWD) modules_install
+
+clean:
+ $(MAKE) -C $(KERNELDIR) M=$(PWD) clean
+endif
Oops, something went wrong. Retry.

0 comments on commit 40c4004

Please sign in to comment.