modules/minfs/minfs.c File Reference

#include <string.h>
#include "minfs.h"

Defines

#define BE_SWAP_16(val)
#define BE_SWAP_32(val)
#define LE_GET(dst, p_src, len)
#define LE_SET(p_dst, src, len)
#define TC_SET(p_dst, src, len)
#define TC_GET(dst, p_src, len)
#define CALC_PEC(p_buf, data_len, pec_val_inttype, pec_val)
#define MINFS_RW_MODE_READ   0
#define MINFS_RW_MODE_WRITE   1

Functions

int32_t MINFS_Read (MINFS_fs_t *p_fs, MINFS_block_buf_t *p_block_buf, uint16_t data_offset, uint16_t data_len)
int32_t MINFS_Write (MINFS_fs_t *p_fs, MINFS_block_buf_t *p_block_buf, uint16_t data_offset, uint16_t data_len)
int32_t MINFS_GetBlockBuffer (MINFS_fs_t *p_fs, MINFS_block_buf_t **pp_block_buf, uint32_t block_n, uint32_t file_id)
int32_t MINFS_InitBlockBuffer (MINFS_block_buf_t *p_block_buf)
int32_t MINFS_FlushBlockBuffer (MINFS_fs_t *p_fs, MINFS_block_buf_t *p_block_buf)
int32_t MINFS_Format (MINFS_fs_t *p_fs, MINFS_block_buf_t *p_block_buf)
int32_t MINFS_FSOpen (MINFS_fs_t *p_fs, MINFS_block_buf_t *p_block_buf)
int32_t MINFS_FileOpen (MINFS_fs_t *p_fs, uint32_t file_id, MINFS_file_t *p_file, MINFS_block_buf_t *p_block_buf)
int32_t MINFS_FileRead (MINFS_file_t *p_file, void *p_buf, uint32_t *p_len, MINFS_block_buf_t *p_block_buf)
int32_t MINFS_FileWrite (MINFS_file_t *p_file, void *p_buf, uint32_t len, MINFS_block_buf_t *p_block_buf)
int32_t MINFS_FileSeek (MINFS_file_t *p_file, uint32_t pos, MINFS_block_buf_t *p_block_buf)
int32_t MINFS_FileSetSize (MINFS_file_t *p_file, uint32_t new_size, MINFS_block_buf_t *p_block_buf)
int32_t MINFS_FileTouch (MINFS_fs_t *p_fs, uint32_t file_id, MINFS_block_buf_t *p_block_buf)
int32_t MINFS_FileUnlink (MINFS_fs_t *p_fs, uint32_t file_id, uint8_t check_last_truncate, MINFS_block_buf_t *p_block_buf)
int32_t MINFS_FileMove (MINFS_fs_t *p_fs, uint32_t src_file_id, uint32_t dst_file_id, uint8_t check_last_truncate, MINFS_block_buf_t *p_block_buf)
int32_t MINFS_FileExists (MINFS_fs_t *p_fs, uint32_t file_id, MINFS_block_buf_t *p_block_buf)
int32_t MINFS_FileGetFreeID (MINFS_fs_t *p_fs, uint8_t mode, MINFS_block_buf_t *p_block_buf)
int32_t MINFS_FileIndexTruncate (MINFS_fs_t *p_fs, MINFS_block_buf_t *p_block_buf)

Define Documentation

