Add readme file.
authorgkostka <kostka.grzegorz@gmail.com>
Sun, 27 Oct 2013 18:07:39 +0000 (18:07 +0000)
committergkostka <kostka.grzegorz@gmail.com>
Sun, 27 Oct 2013 18:07:39 +0000 (18:07 +0000)
blockdev/filedev/ext4_filedev.c
blockdev/io_raw/io_raw.c
demos/generic/main.c
lwext4/ext4.c
readme.txt [new file with mode: 0644]

index 68e6e596ae3eaed3e997587874214545d07473c3..d0530d86b770fcb973a46dfa4f7f5787124360c1 100644 (file)
@@ -66,7 +66,7 @@ EXT4_BLOCKDEV_STATIC_INSTANCE(
 );
 
 /******************************************************************************/
-EXT4_BCACHE_STATIC_INSTANCE(__cache, 8, 1024);
+EXT4_BCACHE_STATIC_INSTANCE(__cache, CONFIG_BLOCK_DEV_CACHE_SIZE, 1024);
 
 /******************************************************************************/
 static int filedev_open(struct ext4_blockdev *bdev)
index d67d062d2a484e17eee06ca78c99c3c85f39dcdc..66b35b438003003d60ee4e0ac2c76032c5735ed7 100644 (file)
@@ -71,7 +71,7 @@ EXT4_BLOCKDEV_STATIC_INSTANCE(
 );\r
 \r
 /******************************************************************************/\r
-EXT4_BCACHE_STATIC_INSTANCE(__cache, 8, 1024);\r
+EXT4_BCACHE_STATIC_INSTANCE(__cache, CONFIG_BLOCK_DEV_CACHE_SIZE, 1024);\r
 \r
 /******************************************************************************/\r
 static int io_raw_open(struct ext4_blockdev *bdev)\r
index 3678e1d2ff5884e5f4c8e58c7c8af5ad9f0838bb..d61af819a74fd153cf4364918d86c61d86b9eb81 100644 (file)
@@ -82,19 +82,19 @@ static struct ext4_blockdev *bd;
 /**@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
index 0e62d9899f22fdef4303b845b0db5e979fe04a14..3f5af2b8301736a495cd5b34239f85b3edfcf3a7 100644 (file)
@@ -363,7 +363,7 @@ int                 ext4_mount(const char * dev_name,  char *mount_point)
         mp->cache_dynamic = 1;\r
         bc = malloc(sizeof(struct ext4_bcache));\r
 \r
-        r = ext4_bcache_init_dynamic(bc, 8, bsize);\r
+        r = ext4_bcache_init_dynamic(bc, CONFIG_BLOCK_DEV_CACHE_SIZE, bsize);\r
         if(r != EOK){\r
             free(bc);\r
             ext4_block_fini(bd);\r
diff --git a/readme.txt b/readme.txt
new file mode 100644 (file)
index 0000000..12ac6dd
--- /dev/null
@@ -0,0 +1,173 @@
+\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