X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fio%2Fkblock.h;h=9ac358ce37e34e01122a924c55018fea8de2b2ca;hb=b5f1efac2381ba2a14397e0343b097e9f87c363d;hp=8d68c8e9eca3cd496d7f676ea2f72ca93daa143d;hpb=cfc73a72ca67287393bc749c9ee1f72fdd236920;p=bertos.git diff --git a/bertos/io/kblock.h b/bertos/io/kblock.h index 8d68c8e9..9ac358ce 100644 --- a/bertos/io/kblock.h +++ b/bertos/io/kblock.h @@ -33,6 +33,8 @@ * \author Francesco Sacchi * * \brief KBlock interface + * + * $WIZ$ module_name = "kblock" */ #ifndef IO_KBLOCK_H @@ -90,9 +92,13 @@ typedef struct KBlockVTable } KBlockVTable; -#define KB_BUFFERED BV(0) ///< Internal flag: true if the KBlock has a buffer -#define KB_CACHE_DIRTY BV(1) ///< Internal flag: true if the cache is dirty -#define KB_PARTIAL_WRITE BV(2) ///< Internal flag: true if the device allows partial block write +#define KB_BUFFERED BV(0) ///< Internal flag: true if the KBlock has a buffer +#define KB_CACHE_DIRTY BV(1) ///< Internal flag: true if the cache is dirty +#define KB_PARTIAL_WRITE BV(2) ///< Internal flag: true if the device allows partial block write + +#define KB_WRITE_ONCE BV(3) ///< Allow only the one write on select block. +#define KB_OPEN_BUFF BV(4) ///< Open flash memory using page caching, allowing the modification and partial write. +#define KB_OPEN_UNBUFF BV(5) ///< Open flash memory whitout memory caching. /** * KBlock private members. @@ -362,5 +368,6 @@ int kblock_swLoad(struct KBlock *b, block_idx_t index); int kblock_swStore(struct KBlock *b, block_idx_t index); size_t kblock_swReadBuf(struct KBlock *b, void *buf, size_t offset, size_t size); size_t kblock_swWriteBuf(struct KBlock *b, const void *buf, size_t offset, size_t size); +int kblock_swClose(struct KBlock *b); #endif /* IO_KBLOCK_H */