# Copyright (c) 2016 Intel Corporation # Copyright (c) 2020 Nordic Semiconductor ASA # SPDX-License-Identifier: Apache-2.0 config FAT_FILESYSTEM_ELM bool "ELM FAT file system support" depends on FILE_SYSTEM select DISK_ACCESS help Use the ELM FAT File system implementation. if FAT_FILESYSTEM_ELM menu "ELM FAT file system settings" visible if FAT_FILESYSTEM_ELM config FS_FATFS_READ_ONLY bool "Read-only support for all volumes" help The option excludes write code from ELM FAT file system driver; when selected, it no longer will be possible to write data on the FAT FS. If write support is not needed, enabling this flag will slightly reduce application size. This option translates to _FS_READONLY within ELM FAT file system driver; it enables exclusion, from compilation, of write supporting code. config FS_FATFS_MKFS bool help This option translates to _USE_MKFS within ELM FAT file system driver; it enables additional code that is required for formatting volumes to ELM FAT. config FS_FATFS_MOUNT_MKFS bool "Allow formatting volume when mounting fails" default y select FS_FATFS_MKFS help This option adds code that allows fs_mount to attempt to format a volume if no file system is found. If formatting is not needed, disabling this flag will slightly reduce application size. if FS_FATFS_MOUNT_MKFS config FS_FATFS_MAX_ROOT_ENTRIES int "Max number of entries in FAT FS root directory" default 512 range 1 32768 help Sets how many root directory entries will be allocated when formatting new FAT system to a device. Note that this should be multiply of FS_FATFS_MAX_SS / 32. endif # FS_FATFS_MOUNT_MKFS config FS_FATFS_EXFAT bool "ExFAT support" select FS_FATFS_LFN help Enable the exFAT format support for FatFs. config FS_FATFS_NUM_FILES int "Maximum number of opened files" default 4 config FS_FATFS_NUM_DIRS int "Maximum number of opened directories" default 4 config FS_FATFS_LFN bool "Long filenames (LFN)" help Without long filenames enabled, file names are limited to 8.3 format. This option increases working buffer size. if FS_FATFS_LFN choice FS_FATFS_LFN_MODE prompt "LFN memory mode" default FS_FATFS_LFN_MODE_BSS config FS_FATFS_LFN_MODE_BSS bool "Static buffer" help Enable LFN with static working buffer on the BSS. Always NOT thread-safe. config FS_FATFS_LFN_MODE_STACK bool "Stack buffer" help Enable LFN with dynamic working buffer on the STACK. config FS_FATFS_LFN_MODE_HEAP bool "Heap buffer" help Enable LFN with dynamic working buffer on the HEAP. endchoice config FS_FATFS_MAX_LFN int "Max filename length" range 12 255 default 255 help The working buffer occupies (FS_FATFS_MAX_LFN + 1) * 2 bytes and additional 608 bytes at exFAT enabled. It should be set 255 to support full featured LFN operations. endif # FS_FATFS_LFN config FS_FATFS_CODEPAGE int "FatFS code page (character set)" default 437 help Valid code page values: 437 - U.S. 720 - Arabic 737 - Greek 771 - KBL 775 - Baltic 850 - Latin 1 852 - Latin 2 855 - Cyrillic 857 - Turkish 860 - Portuguese 861 - Icelandic 862 - Hebrew 863 - Canadian French 864 - Arabic 865 - Nordic 866 - Russian 869 - Greek 2 932 - Japanese (DBCS) 936 - Simplified Chinese (DBCS) 949 - Korean (DBCS) 950 - Traditional Chinese (DBCS) config FS_FATFS_MAX_SS int "Maximum supported sector size" range 512 4096 default 512 config FS_FATFS_WINDOW_ALIGNMENT int "Memory alignment for the member \"win\" in FATFS" default 1 help Specifies alignment, in bytes of FAT FS window buffer that is used for device's read/write operations. MMC controllers may require read/write buffer to start at memory address with specific alignment, for example 16 or 512 bytes, the value provided here is used as such alignment. Note that the window buffer is internal element of FATFS structure, which means that, in worst scenario, value provided here may cause FATFS structure to have size of twice the value endmenu endif # FAT_FILESYSTEM_ELM