mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-30 18:47:06 +00:00
da1bb88a2b
SVN-Revision: 21952
176 lines
5.3 KiB
Plaintext
176 lines
5.3 KiB
Plaintext
#
|
|
# 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
|
|
|
|
Not needed for 2K-page devices.
|
|
|
|
If unsure, say Y.
|
|
|
|
config YAFFS_9BYTE_TAGS
|
|
bool "Use older-style on-NAND data format with pageStatus byte"
|
|
depends on YAFFS_YAFFS1
|
|
default n
|
|
help
|
|
|
|
Older-style on-NAND data format has a "pageStatus" byte to record
|
|
chunk/page state. This byte is zero when the page is discarded.
|
|
Choose this option if you have existing on-NAND data using this
|
|
format that you need to continue to support. New data written
|
|
also uses the older-style format. Note: Use of this option
|
|
generally requires that MTD's oob layout be adjusted to use the
|
|
older-style format. See notes on tags formats and MTD versions.
|
|
|
|
If unsure, say N.
|
|
|
|
config YAFFS_DOES_ECC
|
|
bool "Lets Yaffs do its own ECC"
|
|
depends on YAFFS_FS && YAFFS_YAFFS1 && !YAFFS_9BYTE_TAGS
|
|
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 && !YAFFS_9BYTE_TAGS
|
|
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 >= 2K bytes per page 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 (yaffs on
|
|
512-byte page devices, yaffs2 on 2K page devices).
|
|
|
|
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_CHECKPOINT_RESERVED_BLOCKS
|
|
int "Reserved blocks for checkpointing"
|
|
depends on YAFFS_YAFFS2
|
|
default 10
|
|
help
|
|
Give the number of Blocks to reserve for checkpointing.
|
|
Checkpointing saves the state at unmount so that mounting is
|
|
much faster as a scan of all the flash to regenerate this state
|
|
is not needed. These Blocks are reserved per partition, so if
|
|
you have very small partitions the default (10) may be a mess
|
|
for you. You can set this value to 0, but that does not mean
|
|
checkpointing is disabled at all. There only won't be any
|
|
specially reserved blocks for checkpointing, so if there is
|
|
enough free space on the filesystem, it will be used for
|
|
checkpointing.
|
|
|
|
If unsure, leave at default (10), but don't wonder if there are
|
|
always 2MB used on your large page device partition (10 x 2k
|
|
pagesize). When using small partitions or when being very small
|
|
on space, you probably want to set this to zero.
|
|
|
|
config YAFFS_DISABLE_WIDE_TNODES
|
|
bool "Turn off wide tnodes"
|
|
depends on YAFFS_FS
|
|
default n
|
|
help
|
|
Wide tnodes are only used for 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 save
|
|
memory but 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.
|