/**@brief Block cache handle.*/\r
static struct ext4_bcache *bc;\r
\r
-static const char *usage = " \n\\r
-Welcome in ext4 generic demo. \n\\r
-Copyright (c) 2013 Grzegorz Kostka (kostka.grzegorz@gmail.com) \n\\r
-Usage: \n\\r
- --i - input file (default = ext2) \n\\r
- --rws - single R/W size (default = 1024) \n\\r
- --rwc - R/W count (default = 10000) \n\\r
- --cache - 0 static, 1 dynamic (default = 1) \n\\r
- --dirs - directory test count (default = 0) \n\\r
- --clean - clean up after test \n\\r
- --bstat - block device stats \n\\r
- --sbstat - superblock stats \n\\r
- --wpart - windows partition mode \n\\r
+static const char *usage = " \n\\r
+Welcome in ext4 generic demo. \n\\r
+Copyright (c) 2013 Grzegorz Kostka (kostka.grzegorz@gmail.com) \n\\r
+Usage: \n\\r
+ --i - input file (default = ext2) \n\\r
+ --rws - single R/W size (default = 1024 * 1024) \n\\r
+ --rwc - R/W count (default = 10) \n\\r
+ --cache - 0 static, 1 dynamic (default = 1) \n\\r
+ --dirs - directory test count (default = 0) \n\\r
+ --clean - clean up after test \n\\r
+ --bstat - block device stats \n\\r
+ --sbstat - superblock stats \n\\r
+ --wpart - windows partition mode \n\\r
\n";\r
\r
static char* entry_to_str(uint8_t type)\r
--- /dev/null
+\r
+About lwext4\r
+============\r
+\r
+The main goal of the lwext4 project is to provide ext2/3/4 filesystem\r
+library for microcontrolers.\r
+\r
+kostka.grzegorz@gmail.com\r
+\r
+Credits lwext4\r
+==============\r
+\r
+A lot of the implementation of lwext4 was taken from HelenOS:\r
+ - http://www.helenos.org/\r
+ \r
+Some of ideas and features are based on FreeBSD and Linux implementations.\r
+\r
+lwext4 supported/unsupported ext2/3/4 fs features\r
+=================================================\r
+FEATURE_INCOMPAT (unable to mount with unsupported feature):\r
+ - COMPRESSION: no\r
+ - FILETYPE: yes\r
+ - RECOVER: no\r
+ - JOURNAL_DEV: no\r
+ - META_BG: no\r
+ - EXTENTS: yes\r
+ - 64BIT: yes\r
+ - MMP: no\r
+ - FLEX_BG no\r
+ - EA_INODE: no\r
+ - DIRDATA: no\r
+ \r
+FEATURE_INCOMPAT (able to mount with unsupported feature):\r
+ - DIR_PREALLOC: no\r
+ - IMAGIC_INODES: no\r
+ - HAS_JOURNAL: no\r
+ - EXT_ATTR: no\r
+ - RESIZE_INODE: no\r
+ - DIR_INDEX: yes\r
+\r
+FEATURE_RO (able to mount in read only with unsupported feature):\r
+ - SPARSE_SUPER: yes\r
+ - LARGE_FILE: yes\r
+ - BTREE_DIR: no\r
+ - HUGE_FILE: yes\r
+ - GDT_CSUM: yes\r
+ - DIR_NLINK: yes\r
+ - EXTRA_ISIZE: yes\r
+\r
+Supported filetypes:\r
+ - FIFO: no\r
+ - CHARDEV: no\r
+ - DIRECTORY: yes\r
+ - BLOCKDEV: no\r
+ - FILE: yes\r
+ - SOFTLINK: no\r
+ - SOCKET: no\r
+\r
+Other:\r
+ - block_size: 1KB, 2KB, 4KB ... 64KB\r
+ - little/big endian architecture support\r
+\r
+\r
+lwext4 project tree\r
+===================\r
+\r
++blockdev - block devices set, supported blockdevs\r
+ - filedev - file based block device\r
+ - io_raw - wiodows IO block device\r
+\r
++demos - demo directory sources\r
+ - generic - generic demo app, used for development and and debbuging purpose\r
+ \r
++lwext4 - internals of the lwext4 library\r
+\r
++toolchain - specific toolchain cmake files\r
+\r
++ext4.h - lwext4 client library header\r
+CMakeLists.txt - CMake config file\r
+ext_images.7z - ext2/3/4 100MB images\r
+Makefile - helper makefile to call cmake\r
+readme.txt - yes, you are here ;)\r
+ \r
+lwext4 compile Windows\r
+======================\r
+\r
+Tools needed:\r
+ - CMake: http://www.cmake.org/cmake/resources/software.html\r
+ - MinGw: http://www.mingw.org/\r
+ - GnuWin: http://gnuwin32.sourceforge.net/ \r
+\r
+Build:\r
+>>make\r
+\r
+Clean:\r
+>>clean\r
+\r
+Successful build generates out of source build directory:\r
++build_generic\r
+\r
+lwext4 compile Linux\r
+====================\r
+Tools needed:\r
+ - CMake: http://www.cmake.org/cmake/resources/software.html\r
+ \r
+Build:\r
+>>make\r
+\r
+Clean:\r
+>>clean\r
+\r
+Successful build generates out of source build directory:\r
++build_generic\r
+\r
+lwext4 generic demo app\r
+=======================\r
+\r
+Features:\r
+ - load ext2/3/4 images\r
+ - load linux block device with ext2/3/4 part\r
+ - load windows volume with ext2/3/4 filesystem \r
+ - directory speed test\r
+ - file write/read speed test\r
+\r
+How to use:\r
+Windows/Linux fileimages:\r
+> cd build_generic\r
+> fileimage_demo --in ext2 \r
+\r
+Windows volumes:\r
+> cd build_generic\r
+> fileimage_demo --in I: --wpart\r
+\r
+Linux block devices:\r
+> cd build_generic\r
+> fileimage_demo --in /dev/your_block_device\r
+\r
+Usage: \r
+ --i - input file (default = ext2) \r
+ --rws - single R/W size (default = 1024 * 1024) \r
+ --rwc - R/W count (default = 10) \r
+ --cache - 0 static, 1 dynamic (default = 1) \r
+ --dirs - directory test count (default = 0) \r
+ --clean - clean up after test \r
+ --bstat - block device stats \r
+ --sbstat - superblock stats \r
+ --wpart - windows partition mode \r
+\r
+\r
+lwext4 compile Cross\r
+====================\r
+\r
+Toolchain for ARM Cortex-m3/4: https://launchpad.net/gcc-arm-embedded\r
+Toolchain for Blackfin: http://blackfin.uclinux.org/doku.php\r
+\r
+Build bf158 library:\r
+> make bf518\r
+\r
+Build cortex-m3 library:\r
+> make cortex-m3\r
+\r
+Build cortex-m4 library:\r
+> make cortex-m4\r
+\r
+lwext4 ports\r
+============\r
+\r
+Blackfin BF518 EZKIT SD Card Demo: TBD\r
+ETM32F4-Dis SD Card Demo: TBD \r
+\r
+\r
+lwext4 footprint\r
+================ \r