diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/gfile/gfile_fatfs_diskio_chibios.c | 4 | ||||
-rw-r--r-- | src/gfile/gfile_fatfs_wrapper.c | 4 | ||||
-rw-r--r-- | src/gfile/gfile_options.h | 25 | ||||
-rw-r--r-- | src/gfile/gfile_petitfs_diskio_chibios.c | 4 | ||||
-rw-r--r-- | src/gfile/gfile_petitfs_wrapper.c | 4 |
5 files changed, 33 insertions, 8 deletions
diff --git a/src/gfile/gfile_fatfs_diskio_chibios.c b/src/gfile/gfile_fatfs_diskio_chibios.c index a2e5fbaf..f9a19264 100644 --- a/src/gfile/gfile_fatfs_diskio_chibios.c +++ b/src/gfile/gfile_fatfs_diskio_chibios.c @@ -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" @@ -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 diff --git a/src/gfile/gfile_fatfs_wrapper.c b/src/gfile/gfile_fatfs_wrapper.c index 01f5d26b..ede644d6 100644 --- a/src/gfile/gfile_fatfs_wrapper.c +++ b/src/gfile/gfile_fatfs_wrapper.c @@ -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" @@ -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 diff --git a/src/gfile/gfile_options.h b/src/gfile/gfile_options.h index 06781f38..ab23a1cb 100644 --- a/src/gfile/gfile_options.h +++ b/src/gfile/gfile_options.h @@ -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 */ diff --git a/src/gfile/gfile_petitfs_diskio_chibios.c b/src/gfile/gfile_petitfs_diskio_chibios.c index 7708ac20..d313e695 100644 --- a/src/gfile/gfile_petitfs_diskio_chibios.c +++ b/src/gfile/gfile_petitfs_diskio_chibios.c @@ -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" @@ -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 diff --git a/src/gfile/gfile_petitfs_wrapper.c b/src/gfile/gfile_petitfs_wrapper.c index 2536a180..ea39d9f2 100644 --- a/src/gfile/gfile_petitfs_wrapper.c +++ b/src/gfile/gfile_petitfs_wrapper.c @@ -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 |