The FAT filesystem is contained in a single eCos package,
CYGPKG_FS_FAT. However, it depends on the services of a collection of
other packages for complete functionality:
CYGPKG_IO_FILEIO
The File IO package. This provides the POSIX compatible API by
which the FAT filesystem is accessed.
CYGPKG_IO
Device IO package. This provides all the infrastructure for
the disk devices.
CYGPKG_IO_DISK
Disk device IO support. This provides the top level generic
disk driver functions. It also interprets partition tables and
provides a separate access channel for each partition. This
package is described in detail elsewhere.
CYGPKG_LINUX_COMPAT
Linux compatibility library. The FAT filesystem only used the
list and RBtree features of this library.
CYGPKG_LIBC_STRING
Strings library. This provides the string and memory move and
compare routines used by the filesystem.
CYGPKG_MEMALLOC
The FAT filesystem currently uses malloc() to allocate its
memory resources, such as the node and block caches, so this
package is required.
To add the FAT filesystem to a configuration, it is necessary to add
all of these packages. This is best done by using an import file. The
following file will add the FAT filesystem and all the necessary
packages to any configuration:
In addition to these packages, hardware-specific device driver packages
will be needed for the disk devices to be used. These device drivers
are usually part of the target description in the eCos database and
will be enabled if the CYGPKG_IO_DISK package is included.