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

📄 fsmdev.h

📁 norflash的文件系统。 用于中低端手机开发的参考
💻 H
字号:
/*****************************************************************************
 
  FILE NAME: FsmDev.h

  DESCRIPTION:

    common definitions for all device.

 Copyright (c) 2002, VIA Technologies, Inc.
*****************************************************************************/


#ifndef __FSM_DEV_H__

#define __FSM_DEV_H__


#include "fsmdefs.h"


/**************************************************
 *
 * For all devices and all device drivers
 *
 **************************************************/

enum
{
	DEV_TYPE_FLASH = 0,
	DEV_TYPE_SD,
	DEV_TYPE_TEST
};


/* Hardware Error Values */
enum
{
	HW_ERR_NONE = 0,
	HW_ERR_PARAM,
	HW_ERR_READ,
	HW_ERR_WRITE,
	HW_ERR_ERASE,
	HW_ERR_SYSTEM,
	HW_ERR_SUSPEND
};


/* Device control command. */
enum
{
	DEV_CTRL_DEVICE_DETACH = 1
};


struct _FSM_DEV_DRV;

typedef /*PACKED*/ struct
{
	/* char				DevName[16];  	 DevName field is not used by now. */

	struct _FSM_DEV_DRV *	DevDrvP;
	uint8					DevType;
	void		  *			MediaObjP;		/* Reserved for File system use. */
} FsmDevObjHdrT;


typedef uint32 (*DEV_READ_FUNCPTR)(FsmDevObjHdrT * , uint8 * , uint32 , uint32 );

typedef uint32 (*DEV_WRITE_FUNCPTR)(FsmDevObjHdrT * , uint8 * , uint32 , uint32 );

typedef uint32 (*DEV_COPY_FUNCPTR)(FsmDevObjHdrT * , uint32 , uint32 , uint32 );

typedef uint32 (*DEV_ERASE_FUNCPTR)(FsmDevObjHdrT * , uint32 );

typedef uint32 (*DEV_CTRL_FUNCPTR)(FsmDevObjHdrT * , uint32 , void *);

typedef uint32 (*DEV_INIT_FUNCPTR)(FsmDevObjHdrT * );


typedef /*PACKED*/ struct _FSM_DEV_DRV
{
	DEV_READ_FUNCPTR		FsmDevRead;
	DEV_WRITE_FUNCPTR		FsmDevWrite;
	DEV_COPY_FUNCPTR		FsmDevCopy;
	DEV_ERASE_FUNCPTR		FsmDevErase;
	DEV_CTRL_FUNCPTR		FsmDevCtrl;
	DEV_INIT_FUNCPTR		FsmDevInit;

	/*
	uint32 (*FsmDevRead)(void * DevObjP, uint8 * buf, uint32 Addr, uint32 length);
	uint32 (*FsmDevWrite)(void * DevObjP, uint8 * buf, uint32 Addr, uint32 length);
	uint32 (*FsmDevCopy)(void * DevObjP, uint32 DstAddr, uint32 SrcAddr, uint32 length);
	uint32 (*FsmDevErase)(void * DevObjP, uint32 Addr);
	uint32 (*FsmDevCtrl)(void * DevObjP, uint32 CtrlCode, void *arg);
	uint32 (*FsmDevInit)(void * DevObjP);
	*/

} FsmDevDrvT;


#define VALIDATE_ADDRESS


#endif /* __FSM_DEV_H__ */

/*****************************************************************************
* $Log: FsmDev.h $
* Revision 1.2  2004/03/17 12:58:33  zgy
* Revision 1.9  2004/03/16 15:59:37  jjs
* Revision 1.8  2004/03/11 15:26:15  jjs
* added copyright info.
* Revision 1.7  2003/11/05 10:25:55  wsm
* Revision 1.6  2003/10/15 18:27:16  jjs
* Revision 1.5  2003/09/14 16:56:18  jjs
* Revision 1.4  2003/09/13 19:42:46  jjs
* Revision 1.3  2003/09/12 12:20:59  jjs
* Revision 1.2  2003/09/09 20:14:26  jjs
* Added pseudo device for test.
* Revision 1.1  2003/09/09 15:09:22  jjs
* Initial revision
*****************************************************************************/


⌨️ 快捷键说明

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