Zephyr: NFFS requires 1-byte unaligned accesses to flash

Created on 21 Sep 2017  路  7Comments  路  Source: zephyrproject-rtos/zephyr

Documented here: https://issues.apache.org/jira/browse/MYNEWT-13

It won't work on devices that cannot access the flash at any address and with 1-byte granularity

Enhancement File System

All 7 comments

lowering, a limitation rather than a bug

CC @utzig

I fear this limitation is going to become more significant. I'm already seeing several devices that have a write alignment of 512. I don't know if this can be address with NFFS, or if there is possibly another filesystem that might handle these devices?

I fear this limitation is going to become more significant. I'm already seeing several devices that have a write alignment of 512. I don't know if this can be address with NFFS, or if there is possibly another filesystem that might handle these devices?

AFAIK NFFS hasn't seen any work recently and we should probably deprecate it. Instead, littlefs, which is already integrated into Zephyr, should be a good replacement. I assume that littlefs doesn't have this limitation @pabigot @nvlsianpu ?

littlefs allows you to specify the size (and implied alignment) of both read and program operations. https://github.com/zephyrproject-rtos/zephyr/blob/master/tests/subsys/fs/littlefs/src/testfs_lfs.h and related files show how to configure the filesystem. The default configuration uses 16-byte transfers.

AFAIK NFFS hasn't seen any work recently and we should probably deprecate it.

That's right. NFFS should be deprecated - it has serious bugs by design.

NFFS support was removed #21793.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ghost picture ghost  路  4Comments

qianfan-Zhao picture qianfan-Zhao  路  3Comments

cfriedt picture cfriedt  路  3Comments

rosterloh picture rosterloh  路  4Comments

mike-scott picture mike-scott  路  4Comments