This is an automated email from the ASF dual-hosted git repository.

kasjer pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mynewt-core.git

commit 703229e955c0acb637f09b0409b78a5635480a1a
Author: Jerzy Kasenberg <[email protected]>
AuthorDate: Thu Jun 25 14:56:21 2026 +0200

    fs/littlefs: Use mount points
    
    This updates littlefs to use fs_mount
    
    Signed-off-by: Jerzy Kasenberg <[email protected]>
---
 fs/littlefs/src/littlefs_glue.c | 34 +++++++++++++++++++++++++++++-----
 1 file changed, 29 insertions(+), 5 deletions(-)

diff --git a/fs/littlefs/src/littlefs_glue.c b/fs/littlefs/src/littlefs_glue.c
index de8b4ad8f..b7b90fed4 100644
--- a/fs/littlefs/src/littlefs_glue.c
+++ b/fs/littlefs/src/littlefs_glue.c
@@ -60,6 +60,8 @@ static int littlefs_closedir(struct fs_dir *dir);
 static int littlefs_dirent_name(const struct fs_dirent *fs_dirent, size_t 
max_len,
                                 char *out_name, uint8_t *out_name_len);
 static int littlefs_dirent_is_dir(const struct fs_dirent *fs_dirent);
+static int _littlefs_mount(const file_system_t *fs);
+static int _littlefs_umount(const file_system_t *fs);
 
 struct littlefs_file {
     struct fs_ops *fops;
@@ -101,7 +103,8 @@ static struct fs_ops littlefs_ops = {
     .f_dirent_name = littlefs_dirent_name,
     .f_dirent_is_dir = littlefs_dirent_is_dir,
 
-    .f_name = "littlefs"
+    .f_mount = _littlefs_mount,
+    .f_umount = _littlefs_umount,
 };
 
 /* Min block size equired by littlefs implementation */
@@ -750,6 +753,22 @@ littlefs_mount(void)
     return FS_EOK;
 }
 
+static int
+_littlefs_mount(const file_system_t *fs)
+{
+    (void)fs;
+
+    return littlefs_mount();
+}
+
+static int
+_littlefs_umount(const file_system_t *fs)
+{
+    (void)fs;
+
+    return lfs_unmount(&g_littlefs);
+}
+
 int
 littlefs_init(void)
 {
@@ -803,6 +822,11 @@ littlefs_init(void)
     return FS_EOK;
 }
 
+static const file_system_t littlefs_fs0 = {
+    .ops = &littlefs_ops,
+    .name = "littlefs"
+};
+
 void
 littlefs_sysinit(void)
 {
@@ -813,8 +837,8 @@ littlefs_sysinit(void)
     rc = littlefs_init();
     SYSINIT_PANIC_ASSERT(rc == 0);
 
-#if MYNEWT_VAL(LITTLEFS_AUTO_MOUNT)
-    rc = littlefs_mount();
-    SYSINIT_PANIC_ASSERT(rc == 0);
-#endif
+    if (MYNEWT_VAL(LITTLEFS_AUTO_MOUNT)) {
+        rc = fs_mount(&littlefs_fs0, "lfs0:");
+        SYSINIT_PANIC_ASSERT(rc == 0);
+    }
 }

Reply via email to