menu "DFS: device virtual file system" config RT_USING_DFS bool "DFS: device virtual file system" select RT_USING_MUTEX default y help The device file system is a light weight virtual file system. if RT_USING_DFS config DFS_USING_POSIX bool "Using posix-like functions, open/read/write/close" default y config DFS_USING_WORKDIR bool "Using working directory" default y if RT_USING_DFS_V1 config RT_USING_DFS_MNTTABLE bool "Using mount table for file system" default n help User can use mount table for automatically mount, for example: const struct dfs_mount_tbl mount_table[] = { {"flash0", "/", "elm", 0, 0}, {0} }; The mount_table must be terminated with NULL. endif config DFS_FD_MAX int "The maximal number of opened files" default 16 choice prompt "The version of DFS" default RT_USING_DFS_V1 default RT_USING_DFS_V2 if RT_USING_SMART config RT_USING_DFS_V1 bool "DFS v1.0" depends on !RT_USING_SMART config RT_USING_DFS_V2 bool "DFS v2.0" select RT_USING_DEVICE_OPS endchoice if RT_USING_DFS_V1 config DFS_FILESYSTEMS_MAX int "The maximal number of mounted file system" default 4 config DFS_FILESYSTEM_TYPES_MAX int "The maximal number of file system type" default 4 endif config RT_USING_DFS_ELMFAT bool "Enable elm-chan fatfs" default n help FatFs is a generic FAT/exFAT file system module for small embedded systems. if RT_USING_DFS_ELMFAT menu "elm-chan's FatFs, Generic FAT Filesystem Module" config RT_DFS_ELM_CODE_PAGE int "OEM code page" default 437 config RT_DFS_ELM_WORD_ACCESS bool "Using RT_DFS_ELM_WORD_ACCESS" default y choice prompt "Support long file name" default RT_DFS_ELM_USE_LFN_3 config RT_DFS_ELM_USE_LFN_0 bool "0: LFN disable" config RT_DFS_ELM_USE_LFN_1 bool "1: LFN with static LFN working buffer" config RT_DFS_ELM_USE_LFN_2 bool "2: LFN with dynamic LFN working buffer on the stack" config RT_DFS_ELM_USE_LFN_3 bool "3: LFN with dynamic LFN working buffer on the heap" endchoice config RT_DFS_ELM_USE_LFN int default 0 if RT_DFS_ELM_USE_LFN_0 default 1 if RT_DFS_ELM_USE_LFN_1 default 2 if RT_DFS_ELM_USE_LFN_2 default 3 if RT_DFS_ELM_USE_LFN_3 choice prompt "Support unicode for long file name" default RT_DFS_ELM_LFN_UNICODE_0 config RT_DFS_ELM_LFN_UNICODE_0 bool "0: ANSI/OEM in current CP (TCHAR = char)" config RT_DFS_ELM_LFN_UNICODE_1 bool "1: Unicode in UTF-16 (TCHAR = WCHAR)" config RT_DFS_ELM_LFN_UNICODE_2 bool "2: Unicode in UTF-8 (TCHAR = char)" config RT_DFS_ELM_LFN_UNICODE_3 bool "3: Unicode in UTF-32 (TCHAR = DWORD)" endchoice config RT_DFS_ELM_LFN_UNICODE int default 0 if RT_DFS_ELM_LFN_UNICODE_0 default 1 if RT_DFS_ELM_LFN_UNICODE_1 default 2 if RT_DFS_ELM_LFN_UNICODE_2 default 3 if RT_DFS_ELM_LFN_UNICODE_3 config RT_DFS_ELM_MAX_LFN int "Maximal size of file name length" range 12 255 default 255 config RT_DFS_ELM_DRIVES int "Number of volumes (logical drives) to be used." default 2 config RT_DFS_ELM_MAX_SECTOR_SIZE int "Maximum sector size to be handled." default 512 help If you use some spi nor flash for fatfs, please set this the erase sector size, for example 4096. config RT_DFS_ELM_USE_ERASE bool "Enable sector erase feature" default n config RT_DFS_ELM_REENTRANT bool "Enable the reentrancy (thread safe) of the FatFs module" default y config RT_DFS_ELM_MUTEX_TIMEOUT int "Timeout of thread-safe protection mutex" range 0 1000000 default 3000 depends on RT_DFS_ELM_REENTRANT config RT_DFS_ELM_USE_EXFAT bool "Enable RT_DFS_ELM_USE_EXFAT" default n depends on RT_DFS_ELM_USE_LFN >= 1 endmenu endif config RT_USING_DFS_DEVFS bool "Using devfs for device objects" default y if RT_USING_DFS_V1 config RT_USING_DFS_ISO9660 bool "Using ISO9660 filesystem" depends on RT_USING_MEMHEAP default n endif config RT_USING_DFS_ROMFS bool "Enable ReadOnly file system on flash" default n config RT_USING_DFS_ROMFS_USER_ROOT bool "Use user's romfs root" depends on RT_USING_DFS_ROMFS default n if RT_USING_SMART config RT_USING_DFS_PTYFS bool "Using Pseudo-Teletype Filesystem (UNIX98 PTY)" depends on RT_USING_DFS_DEVFS default y endif config RT_USING_DFS_CROMFS bool "Enable ReadOnly compressed file system on flash" default n # select PKG_USING_ZLIB if RT_USING_DFS_V1 config RT_USING_DFS_RAMFS bool "Enable RAM file system" select RT_USING_MEMHEAP default n endif config RT_USING_DFS_TMPFS bool "Enable TMP file system" default n config RT_USING_DFS_MQUEUE bool "Enable MQUEUE file system" select RT_USING_DEV_BUS default n if RT_USING_DFS_V1 config RT_USING_DFS_NFS bool "Using NFS v3 client file system" depends on RT_USING_LWIP default n if RT_USING_DFS_NFS config RT_NFS_HOST_EXPORT string "NFSv3 host export" default "192.168.1.5:/" endif endif if RT_USING_DFS_V2 config RT_USING_PAGECACHE bool "Enable page cache" default y if RT_USING_SMART depends on RT_USING_SMART if RT_USING_PAGECACHE menu "page cache config" config RT_PAGECACHE_COUNT int "page cache max total pages." default 4096 config RT_PAGECACHE_ASPACE_COUNT int "aspace max active pages." default 1024 config RT_PAGECACHE_PRELOAD int "max pre load pages." default 4 config RT_PAGECACHE_HASH_NR int "page cache hash size." default 1024 config RT_PAGECACHE_GC_WORK_LEVEL int "page cache gc work trigger min percentage, default 90%." default 90 config RT_PAGECACHE_GC_STOP_LEVEL int "page cache gc to min percentage, default 70%." default 70 endmenu endif endif endif endmenu