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

📄 i91uscsi.h

📁 linux和2410结合开发 用他可以生成2410所需的zImage文件
💻 H
📖 第 1 页 / 共 3 页
字号:
#define TSS_SEQ_ACTIVE  0x40	/* Sequencer active             */#define TSS_XFER_CNT    0x20	/* Transfer counter zero        */#define TSS_FIFO_EMPTY  0x10	/* FIFO empty                   */#define TSS_PAR_ERROR   0x08	/* SCSI parity error            */#define TSS_PH_MASK     0x07	/* SCSI phase mask              *//*----------------------------------------------------------------------*//* bit definition for Tulip SCSI Status 1 Register                      *//*----------------------------------------------------------------------*/#define TSS_STATUS_RCV  0x08	/* Status received              */#define TSS_MSG_SEND    0x40	/* Message sent                 */#define TSS_CMD_PH_CMP  0x20	/* command phase done              */#define TSS_DATA_PH_CMP 0x10	/* Data phase done              */#define TSS_STATUS_SEND 0x08	/* Status sent                  */#define TSS_XFER_CMP    0x04	/* Transfer completed           */#define TSS_SEL_CMP     0x02	/* Selection completed          */#define TSS_ARB_CMP     0x01	/* Arbitration completed        *//*----------------------------------------------------------------------*//* bit definition for Tulip SCSI Status 2 Register                      *//*----------------------------------------------------------------------*/#define TSS_CMD_ABTED   0x80	/* Command aborted              */#define TSS_OFFSET_0    0x40	/* Offset counter zero          */#define TSS_FIFO_FULL   0x20	/* FIFO full                    */#define TSS_TIMEOUT_0   0x10	/* Timeout counter zero         */#define TSS_BUSY_RLS    0x08	/* Busy release                 */#define TSS_PH_MISMATCH 0x04	/* Phase mismatch               */#define TSS_SCSI_BUS_EN 0x02	/* SCSI data bus enable         */#define TSS_SCSIRST     0x01	/* SCSI bus reset in progress   *//*----------------------------------------------------------------------*//* bit definition for Tulip SCSI Interrupt Register                     *//*----------------------------------------------------------------------*/#define TSS_RESEL_INT   0x80	/* Reselected interrupt         */#define TSS_SEL_TIMEOUT 0x40	/* Selected/reselected timeout  */#define TSS_BUS_SERV    0x20#define TSS_SCSIRST_INT 0x10	/* SCSI bus reset detected      */#define TSS_DISC_INT    0x08	/* Disconnected interrupt       */#define TSS_SEL_INT     0x04	/* Select interrupt             */#define TSS_SCAM_SEL    0x02	/* SCAM selected                */#define TSS_FUNC_COMP   0x01/*----------------------------------------------------------------------*//* SCSI Phase Codes.                                                    *//*----------------------------------------------------------------------*/#define DATA_OUT        0#define DATA_IN         1	/* 4                            */#define CMD_OUT         2#define STATUS_IN       3	/* 6                            */#define MSG_OUT         6	/* 3                            */#define MSG_IN          7/*----------------------------------------------------------------------*//* Command Codes of Tulip xfer Command register                         *//*----------------------------------------------------------------------*/#define TAX_X_FORC      0x02#define TAX_X_ABT       0x04#define TAX_X_CLR_FIFO  0x08#define TAX_X_IN        0x21#define TAX_X_OUT       0x01#define TAX_SG_IN       0xA1#define TAX_SG_OUT      0x81/*----------------------------------------------------------------------*//* Tulip Interrupt Register                                             *//*----------------------------------------------------------------------*/#define XCMP            0x01#define FCMP            0x02#define XABT            0x04#define XERR            0x08#define SCMP            0x10#define IPEND           0x80/*----------------------------------------------------------------------*//* Tulip DMA Status Register                                            *//*----------------------------------------------------------------------*/#define XPEND           0x01	/* Transfer pending             */#define FEMPTY          0x02	/* FIFO empty                   *//*----------------------------------------------------------------------*//* bit definition for TUL_GCTRL                                         *//*----------------------------------------------------------------------*/#define EXTSG           0x80#define EXTAD           0x60#define SEG4K           0x08#define EEPRG           0x04#define MRMUL           0x02/*----------------------------------------------------------------------*//* bit definition for TUL_NVRAM                                         *//*----------------------------------------------------------------------*/#define SE2CS           0x08#define SE2CLK          0x04#define SE2DO           0x02#define SE2DI           0x01/************************************************************************//*              Scatter-Gather Element Structure                        *//************************************************************************/typedef struct SG_Struc {	U32 SG_Ptr;		/* Data Pointer */	U32 SG_Len;		/* Data Length */} SG;/***********************************************************************		SCSI Control Block************************************************************************/typedef struct Scsi_Ctrl_Blk {	struct Scsi_Ctrl_Blk *SCB_NxtScb;	UBYTE SCB_Status;	/*4 */	UBYTE SCB_NxtStat;	/*5 */	UBYTE SCB_Mode;		/*6 */	UBYTE SCB_Msgin;	/*7 SCB_Res0 */	UWORD SCB_SGIdx;	/*8 */	UWORD SCB_SGMax;	/*A */#ifdef ALPHA	U32 SCB_Reserved[2];	/*C */#else	U32 SCB_Reserved[3];	/*C */#endif	U32 SCB_XferLen;	/*18 Current xfer len           */	U32 SCB_TotXLen;	/*1C Total xfer len             */	U32 SCB_PAddr;		/*20 SCB phy. Addr. */	UBYTE SCB_Opcode;	/*24 SCB command code */	UBYTE SCB_Flags;	/*25 SCB Flags */	UBYTE SCB_Target;	/*26 Target Id */	UBYTE SCB_Lun;		/*27 Lun */	U32 SCB_BufPtr;		/*28 Data Buffer Pointer */	U32 SCB_BufLen;		/*2C Data Allocation Length */	UBYTE SCB_SGLen;	/*30 SG list # */	UBYTE SCB_SenseLen;	/*31 Sense Allocation Length */	UBYTE SCB_HaStat;	/*32 */	UBYTE SCB_TaStat;	/*33 */	UBYTE SCB_CDBLen;	/*34 CDB Length */	UBYTE SCB_Ident;	/*35 Identify */	UBYTE SCB_TagMsg;	/*36 Tag Message */	UBYTE SCB_TagId;	/*37 Queue Tag */	UBYTE SCB_CDB[12];	/*38 */	U32 SCB_SGPAddr;	/*44 SG List/Sense Buf phy. Addr. */	U32 SCB_SensePtr;	/*48 Sense data pointer */	void (*SCB_Post) (BYTE *, BYTE *);	/*4C POST routine */	unsigned char *SCB_Srb;	/*50 SRB Pointer */	SG SCB_SGList[TOTAL_SG_ENTRY];	/*54 Start of SG list */} SCB;/* Bit Definition for SCB_Status */#define SCB_RENT        0x01#define SCB_PEND        0x02#define SCB_CONTIG      0x04	/* Contigent Allegiance */#define SCB_SELECT      0x08#define SCB_BUSY        0x10#define SCB_DONE        0x20/* Opcodes of SCB_Opcode */#define ExecSCSI        0x1#define BusDevRst       0x2#define AbortCmd        0x3/* Bit Definition for SCB_Mode */#define SCM_RSENS       0x01	/* request sense mode *//* Bit Definition for SCB_Flags */#define SCF_DONE        0x01#define SCF_POST        0x02#define SCF_SENSE       0x04#define SCF_DIR         0x18#define SCF_NO_DCHK     0x00#define SCF_DIN         0x08#define SCF_DOUT        0x10#define SCF_NO_XF       0x18#define SCF_WR_VF       0x20	/* Write verify turn on         */#define SCF_POLL        0x40#define SCF_SG          0x80/* Error Codes for SCB_HaStat */#define HOST_SEL_TOUT   0x11#define HOST_DO_DU      0x12#define HOST_BUS_FREE   0x13#define HOST_BAD_PHAS   0x14#define HOST_INV_CMD    0x16#define HOST_ABORTED    0x1A	/* 07/21/98 */#define HOST_SCSI_RST   0x1B#define HOST_DEV_RST    0x1C/* Error Codes for SCB_TaStat */#define TARGET_CHKCOND  0x02#define TARGET_BUSY     0x08#define QUEUE_FULL	0x28/* SCSI MESSAGE */#define MSG_COMP        0x00#define MSG_EXTEND      0x01#define MSG_SDP         0x02#define MSG_RESTORE     0x03#define MSG_DISC        0x04#define MSG_IDE         0x05#define MSG_ABORT       0x06#define MSG_REJ         0x07#define MSG_NOP         0x08#define MSG_PARITY      0x09#define MSG_LINK_COMP   0x0A#define MSG_LINK_FLAG   0x0B#define MSG_DEVRST      0x0C#define MSG_ABORT_TAG   0x0D/* Queue tag msg: Simple_quque_tag, Head_of_queue_tag, Ordered_queue_tag */#define MSG_STAG        0x20#define MSG_HTAG        0x21#define MSG_OTAG        0x22#define MSG_IGNOREWIDE  0x23#define MSG_IDENT   0x80/***********************************************************************		Target Device Control Structure**********************************************************************/typedef struct Tar_Ctrl_Struc {	UWORD TCS_Flags;	/* 0 */	UBYTE TCS_JS_Period;	/* 2 */	UBYTE TCS_SConfig0;	/* 3 */	UWORD TCS_DrvFlags;	/* 4 */	UBYTE TCS_DrvHead;	/* 6 */	UBYTE TCS_DrvSector;	/* 7 */} TCS;/***********************************************************************		Target Device Control Structure**********************************************************************//* Bit Definition for TCF_Flags */#define TCF_SCSI_RATE           0x0007#define TCF_EN_DISC             0x0008#define TCF_NO_SYNC_NEGO        0x0010#define TCF_NO_WDTR             0x0020#define TCF_EN_255              0x0040#define TCF_EN_START            0x0080#define TCF_WDTR_DONE           0x0100#define TCF_SYNC_DONE           0x0200#define TCF_BUSY                0x0400/* Bit Definition for TCF_DrvFlags */#define TCF_DRV_BUSY            0x01	/* Indicate target busy(driver) */#define TCF_DRV_EN_TAG          0x0800#define TCF_DRV_255_63          0x0400typedef struct I91u_Adpt_Struc {	UWORD ADPT_BIOS;	/* 0 */	UWORD ADPT_BASE;	/* 1 */	UBYTE ADPT_Bus;		/* 2 */	UBYTE ADPT_Device;	/* 3 */	UBYTE ADPT_INTR;	/* 4 */} INI_ADPT_STRUCT;/***********************************************************************	      Host Adapter Control Structure************************************************************************/typedef struct Ha_Ctrl_Struc {	UWORD HCS_Base;		/* 00 */	UWORD HCS_BIOS;		/* 02 */	UBYTE HCS_Intr;		/* 04 */	UBYTE HCS_SCSI_ID;	/* 05 */	UBYTE HCS_MaxTar;	/* 06 */	UBYTE HCS_NumScbs;	/* 07 */	UBYTE HCS_Flags;	/* 08 */	UBYTE HCS_Index;	/* 09 */	UBYTE HCS_HaId;		/* 0A */	UBYTE HCS_Config;	/* 0B */	UWORD HCS_IdMask;	/* 0C */

⌨️ 快捷键说明

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