Skip to content

Commit

Permalink
Add support for GFILE_PETITFS_EXTERNAL_LIB and GFILE_FATFS_EXTERNAL_LIB
Browse files Browse the repository at this point in the history
  • Loading branch information
Andrew Hannam authored and Andrew Hannam committed May 27, 2016
1 parent 08c639e commit f8dac95
Show file tree
Hide file tree
Showing 6 changed files with 34 additions and 8 deletions.
1 change: 1 addition & 0 deletions docs/releases.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

*** Changes after 2.5 ***
FIX: Fixing bug where the list item count wasn't decremented when an item was removed
FEATURE: Add options GFILE_FATFS_EXTERNAL_LIB and GFILE_PETITFSFS_EXTERNAL_LIB


*** Release 2.5 ***
Expand Down
4 changes: 2 additions & 2 deletions src/gfile/gfile_fatfs_diskio_chibios.c
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

#include "../../gfx.h"

#if GFX_USE_GFILE && GFILE_NEED_FATFS && GFX_USE_OS_CHIBIOS
#if GFX_USE_GFILE && GFILE_NEED_FATFS && GFX_USE_OS_CHIBIOS && !GFILE_FATFS_EXTERNAL_LIB

#include "gfile_fatfs_wrapper.h"

Expand Down Expand Up @@ -249,6 +249,6 @@ DWORD get_fattime(void) {
#endif
}

#endif // GFX_USE_GFILE && GFILE_NEED_FATFS && GFX_USE_OS_CHIBIOS
#endif // GFX_USE_GFILE && GFILE_NEED_FATFS && GFX_USE_OS_CHIBIOS && !GFILE_FATFS_EXTERNAL_LIB


4 changes: 2 additions & 2 deletions src/gfile/gfile_fatfs_wrapper.c
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

#include "../../gfx.h"

#if GFX_USE_GFILE && GFILE_NEED_FATFS
#if GFX_USE_GFILE && GFILE_NEED_FATFS && !GFILE_FATFS_EXTERNAL_LIB

#include "gfile_fatfs_wrapper.h"

Expand Down Expand Up @@ -80,4 +80,4 @@
}
#endif /* _USE_LFN == 3 */

#endif // GFX_USE_GFILE && GFILE_NEED_FATFS
#endif // GFX_USE_GFILE && GFILE_NEED_FATFS && !GFILE_FATFS_EXTERNAL_LIB
25 changes: 25 additions & 0 deletions src/gfile/gfile_options.h
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,31 @@
#ifndef GFILE_MAX_GFILES
#define GFILE_MAX_GFILES 3
#endif
/**
* @brief TUse an external FATFS library instead of the uGFX inbuilt one
* @note This is applicable when GFILE_NEED_FATFS is specified. It allows
* the programmer to use their own FATFS implementation provided the
* api matches the fatfs-0.10b API.
* @note The users ffconf.h file still needs to be reachable when compiling uGFX.
* @note If ffconf.h contains _FS_REENTRANT as true then the user provided simpleton
* routines must be compatible with uGFX threading.
* @note If ffconf.h contains _USE_LFN == 3 then the user provided simpleton routines must
* be compatible with uGFX memory management.
*/
#ifndef GFILE_FATFS_EXTERNAL_LIB
#define GFILE_FATFS_EXTERNAL_LIB FALSE
#endif
/**
* @brief TUse an external PETITFS library instead of the uGFX inbuilt one
* @note This is applicable when GFILE_NEED_PETITFS is specified. It allows
* the programmer to use their own FATFS implementation provided the
* api matches the petitfs-0.03 API.
* @note The users pffconf.h file still needs to be reachable when compiling uGFX.
*/
#ifndef GFILE_PETITFS_EXTERNAL_LIB
#define GFILE_PETITFS_EXTERNAL_LIB FALSE
#endif

/** @} */

#endif /* _GFILE_OPTIONS_H */
Expand Down
4 changes: 2 additions & 2 deletions src/gfile/gfile_petitfs_diskio_chibios.c
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

#include "../../gfx.h"

#if GFX_USE_GFILE && GFILE_NEED_PETITFS && GFX_USE_OS_CHIBIOS
#if GFX_USE_GFILE && GFILE_NEED_PETITFS && GFX_USE_OS_CHIBIOS && !GFILE_PETITFS_EXTERNAL_LIB

#include "gfile_petitfs_wrapper.h"

Expand Down Expand Up @@ -77,6 +77,6 @@ DRESULT disk_readp (
return RES_OK;
}

#endif // GFX_USE_GFILE && GFILE_NEED_PETITFS && GFX_USE_OS_CHIBIOS
#endif // GFX_USE_GFILE && GFILE_NEED_PETITFS && GFX_USE_OS_CHIBIOS && !GFILE_PETITFS_EXTERNAL_LIB


4 changes: 2 additions & 2 deletions src/gfile/gfile_petitfs_wrapper.c
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@

#include "../../gfx.h"

#if GFX_USE_GFILE && GFILE_NEED_PETITFS
#if GFX_USE_GFILE && GFILE_NEED_PETITFS && !GFILE_PETITFS_EXTERNAL_LIB

#include "gfile_petitfs_wrapper.h"

// Include the source we want
#include "../../3rdparty/petitfs-0.03/src/pff.c"

#endif // GFX_USE_GFILE && GFILE_NEED_PETITFS
#endif // GFX_USE_GFILE && GFILE_NEED_PETITFS && !GFILE_PETITFS_EXTERNAL_LIB

0 comments on commit f8dac95

Please sign in to comment.