TEST
Dependencies: max32630fthr Adafruit_FeatherOLED USBDevice
mbed_os_patches/fffix.patch
- Committer:
- wwwarunraj
- Date:
- 2020-04-19
- Revision:
- 4:291477e8690d
- Parent:
- 1:f60eafbf009a
File content as of revision 4:291477e8690d:
diff --git a/features/filesystem/fat/ChaN/ff.cpp b/features/filesystem/fat/ChaN/ff.cpp index 7e4561d809..3bda25e4a9 100644 --- a/features/filesystem/fat/ChaN/ff.cpp +++ b/features/filesystem/fat/ChaN/ff.cpp @@ -3800,7 +3800,9 @@ FRESULT f_read ( cc = fs->csize - csect; } if (disk_read(fs->pdrv, rbuff, sect, cc) != RES_OK) ABORT(fs, FR_DISK_ERR); -#if !FF_FS_READONLY && FF_FS_MINIMIZE <= 2 /* Replace one of the read sectors with cached data if it contains a dirty sector */ + +/* +#if !FF_FS_READONLY && FF_FS_MINIMIZE <= 2 #if FF_FS_TINY if (fs->wflag && fs->winsect - sect < cc) { mem_cpy(rbuff + ((fs->winsect - sect) * SS(fs)), fs->win, SS(fs)); @@ -3811,6 +3813,8 @@ FRESULT f_read ( } #endif #endif +*/ + rcnt = SS(fs) * cc; /* Number of bytes transferred */ continue; } @@ -3921,19 +3925,20 @@ FRESULT f_write ( cc = fs->csize - csect; } if (disk_write(fs->pdrv, wbuff, sect, cc) != RES_OK) ABORT(fs, FR_DISK_ERR); +/* #if FF_FS_MINIMIZE <= 2 #if FF_FS_TINY - if (fs->winsect - sect < cc) { /* Refill sector cache if it gets invalidated by the direct write */ + if (fs->winsect - sect < cc) { mem_cpy(fs->win, wbuff + ((fs->winsect - sect) * SS(fs)), SS(fs)); fs->wflag = 0; } #else - if (fp->sect - sect < cc) { /* Refill sector cache if it gets invalidated by the direct write */ + if (fp->sect - sect < cc) { mem_cpy(fp->buf, wbuff + ((fp->sect - sect) * SS(fs)), SS(fs)); fp->flag &= (BYTE)~FA_DIRTY; } #endif -#endif +#endif*/ wcnt = SS(fs) * cc; /* Number of bytes transferred */ #if FLUSH_ON_NEW_SECTOR need_sync = true; diff --git a/features/filesystem/fat/ChaN/ffconf.h b/features/filesystem/fat/ChaN/ffconf.h index 22e1294277..f446778695 100644 --- a/features/filesystem/fat/ChaN/ffconf.h +++ b/features/filesystem/fat/ChaN/ffconf.h @@ -151,7 +151,7 @@ */ -#define FF_FS_RPATH 1 +#define FF_FS_RPATH 0 /* This option configures support for relative path. / / 0: Disable relative path and remove related functions. @@ -164,7 +164,7 @@ / Drive/Volume Configurations /---------------------------------------------------------------------------*/ -#define FF_VOLUMES 4 +#define FF_VOLUMES 1 /* Number of volumes (logical drives) to be used. (1-10) */ @@ -219,7 +219,7 @@ / System Configurations /---------------------------------------------------------------------------*/ -#define FF_FS_TINY 1 +#define FF_FS_TINY 0 /* This option switches tiny buffer configuration. (0:Normal or 1:Tiny) / At the tiny configuration, size of file object (FIL) is shrinked FF_MAX_SS bytes. / Instead of private sector buffer eliminated from the file object, common sector @@ -289,7 +289,7 @@ /* #include <windows.h> // O/S definitions */ #define FLUSH_ON_NEW_CLUSTER 0 /* Sync the file on every new cluster */ -#define FLUSH_ON_NEW_SECTOR 1 /* Sync the file on every new sector */ +#define FLUSH_ON_NEW_SECTOR 0 /* Sync the file on every new sector */ /* Only one of these two defines needs to be set to 1. If both are set to 0 the file is only sync when closed. Clusters are group of sectors (eg: 8 sectors). Flushing on new cluster means