From b35d7611964d1470409269bf25e3499721dcbe7d Mon Sep 17 00:00:00 2001 From: Christopher Haster Date: Sun, 30 Apr 2017 13:12:44 -0500 Subject: [PATCH] Removed words variable from lfs struct --- lfs.c | 10 ++++++---- lfs.h | 1 - 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/lfs.c b/lfs.c index da329fe..5d3b9a0 100644 --- a/lfs.c +++ b/lfs.c @@ -859,11 +859,12 @@ int lfs_dir_rewind(lfs_t *lfs, lfs_dir_t *dir) { /// File index list operations /// static int lfs_index(lfs_t *lfs, lfs_off_t *off) { lfs_off_t i = 0; + lfs_size_t words = lfs->cfg->block_size / 4; while (*off >= lfs->cfg->block_size) { i += 1; *off -= lfs->cfg->block_size; - *off += 4*lfs_min(lfs_ctz(i)+1, lfs->words-1); + *off += 4*lfs_min(lfs_ctz(i)+1, words-1); } return i; @@ -881,11 +882,12 @@ static int lfs_index_find(lfs_t *lfs, lfs_off_t current = lfs_index(lfs, &(lfs_off_t){size-1}); lfs_off_t target = lfs_index(lfs, &pos); + lfs_size_t words = lfs->cfg->block_size / 4; while (current > target) { lfs_size_t skip = lfs_min( lfs_npw2(current-target+1) - 1, - lfs_min(lfs_ctz(current)+1, lfs->words-1) - 1); + lfs_min(lfs_ctz(current)+1, words-1) - 1); int err = lfs_cache_read(lfs, rcache, pcache, head, 4*skip, &head, 4); if (err) { @@ -945,7 +947,8 @@ static int lfs_index_extend(lfs_t *lfs, // append block index += 1; - lfs_size_t skips = lfs_min(lfs_ctz(index)+1, lfs->words-1); + lfs_size_t words = lfs->cfg->block_size / 4; + lfs_size_t skips = lfs_min(lfs_ctz(index)+1, words-1); for (lfs_off_t i = 0; i < skips; i++) { int err = lfs_cache_prog(lfs, pcache, *block, 4*i, &head, 4); @@ -1538,7 +1541,6 @@ int lfs_rename(lfs_t *lfs, const char *oldpath, const char *newpath) { /// Filesystem operations /// static int lfs_init(lfs_t *lfs, const struct lfs_config *cfg) { lfs->cfg = cfg; - lfs->words = lfs->cfg->block_size / sizeof(uint32_t); // setup read cache lfs->rcache.block = 0xffffffff; diff --git a/lfs.h b/lfs.h index c7a9759..1efc630 100644 --- a/lfs.h +++ b/lfs.h @@ -210,7 +210,6 @@ typedef struct lfs_free { // littlefs type typedef struct lfs { const struct lfs_config *cfg; - lfs_size_t words; // number of 32-bit words that can fit in a block lfs_block_t root[2]; lfs_dir_t *scratch;