#define BE_SWAP_16 ( val   ) 
Value:
if( *( (uint8_t*)(&BECV) ) == 0 ){ \
  *(uint8_t*)(&val) ^= *(uint8_t*)(&val + 1); \
  *(uint8_t*)(&val + 1) ^= *(uint8_t*)(&val); \
  *(uint8_t*)(&val) ^= *(uint8_t*)(&val + 1); \
}
#define BE_SWAP_32 ( val   ) 
Value:
if( *( (uint8_t*)(&BECV) ) == 0 ){ \
  *(uint8_t*)(&val) ^= *(uint8_t*)(&val + 3); \
  *(uint8_t*)(&val + 3) ^= *(uint8_t*)(&val); \
  *(uint8_t*)(&val) ^= *(uint8_t*)(&val + 3); \
  *(uint8_t*)(&val + 1) ^= *(uint8_t*)(&val + 2); \
  *(uint8_t*)(&val + 2) ^= *(uint8_t*)(&val + 1); \
  *(uint8_t*)(&val + 1) ^= *(uint8_t*)(&val + 2); \
}
#define CALC_PEC ( p_buf,
data_len,
pec_val_inttype,
pec_val   ) 
Value:
{\
  pec_val_inttype * p_val;\
  for( p_val = (pec_val_inttype*) p_buf ; (uint8_t*)p_val < ( (uint8_t*)p_buf + data_len); p_val++ )\
    pec_val ^= *p_val;\
}
#define LE_GET ( dst,
p_src,
len   ) 
Value:
{ \
  dst = *( (uint8_t*) (p_src)  ); \
  if( len > 1 ) \
    dst |= (uint16_t)( *( (uint8_t*) (p_src + 1)  ) ) << 8; \
  if( len > 2 ) \
    dst |= (uint32_t)( *( (uint8_t*) (p_src + 2)  ) ) << 16; \
  if( len > 3 ) \
    dst |= (uint32_t)( *( (uint8_t*) (p_src + 3)  ) ) << 24; \
}
#define LE_SET ( p_dst,
src,
len   ) 
Value:
{ \
  *( (uint8_t*)p_dst ) = (uint8_t)src; \
  if( len > 1 ) \
    *( (uint8_t*)(p_dst + 1) ) |= (uint8_t)( src >> 8 ); \
  if( len > 2 ) \
    *( (uint8_t*)(p_dst + 2) ) |= (uint8_t)( src >> 16 ); \
  if( len > 3 ) \
    *( (uint8_t*)(p_dst + 3) ) |= (uint8_t)( src >> 24 ); \
}
#define MINFS_RW_MODE_READ   0
#define MINFS_RW_MODE_WRITE   1
#define TC_GET ( dst,
p_src,
len   ) 
Value:
{ \
  if( len > 2 ) \
    (uint32_t)dst = *((uint32_t*)p_src); \
  else if( len > 1 ) \
    (uint16_t)dst = *((uint16_t*)p_src); \
  else \
    (uint8_t)dst = *((uint8_t*)p_src); \
}
#define TC_SET ( p_dst,
src,
len   ) 
Value:
{ \
  if( len > 2 ) \
    *((uint32_t*)p_dst) = (uint32_t)src; \
  else if( len > 1 ) \
    *((uint16_t*)p_dst) = (uint16_t)src; \
  else \
    *((uint8_t*)p_dst) = (uint8_t)src; \
}

Function Documentation

int32_t MINFS_FileExists ( MINFS_fs_t p_fs,
uint32_t  file_id,
MINFS_block_buf_t p_block_buf 
)
int32_t MINFS_FileGetFreeID ( MINFS_fs_t p_fs,
uint8_t  mode,
MINFS_block_buf_t p_block_buf 
)
int32_t MINFS_FileIndexTruncate ( MINFS_fs_t p_fs,
MINFS_block_buf_t p_block_buf 
)
int32_t MINFS_FileMove ( MINFS_fs_t p_fs,
uint32_t  src_file_id,
uint32_t  dst_file_id,
uint8_t  check_last_truncate,
MINFS_block_buf_t p_block_buf 
)
int32_t MINFS_FileOpen ( MINFS_fs_t p_fs,
uint32_t  file_id,
MINFS_file_t p_file,
MINFS_block_buf_t p_block_buf 
)
int32_t MINFS_FileRead ( MINFS_file_t p_file,
void *  p_buf,
uint32_t *  p_len,
MINFS_block_buf_t p_block_buf 
)
int32_t MINFS_FileSeek ( MINFS_file_t p_file,
uint32_t  pos,
MINFS_block_buf_t p_block_buf 
)
int32_t MINFS_FileSetSize ( MINFS_file_t p_file,
uint32_t  new_size,
MINFS_block_buf_t p_block_buf 
)
int32_t MINFS_FileTouch ( MINFS_fs_t p_fs,
uint32_t  file_id,
MINFS_block_buf_t p_block_buf 
)
int32_t MINFS_FileUnlink ( MINFS_fs_t p_fs,
uint32_t  file_id,
uint8_t  check_last_truncate,
MINFS_block_buf_t p_block_buf 
)
int32_t MINFS_FileWrite ( MINFS_file_t p_file,
void *  p_buf,
uint32_t  len,
MINFS_block_buf_t p_block_buf 
)
int32_t MINFS_FlushBlockBuffer ( MINFS_fs_t p_fs,
MINFS_block_buf_t p_block_buf 
)
int32_t MINFS_Format ( MINFS_fs_t p_fs,
MINFS_block_buf_t p_block_buf 
)
int32_t MINFS_FSOpen ( MINFS_fs_t p_fs,
MINFS_block_buf_t p_block_buf 
)
int32_t MINFS_GetBlockBuffer ( MINFS_fs_t p_fs,
MINFS_block_buf_t **  pp_block_buf,
uint32_t  block_n,
uint32_t  file_id 
)
int32_t MINFS_InitBlockBuffer ( MINFS_block_buf_t p_block_buf  ) 
int32_t MINFS_Read ( MINFS_fs_t p_fs,
MINFS_block_buf_t p_block_buf,
uint16_t  data_offset,
uint16_t  data_len 
)
int32_t MINFS_Write ( MINFS_fs_t p_fs,
MINFS_block_buf_t p_block_buf,
uint16_t  data_offset,
uint16_t  data_len 
)

Generated on 22 Jan 2016 for MIOS32 by  doxygen 1.6.1