3 The main goal of the lwext4 project is to provide ext2/3/4 filesystem
4 library for microcontrolers with SD/MMC card support.
6 kostka.grzegorz@gmail.com
8 ==Minimum memory requirements==
9 * .text: 20KB - 30KB (dependent of feature set chosen)
16 * fast fseek on big file (in FAT32 fseek equals many IO operations)
17 * ext2/3/4 HTREE directory operations (like find entry) are faster
18 * fast extent big file allocation (truncate/remove)
19 * more at https://ext4.wiki.kernel.org/index.php/Ext4_Disk_Layout
22 * FAT32 has smaller footprint
26 The most of the source code of lwext4 was taken from HelenOS:
28 Some features are based on FreeBSD and Linux implementations.
30 ==Supported ext2/3/4 fs features==
31 ;Features incompatible (unable to mount when NOT supported):
34 * recover: no (could be ignored)
39 * mmp: no (could be ignored)
46 ;Features compatible (mount when NOT supported is possible):
53 ;Features read-only (mount in RO mode when NOT supported):
56 * btree_dir: yes (obsolete)
65 ==Supported filetypes:==
75 - block_size: 1KB, 2KB, 4KB ... 64KB
76 - little/big endian architecture support
79 * blockdev - block devices set, supported blockdev
80 * demos - demo directory sources
81 * lwext4 - internals of the lwext4 library
82 * toolchain - specific toolchain cmake files
83 * CMakeLists.txt - CMake config file
84 * ext_images.7z - compressed ext2/3/4 100MB images
85 * fs_test.mk - automatic tests definitions
86 * Makefile - helper makefile to trigger cmake, tests
87 * readme.mediawiki - readme file
91 * CMake: http://www.cmake.org/cmake/resources/software.html
92 * MinGw: http://www.mingw.org/
93 * GnuWin: http://gnuwin32.sourceforge.net/
108 * CMake: http://www.cmake.org/cmake/resources/software.html
120 ==Generic demo application==
122 * load ext2/3/4 images
123 * load linux block device with ext2/3/4 part
124 * load windows volume with ext2/3/4 filesystem
125 * directory speed test
126 * file write/read speed test
129 Windows/Linux fileimages:
135 generic --in I: --wpart
139 generic --in /dev/your_block_device
142 --i - input file (default = ext2)
143 --rws - single R/W size (default = 1024 * 1024)
144 --rwc - R/W count (default = 10)
145 --cache - 0 static, 1 dynamic (default = 1)
146 --dirs - directory test count (default = 0)
147 --clean - clean up after test
148 --bstat - block device stats
149 --sbstat - superblock stats
150 --wpart - windows partition mode
152 ==Build and run automatic tests==
153 Build and run automatic tests
154 Build automatic test tools:
158 Uncompress ext/2/3/4 images:
160 Run server app for predefined images:
167 ==Cross-Compile standalone library==
173 Build avrxmega7 library:
178 Build cortex-m0 library:
183 Build cortex-m3 library:
188 Build cortex-m4 library:
194 * STM32F429-DISCO USB flash drive Demo
195 * ChibiOS demo applications
197 Build STM32F429 Demo: