User's Manual
© SENSITECH INC. CONFIDENTIAL – CONTROLLED DOCUMENT
Page 79 of 83
A Carrier Corp. Company
PART NUMBER T82002163
REV A
YAFFS (Yet Another Flash File System)
8.1 YAFFS Overview
The acronym YAFFS stands for the phrase "Yet Another Flash Filing System." YAFFS was developed by a
company named Aleph One Limited and incorporated by Logic Product Development into the LogicLoader
(LoLo) software program.
Logic selected YAFFS to fill its file system requirements due to the flexible nature of the program, its
licensing scheme, and the fact that it is available for Linux, Windows CE, and other operating systems.
YAFFS also allows LogicLoader and an RTOS to view and modify the same partition. It also makes it
easier for customers to work with embedded flash technology and perform in-field updates.
Note: The partition entries for YAFFS partitions are not persistent -- they must be restored on each boot.
However, the partitions and data remain persistent.
8.2 Working with YAFFS in LogicLoader
8.2.1 Developing a Partition Scheme
The LogicLoader may mount up to four YAFFS partitions at a time. Customers should design a partitioning
scheme which suits their individual needs. The following limits are imposed on partitions:
• Each partition must have a unique name.
• Each partition must exist on local flash accessible from LogicLoader’s '/dev/flashx' device file
(where ‘x’ is an instance index). For example: /dev/flash0 or /dev/flash1.
• Each partition must span at least 4 physical flash blocks.
• A partition must not overlap the flash blocks that contain LogicLoader or its configuration block.
For information about the location of these items, check the LogicLoader User's Manual
addendum for your hardware.
For the remainder of this document, the following partitioning scheme for demonstration purposes will be
used:
• A partition named 'boot' which contains a bitmap and operating
system image and spans the address space below:
* start: 0x000C0000
* length: 0x00800000 (8 MBytes)
• A partition named 'data' which contains customer specific data.
* start: 0x00900000
* length: 0x00400000 (4 MBytes)