spiffs_fs.h

SPIFFS integration with vfs.

SPIFFS_FS_CACHE_SIZE

the size of the cache buffer

1
(512)

Ignored if cache is disabled in build config. One cache page will be slightly larger than the logical page size. The more ram, the more cache pages, the quicker the system.

SPIFFS_FS_WORK_SIZE

The size of the work buffer.

1
(512)

A ram memory buffer being double the size of the logical page size This buffer is used extensively by the spiffs stack. If logical page size is 256, this buffer must be 512 bytes.

SPIFFS_FS_FD_SPACE_SIZE

the size of the file descriptor buffer

1
(4 * 32)

A file descriptor normally is around 32 bytes depending on the build config - the bigger the buffer, the more file descriptors are available.

SPIFFS_DIR_SIZE

Size of the buffer needed for directory.

1
(12)
struct spiffs_desc spiffs_desc_t

This contains everything needed to run an instance of SPIFFS.

const vfs_file_system_t spiffs_file_system

The SPIFFS vfs driver, a pointer to a spiffs_desc_t must be provided as vfs_mountp::private_data.

void spiffs_lock(struct spiffs_t * fs)

SPIFFS lock function.

This function must be used by SPIFFS_LOCK to lock the file system using the spiffs_fs.h::spiffs_desc::lock.

Parameters

fs:spiffs descriptor

void spiffs_unlock(struct spiffs_t * fs)

SPIFFS unlock function.

This function must be used by SPIFFS_UNLOCK to lock the file system using the spiffs_fs.h::spiffs_desc::lock.

Parameters

fs:spiffs descriptor

struct spiffs_desc

This contains everything needed to run an instance of SPIFFS.

spiffs fs

The SPIFFS struct.

uint8_t work()

SPIFFS work buffer.

uint8_t fd_space()

SPIFFS file descriptor cache.

uint8_t cache()

SPIFFS cache.

spiffs_config config

SPIFFS config, filled at mount time depending on the underlying mtdi_dev_t dev.

mutex_t lock

A lock for SPIFFS internal use.

mtd_dev_t * dev

The underlying mtd device, must be set by user.

uint32_t base_addr

Base address of partition.

uint32_t block_count

Number of blocks in current partition, if 0, the mtd number of sector is used.