X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fdrv%2Fflash.h;h=461b67c47fda21af2b62fc0d50568cef1ae1965d;hb=5b122604bb8703795a58a34834accf7c910cf932;hp=9552a2e6a7b76172b780610176db5dad7509014f;hpb=2cf89a4723de15eadeeba8f8453170c94b19d496;p=bertos.git diff --git a/bertos/drv/flash.h b/bertos/drv/flash.h index 9552a2e6..461b67c4 100644 --- a/bertos/drv/flash.h +++ b/bertos/drv/flash.h @@ -51,6 +51,14 @@ #include #include +#include + +#if COMPILER_C99 + #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) +#endif + /* * Embedded flash error flags */ @@ -91,24 +99,21 @@ INLINE Flash *FLASH_CAST(KBlock *fls) return (Flash *)fls; } -void flash_hw_init(Flash *fls); -void flash_hw_initUnbuffered(Flash *fls); +void flash_hw_init(Flash *fls, int flags); +void flash_hw_initUnbuffered(Flash *fls, int flags); #include CPU_HEADER(flash) -INLINE void flash_init(Flash *fls) -{ - flash_hw_init(fls); - - #if !CONFIG_FLASH_DISABLE_OLD_API - kfileblock_init(&fls->fdblk, &fls->blk); - #endif /* !CONFIG_FLASH_DISABLE_OLD_API */ -} +#define flash_init_2(fls, flags) (flags & KB_OPEN_UNBUFF) ? \ + flash_hw_initUnbuffered(fls, flags) : flash_hw_init(fls, flags) -INLINE void flash_initUnbuffered(Flash *fls) +#if !CONFIG_FLASH_DISABLE_OLD_API +INLINE DEPRECATED void flash_init_1(Flash *fls) { - flash_hw_initUnbuffered(fls); + flash_hw_init(fls, 0); + kfileblock_init(&fls->fdblk, &fls->blk); } +#endif /* !CONFIG_FLASH_DISABLE_OLD_API */ #include CPU_HEADER(flash)