Add patch for littlefs to use kmm_malloc/free on kernel with MMU.

This commit is contained in:
Radek Pesina 2023-04-26 14:53:52 +10:00 committed by Xiang Xiao
parent c87da0d115
commit d58c445ac5
2 changed files with 30 additions and 1 deletions

View File

@ -41,7 +41,7 @@ CFLAGS += -DLFS_NAME_MAX=$(CONFIG_FS_LITTLEFS_NAME_MAX)
CFLAGS += -DLFS_FILE_MAX=$(CONFIG_FS_LITTLEFS_FILE_MAX)
CFLAGS += -DLFS_ATTR_MAX=$(CONFIG_FS_LITTLEFS_ATTR_MAX)
LITTLEFS_VERSION ?= 2.4.0
LITTLEFS_VERSION ?= 2.5.1
LITTLEFS_TARBALL = v$(LITTLEFS_VERSION).tar.gz
$(LITTLEFS_TARBALL):
@ -50,6 +50,7 @@ $(LITTLEFS_TARBALL):
.littlefsunpack: $(LITTLEFS_TARBALL)
$(Q) tar zxf littlefs/$(LITTLEFS_TARBALL) -C littlefs
$(Q) mv littlefs/littlefs-$(LITTLEFS_VERSION) littlefs/littlefs
$(Q) git apply littlefs/lfs_util.patch
$(Q) touch littlefs/.littlefsunpack
# Download and unpack tarball if no git repo found

View File

@ -0,0 +1,28 @@
--- ./littlefs/littlefs/lfs_util.h 2022-11-11 03:32:30.000000000 +1100
+++ ./littlefs/littlefs/lfs_util.h 2023-04-21 12:25:27.987084276 +1000
@@ -28,6 +28,7 @@
#ifndef LFS_NO_MALLOC
#include <stdlib.h>
+#include <nuttx/mm/mm.h>
#endif
#ifndef LFS_NO_ASSERT
#include <assert.h>
@@ -218,7 +219,7 @@
// Note, memory must be 64-bit aligned
static inline void *lfs_malloc(size_t size) {
#ifndef LFS_NO_MALLOC
- return malloc(size);
+ return kmm_malloc(size);
#else
(void)size;
return NULL;
@@ -228,7 +229,7 @@
// Deallocate memory, only used if buffers are not provided to littlefs
static inline void lfs_free(void *p) {
#ifndef LFS_NO_MALLOC
- free(p);
+ kmm_free(p);
#else
(void)p;
#endif