X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fdrv%2Fflash.h;h=da1fa80143251cdcaf320d7a7457c69e23f4b36e;hb=7e47a16bacc0dc5e081a088d4b509d0f07875e16;hp=461b67c47fda21af2b62fc0d50568cef1ae1965d;hpb=5b122604bb8703795a58a34834accf7c910cf932;p=bertos.git diff --git a/bertos/drv/flash.h b/bertos/drv/flash.h index 461b67c4..da1fa801 100644 --- a/bertos/drv/flash.h +++ b/bertos/drv/flash.h @@ -37,6 +37,7 @@ * * $WIZ$ module_name = "flash" * $WIZ$ module_depends = "kfile", "kfile_block", "kblock" +* $WIZ$ module_configuration = "bertos/cfg/cfg_emb_flash.h" */ #ifndef DRV_FLASH_H @@ -54,9 +55,9 @@ #include #if COMPILER_C99 - #define flash_init(...) PP_CAT(flash_init ## _, COUNT_PARMS(__VA_ARGS__)) (__VA_ARGS__) + #define flash_init(...) PP_CAT(flash_init_, COUNT_PARMS(__VA_ARGS__)) (__VA_ARGS__) #else - #define flash_init(args...) PP_CAT(flash_init ## _, COUNT_PARMS(args)) (args) + #define flash_init(args...) PP_CAT(flash_init_, COUNT_PARMS(args)) (args) #endif /* @@ -91,7 +92,7 @@ typedef struct Flash #define KBT_FLASH MAKE_ID('F', 'L', 'A', 'S') /** -* Convert + ASSERT from generic KFile to Flash. +* Convert + ASSERT from generic KBlock to Flash. */ INLINE Flash *FLASH_CAST(KBlock *fls) { @@ -104,7 +105,10 @@ void flash_hw_initUnbuffered(Flash *fls, int flags); #include CPU_HEADER(flash) -#define flash_init_2(fls, flags) (flags & KB_OPEN_UNBUFF) ? \ +#define FLASH_WRITE_ONCE BV(0) ///< Allow only one write per block. +#define FLASH_BUFFERED BV(1) ///< Open flash memory using page caching, allowing the modification and partial write. + +#define flash_init_2(fls, flags) (flags & FLASH_BUFFERED) ? \ flash_hw_initUnbuffered(fls, flags) : flash_hw_init(fls, flags) #if !CONFIG_FLASH_DISABLE_OLD_API @@ -115,7 +119,4 @@ INLINE DEPRECATED void flash_init_1(Flash *fls) } #endif /* !CONFIG_FLASH_DISABLE_OLD_API */ -#include CPU_HEADER(flash) - #endif /* DRV_FLASH_H */ -