diff options
-rw-r--r-- | os/various/fatfs_bindings/fatfs_syscall.c | 14 | ||||
-rw-r--r-- | readme.txt | 2 |
2 files changed, 8 insertions, 8 deletions
diff --git a/os/various/fatfs_bindings/fatfs_syscall.c b/os/various/fatfs_bindings/fatfs_syscall.c index 09ebb1dd9..d048ca278 100644 --- a/os/various/fatfs_bindings/fatfs_syscall.c +++ b/os/various/fatfs_bindings/fatfs_syscall.c @@ -26,19 +26,18 @@ #include "ch.h"
#include "ff.h"
-MEMORYPOOL_DECL(fs_sem_pool, sizeof(Semaphore), chCoreAllocI);
-
#if _FS_REENTRANT
/*------------------------------------------------------------------------*/
+/* Static array of Synchronization Objects */
+/*------------------------------------------------------------------------*/
+static Semaphore ff_sem[_VOLUMES];
+
+/*------------------------------------------------------------------------*/
/* Create a Synchronization Object */
/*------------------------------------------------------------------------*/
int ff_cre_syncobj(BYTE vol, _SYNC_t *sobj) {
- (void)vol;
-
- *sobj = chPoolAlloc(&fs_sem_pool);
- if (*sobj == NULL)
- return FALSE;
+ *sobj = &ff_sem[vol];
chSemInit(*sobj, 1);
return TRUE;
}
@@ -49,7 +48,6 @@ int ff_cre_syncobj(BYTE vol, _SYNC_t *sobj) { int ff_del_syncobj(_SYNC_t sobj) {
chSemReset(sobj, 0);
- chPoolFree(&fs_sem_pool, sobj);
return TRUE;
}
diff --git a/readme.txt b/readme.txt index 482ddc028..51ebeb21b 100644 --- a/readme.txt +++ b/readme.txt @@ -83,6 +83,8 @@ *****************************************************************************
*** 2.5.1 ***
+- FIX: Fixed FatFS won't compile with _FS_REENTRANT enabled (bug 3570135)
+ (backported to 2.4.3).
- FIX: Fixed mmc_spi.c won't compile due to misplaced declaration (bug
3570035)(backported to 2.4.3).
- FIX: Fixed problem in STM32F1xx USB driver after revision 4598 (bug 3569374).
|