| # Copyright (c) 2016 Intel Corporation |
| # Copyright (c) 2020 Nordic Semiconductor (ASA) |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| menu "File Systems" |
| |
| config FILE_SYSTEM_LIB_LINK |
| bool "Link file system libraries into build" |
| help |
| Link in the underlying file system libraries. This can be |
| enabled without CONFIG_FILE_SYSTEM to enable applications |
| to work directly with the underlying file system libraries. |
| This can be useful to avoid linking in the entire filesystem |
| implementation via `struct fs_file_system_t` if only a subset |
| is used. |
| |
| config FILE_SYSTEM |
| bool "File system support" |
| select FILE_SYSTEM_LIB_LINK |
| help |
| Enables support for file system. |
| |
| if FILE_SYSTEM |
| |
| module = FS |
| module-str = fs |
| source "subsys/logging/Kconfig.template.log_config" |
| |
| config APP_LINK_WITH_FS |
| bool "Link 'app' with FS" |
| default y |
| help |
| Add FS header files to the 'app' include path. It may be |
| disabled if the include paths for FS are causing aliasing |
| issues for 'app'. |
| |
| config FILE_SYSTEM_MAX_TYPES |
| int "Maximum number of distinct file system types allowed" |
| default 2 |
| help |
| Zephyr provides several file system types including FatFS and |
| LittleFS, but it is possible to define additional ones and |
| register them. A slot is required for each type. |
| |
| config FILE_SYSTEM_MAX_FILE_NAME |
| int "Optional override for maximum file name length" |
| default -1 |
| help |
| Specify the maximum file name allowed across all enabled file |
| system types. Zero or a negative value selects the maximum |
| file name length for enabled in-tree file systems. This |
| default may be inappropriate when registering an out-of-tree |
| file system. Selecting a value less than the actual length |
| supported by a file system may result in memory access |
| violations. |
| |
| config FILE_SYSTEM_INIT_PRIORITY |
| int "File system initialization priority" |
| default 99 |
| help |
| Specify the initialization priority for file systems. In case |
| automount is enabled, the initialization should be done after |
| the underlying storage device is initialized. |
| |
| config FILE_SYSTEM_SHELL |
| bool "File system shell" |
| depends on SHELL |
| depends on HEAP_MEM_POOL_SIZE > 0 |
| help |
| This shell provides basic browsing of the contents of the |
| file system. |
| |
| if FILE_SYSTEM_SHELL |
| |
| config FILE_SYSTEM_SHELL_TEST_COMMANDS |
| bool "File system shell read/write/erase test commands" |
| select CBPRINTF_FP_SUPPORT |
| help |
| Enable additional file system shell commands for performing |
| read/write/erase tests with speed output. |
| |
| config FILE_SYSTEM_SHELL_BUFFER_SIZE |
| hex "File system shell buffer size" |
| depends on FILE_SYSTEM_SHELL_TEST_COMMANDS |
| default 0x100 |
| range 0x20 0x1000000 |
| help |
| Size of the buffer used for file system commands, will determine the |
| maximum size that can be used with a read/write test. Note that this |
| is used on the stack. |
| |
| endif # FILE_SYSTEM_SHELL |
| |
| config FILE_SYSTEM_MKFS |
| bool "Allow to format file system" |
| help |
| Enables function fs_mkfs that can be used to format a storage device. |
| |
| config FUSE_FS_ACCESS |
| bool "FUSE based access to file system partitions" |
| depends on ARCH_POSIX |
| help |
| Expose file system partitions to the host system through FUSE. |
| |
| rsource "Kconfig.fatfs" |
| rsource "Kconfig.littlefs" |
| rsource "ext2/Kconfig" |
| |
| endif # FILE_SYSTEM |
| |
| rsource "fcb/Kconfig" |
| rsource "nvs/Kconfig" |
| rsource "zms/Kconfig" |
| |
| endmenu |