⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fslowlayer.het

📁 我今天开始上传5份TI、NXP、MTK的手机开发全套资料。希望对大家有很大的帮助
💻 HET
字号:
#ifndef FSLOWLAYER_HET#define FSLOWLAYER_HET/* this structure contains the structures used for complex write command  	*//*------------------------------------------------------------------------------*/typedef struct st_WriteCmd {	union {	    s32		v_SrceIndex;	    ascii * 	p_Srce;	    ascii	v_Value;	} u_Srce;	union {	    s32		v_DestIndex;	    ascii * 	p_Dest;	} u_Dest;	s32 v_Size;	s32 v_SizeCopied;	u32 v_SrceFileId;	u8 v_TypeOfCmd;        MC_PCC_FILL_STRUCT3     } t_WriteCmd;typedef struct st_WriteCmdHeader {	void * 		p_NextWriteCmdHeader;	/* Linked list of write commands */	s16		v_OffsetInFile;		/* Offset of commands in file */	u8		v_NbrCmds;		/* Number of commands which follows */	MC_PCC_FILL_STRUCT1    } t_WriteCmdHeader;typedef struct st_WriteHeader {	struct st_WriteHeader * p_NextWriteHeader;	/* Linked list of write headers */	t_WriteCmdHeader * 	p_NextWriteCmdHeader;	/* Linked list of write command headers */	s32			v_FinalFileSize;	/* Final size of the file */	u32 			v_DestFileId;		/* Destination file ID */#ifdef SYNCHRONOUS_FILE_SYSTEM_FTR        u8                      v_NoDelayFlag;          /* Indicates whether delay accepted */        MC_PCC_FILL_STRUCT3#endif    } t_WriteHeader;typedef struct st_WriteCmdStruct1 {	t_WriteCmdHeader 	s_WriteCmdHeader;	t_WriteCmd		s_WriteCmd[1];		/* Place for commands */    } t_WriteCmdStruct1;typedef struct st_WriteCmdStruct2 {	t_WriteCmdHeader 	s_WriteCmdHeader;	t_WriteCmd		s_WriteCmd[2];		/* Place for commands */    } t_WriteCmdStruct2;typedef struct st_WriteCmdStruct3 {	t_WriteCmdHeader 	s_WriteCmdHeader;	t_WriteCmd		s_WriteCmd[3];		/* Place for commands */    } t_WriteCmdStruct3;typedef struct st_WriteCmdStruct4 {	t_WriteCmdHeader 	s_WriteCmdHeader;	t_WriteCmd		s_WriteCmd[4];		/* Place for commands */    } t_WriteCmdStruct4;/* This structure contains information about a file, this structure is update by 	*//*	Get Object Info command 							*//*--------------------------------------------------------------------------------------*/typedef struct st_ObjectInfo {    /*  t_fs_mod_t s_Mode; */	/* Mode of file ( type, acces permissions Owner Group Other */      s32 v_FileSize;		/* Size of the file */      u32 v_ObjID;		/* ID of the volume manager for the object */      u32 v_DirID;		/* Id of the volume manager for the containing directory */      struct  {	  u32 v_DirExist : 1 ;		/* Directory which contains the object exist *//*	  u32 v_DirRAccess : 1;	 */	/* Directory is read accessible to user *//*	  u32 v_DirWAccess : 1;	 */	/* Directory accessible to create an object *//*	  u32 v_DirXAccess : 1;	 */	/* Directory is search accessible to user */	  u32 v_ObjExist : 1;		/* The object exist */	  u32 v_ObjIsFile : 1;		/* Object is a file else a directory */	  u32 v_ObjIsEmpty:1;		/* Set if object is empty ( directory empty ) *//*	  u32 v_ObjRAccess : 1;	 */	/* The object is read accessible to the user *//*	  u32 v_ObjWAccess : 1;	 */	/* The object is write (file) or create ( dir)							 accessible to the user *//*	  u32 v_ObjXAccess : 1;	 */	/* The object is execute (file) or search (dir) 							accessible to the user */	  u32 v_Unused:24;	} s_FileStatus;      ascii*	p_LastTokenInPath; 		/* Address of last token in path */      u8  	v_SizeOfLastTokenInPath;  	/* Size of last token in path */       MC_PCC_FILL_STRUCT3      /* This parameter must be at end of structure */      u8 a_LowLayerPrivate[ALIGN(FS_SIZE_PRIVATE_DATA)];	/* Private data of lower layer, 								usage vorbid to FS layer */    } t_ObjectInfo;typedef struct st_fsInternalVolInfo {	s32 v_FreeSize;	s32 v_TotalSize;	u32 v_NumberOfFiles;	s32 v_FreeSizeAfterDefrag;	s32 v_MaxFileSizeBeforeDefrag;	s32 v_MaxFileSizeAfterDefrag;	u8  v_State;	MC_PCC_FILL_STRUCT3    } t_fsInternalVolInfo;/* This file contains the structure of the messages of the 	communication with the lower layer of FS */typedef struct st_fs_llGeneric {	u16 			v_Operation;	MC_PCC_FILL_STRUCT2	s32 *			p_Status;	     } t_fs_llGeneric;typedef struct st_fs_llInit {	u16			v_Operation;	MC_PCC_FILL_STRUCT2	s32 *			p_Status;	    } t_fs_llInit;typedef struct st_fs_llRead {	u16 			v_Operation;	MC_PCC_FILL_STRUCT2 	u32 			v_Id;	ascii * 		p_Buff;	u32 			v_FilePosition;	u32			v_Size;	s32 *			p_Status;	     } t_fs_llRead;		 typedef struct st_fs_llUpdateIOBuffConf {	u16 			v_Operation;	MC_PCC_FILL_STRUCT2	u32			v_Size;	t_FileIOBuffMngt *	p_FileIOBuffMngt;	s32 *			p_Status;     } t_fs_llUpdateIOBuffConf;typedef struct st_fs_llWriteComplex {	u16			v_Operation;	MC_PCC_FILL_STRUCT2	s32 *			p_Status;	t_WriteHeader *		p_WriteHeader;     } t_fs_llWriteComplex;typedef struct st_fs_llFOpen {	u16			v_Operation;	MC_PCC_FILL_STRUCT2 	t_ObjectInfo *		p_ObjInfo;	s32 *			p_Status;	u32  			v_Id;    } t_fs_llFOpen;typedef struct st_fs_llFClose {	u16			v_Operation;	MC_PCC_FILL_STRUCT2	u32			v_Id;	s32 *			p_Status;    } t_fs_llFClose;typedef struct st_fs_llFCreate {	u16			v_Operation;	u8 			v_ObjType;	MC_PCC_FILL_STRUCT1 	t_ObjectInfo *		p_ObjInfo;	s32			v_MaxFileSize;	s32 *			p_Status;    } t_fs_llFCreate;  typedef struct st_fs_llFormatVolume {	u16 			v_Operation;	MC_PCC_FILL_STRUCT2	t_fsVolStruct *		p_Volume;	s32 *			p_Status;     } t_fs_llFormatVolume;typedef struct st_fs_llRemove {	u16			v_Operation;	MC_PCC_FILL_STRUCT2 	t_ObjectInfo *		p_ObjInfo;	s32 *			p_Status;     } t_fs_llRemove;typedef struct st_fs_llGetObjInfo {	u16			v_Operation;	MC_PCC_FILL_STRUCT2 	t_ObjectInfo *		p_ObjInfo;	ascii *			p_RestOfPath;	s32 *			p_Status;    } t_fs_llGetObjInfo; typedef struct st_fs_llRename {	u16			v_Operation;	MC_PCC_FILL_STRUCT2	t_ObjectInfo *		p_ObjInfoOld;	ascii *			p_RestOfPathOld;	t_ObjectInfo *		p_ObjInfoNew;	ascii *			p_RestOfPathNew;	s32 *			p_Status;   } t_fs_llRename;typedef struct st_fs_llFFlush {	u16			v_Operation;	MC_PCC_FILL_STRUCT2	u32			v_Id;	s32 *			p_Status;   } t_fs_llFFlush;typedef struct st_fs_llGetVolInfo {	u16			v_Operation;	MC_PCC_FILL_STRUCT2	t_fsInternalVolInfo * 	p_VolumeInfo;	s32 *			p_Status;   } t_fs_llGetVolInfo;typedef struct st_fs_llOpenDir {	u16			v_Operation;	MC_PCC_FILL_STRUCT2	t_ObjectInfo *		p_ObjInfo;	void **			p_FmPrivateDirInfo;	s32 *			p_Status;    } t_fs_llOpenDir;typedef struct st_fs_llReadDir {	u16			v_Operation;	u16			v_Which;	/* Is first or next */	void *			p_FmPrivateDirInfo;	ascii *			p_DirName;        u8 *			p_Found;	s32 *			p_Status;    } t_fs_llReadDir;typedef struct st_fs_llCloseDir {	u16			v_Operation;	MC_PCC_FILL_STRUCT2	void *			p_FmPrivateDirInfo;	s32 *			p_Status;    } t_fs_llCloseDir;typedef struct st_fs_llFreezeUnFreezeVol {	u16			v_Operation;	u8			v_Action;	MC_PCC_FILL_STRUCT1	s32 *			p_Status;    } t_fs_llFreezeUnFreezeVol;typedef struct st_fs_llGetFilesAddr {	u16			v_Operation;	u16			v_Which;	/* Is first or next */	u8			v_Type;	MC_PCC_FILL_STRUCT3	u32			v_Id;	void *			p_FmPrivateDirInfo;	s32 			v_NumbFilesToGet;	t_fssFileAddr **	p_FileAddr;	u32			v_BuffSize;	s32 *			p_NumbOfFiles;	s32 *			p_Status;    } t_fs_llGetFilesAddr;typedef struct st_fs_llGarbageVol {	u16			v_Operation;	u8			v_GarbageMode;	MC_PCC_FILL_STRUCT1	s32 *			p_Status;    } t_fs_llGarbageVol;#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -