初版
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
#ifndef __JLFS_H__
|
||||
#define __JLFS_H__
|
||||
|
||||
#include "typedef.h"
|
||||
|
||||
|
||||
typedef struct {
|
||||
u32 addr; //flash里的绝对地址
|
||||
u32 size; //文件大小
|
||||
u32 pos; //操作的偏移量
|
||||
u32 res; //预留参数
|
||||
} JLFS_FILE;
|
||||
|
||||
struct jlfs_flash_head {
|
||||
u16 head_crc;
|
||||
u16 size4burner;
|
||||
char vid[4];
|
||||
u32 flash_size;
|
||||
u8 fs_version;
|
||||
u8 BlockAlignSize;
|
||||
u16 SpecialOptFlag;
|
||||
char pid[16];
|
||||
};
|
||||
|
||||
struct jlfs_file_head {
|
||||
u16 head_crc;
|
||||
u16 data_crc;
|
||||
u32 addr;
|
||||
u32 len;
|
||||
u8 attr;
|
||||
u8 res;
|
||||
u16 index;
|
||||
char name[16];
|
||||
};
|
||||
|
||||
struct jlfs_app_info_head {
|
||||
u16 head_crc;
|
||||
u16 data_crc;
|
||||
u16 encodedata_crc;
|
||||
u16 version;
|
||||
u32 len;
|
||||
u32 reserved;
|
||||
char name[16];
|
||||
};
|
||||
|
||||
|
||||
void *get_global_buffer(u32 size);
|
||||
|
||||
u32 jlfs_get_flash_align_size(void);
|
||||
u32 jlfs_get_flash_app_base_addr(void);
|
||||
u32 jlfs_get_flash_eoffset_size(void);
|
||||
u32 jlfs_get_app_entry_addr(void);
|
||||
u8 *jlfs_get_isd_cfg_ptr(void);
|
||||
u8 jlfs_read_isd_cfg_ini(const char *cfg, void *value);
|
||||
u8 jlfs_mount(void);
|
||||
u8 jlfs_fopen_by_addr(JLFS_FILE *file, u32 addr);
|
||||
u8 jlfs_fopen_by_name(JLFS_FILE *file, const char *name, u8 mode);
|
||||
u32 jlfs_fread(JLFS_FILE *file, u8 *buf, u32 len);
|
||||
u32 jlfs_erase(JLFS_FILE *file, u32 len);
|
||||
u32 jlfs_write(JLFS_FILE *file, u8 *buf, u32 len);
|
||||
void jlfs_fseek(JLFS_FILE *file, u32 offset);
|
||||
void jlfs_get_pid_vid(u8 *pid, u8 *vid);
|
||||
void jlfs_get_bt_mac(u8 *mac);
|
||||
u32 jlfs_get_flen_by_name(const char *name);
|
||||
u32 jlfs_get_idle_bank_info(JLFS_FILE *file, u32 mode);
|
||||
u32 jlfs_updata_dual_bank_info(JLFS_FILE *file, u16 data_crc);
|
||||
/* --------------------------------------------------------------------------*/
|
||||
/**
|
||||
* @brief 选择哪个code跑,必须在 jlfs_mount() 前调用才有效
|
||||
*
|
||||
* @param code_index 0:code0 1:code1 -1:自动切换(原模式) >1的数值会被强制为code0
|
||||
*/
|
||||
/* ----------------------------------------------------------------------------*/
|
||||
void jlfs_dual_bank_choose_code(u8 code_index);
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user