亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? cciss_ioctl.h

?? umon bootloader source code, support mips cpu.
?? H
字號:
#ifndef CCISS_IOCTLH
#define CCISS_IOCTLH

#include <linux/types.h>
#include <linux/ioctl.h>

#define CCISS_IOC_MAGIC 'B'


typedef struct _cciss_pci_info_struct
{
	unsigned char 	bus;
	unsigned char 	dev_fn;
	__u32 		board_id;
} cciss_pci_info_struct; 

typedef struct _cciss_coalint_struct
{
	__u32  delay;
	__u32  count;
} cciss_coalint_struct;

typedef char NodeName_type[16];

typedef __u32 Heartbeat_type;

#define CISS_PARSCSIU2 	0x0001
#define CISS_PARCSCIU3 	0x0002
#define CISS_FIBRE1G	0x0100
#define CISS_FIBRE2G	0x0200
typedef __u32 BusTypes_type;

typedef char FirmwareVer_type[4];
typedef __u32 DriverVer_type;

#define MAX_KMALLOC_SIZE 128000

#ifndef CCISS_CMD_H
// This defines are duplicated in cciss_cmd.h in the driver directory 

//general boundary defintions
#define SENSEINFOBYTES          32//note that this value may vary between host implementations

//Command Status value
#define CMD_SUCCESS             0x0000
#define CMD_TARGET_STATUS       0x0001
#define CMD_DATA_UNDERRUN       0x0002
#define CMD_DATA_OVERRUN        0x0003
#define CMD_INVALID             0x0004
#define CMD_PROTOCOL_ERR        0x0005
#define CMD_HARDWARE_ERR        0x0006
#define CMD_CONNECTION_LOST     0x0007
#define CMD_ABORTED             0x0008
#define CMD_ABORT_FAILED        0x0009
#define CMD_UNSOLICITED_ABORT   0x000A
#define CMD_TIMEOUT             0x000B
#define CMD_UNABORTABLE		0x000C

//transfer direction
#define XFER_NONE               0x00
#define XFER_WRITE              0x01
#define XFER_READ               0x02
#define XFER_RSVD               0x03

//task attribute
#define ATTR_UNTAGGED           0x00
#define ATTR_SIMPLE             0x04
#define ATTR_HEADOFQUEUE        0x05
#define ATTR_ORDERED            0x06
#define ATTR_ACA                0x07

//cdb type
#define TYPE_CMD				0x00
#define TYPE_MSG				0x01

// Type defs used in the following structs
#define BYTE __u8
#define WORD __u16
#define HWORD __u16
#define DWORD __u32

#define CISS_MAX_LUN	16	

#define LEVEL2LUN   1   // index into Target(x) structure, due to byte swapping
#define LEVEL3LUN   0

#pragma pack(1)

//Command List Structure
typedef union _SCSI3Addr_struct {
   struct {
    BYTE Dev;
    BYTE Bus:6;
    BYTE Mode:2;        // b00
  } PeripDev;
   struct {
    BYTE DevLSB;
    BYTE DevMSB:6;
    BYTE Mode:2;        // b01
  } LogDev;
   struct {
    BYTE Dev:5;
    BYTE Bus:3;
    BYTE Targ:6;
    BYTE Mode:2;        // b10
  } LogUnit;
} SCSI3Addr_struct;

typedef struct _PhysDevAddr_struct {
  DWORD             TargetId:24;
  DWORD             Bus:6;
  DWORD             Mode:2;
  SCSI3Addr_struct  Target[2]; //2 level target device addr
} PhysDevAddr_struct;
  
typedef struct _LogDevAddr_struct {
  DWORD            VolId:30;
  DWORD            Mode:2;
  BYTE             reserved[4];
} LogDevAddr_struct;

typedef union _LUNAddr_struct {
  BYTE               LunAddrBytes[8];
  SCSI3Addr_struct   SCSI3Lun[4];
  PhysDevAddr_struct PhysDev;
  LogDevAddr_struct  LogDev;
} LUNAddr_struct;

typedef struct _RequestBlock_struct {
  BYTE   CDBLen;
  struct {
    BYTE Type:3;
    BYTE Attribute:3;
    BYTE Direction:2;
  } Type;
  HWORD  Timeout;
  BYTE   CDB[16];
} RequestBlock_struct;

typedef union _MoreErrInfo_struct{
  struct {
    BYTE  Reserved[3];
    BYTE  Type;
    DWORD ErrorInfo;
  }Common_Info;
  struct{
    BYTE  Reserved[2];
    BYTE  offense_size;//size of offending entry
    BYTE  offense_num; //byte # of offense 0-base
    DWORD offense_value;
  }Invalid_Cmd;
}MoreErrInfo_struct;
typedef struct _ErrorInfo_struct {
  BYTE               ScsiStatus;
  BYTE               SenseLen;
  HWORD              CommandStatus;
  DWORD              ResidualCnt;
  MoreErrInfo_struct MoreErrInfo;
  BYTE               SenseInfo[SENSEINFOBYTES];
} ErrorInfo_struct;

#pragma pack()
#endif /* CCISS_CMD_H */ 

typedef struct _IOCTL_Command_struct {
  LUNAddr_struct	   LUN_info;
  RequestBlock_struct      Request;
  ErrorInfo_struct  	   error_info; 
  WORD			   buf_size;  /* size in bytes of the buf */
  BYTE			   __user *buf;
} IOCTL_Command_struct;

typedef struct _BIG_IOCTL_Command_struct {
  LUNAddr_struct	   LUN_info;
  RequestBlock_struct      Request;
  ErrorInfo_struct  	   error_info;
  DWORD			   malloc_size; /* < MAX_KMALLOC_SIZE in cciss.c */
  DWORD			   buf_size;    /* size in bytes of the buf */
  				        /* < malloc_size * MAXSGENTRIES */
  BYTE			   __user *buf;
} BIG_IOCTL_Command_struct;

typedef struct _LogvolInfo_struct{
	__u32	LunID;
	int	num_opens;  /* number of opens on the logical volume */
	int	num_parts;  /* number of partitions configured on logvol */
} LogvolInfo_struct;

#define CCISS_GETPCIINFO _IOR(CCISS_IOC_MAGIC, 1, cciss_pci_info_struct)

#define CCISS_GETINTINFO _IOR(CCISS_IOC_MAGIC, 2, cciss_coalint_struct)
#define CCISS_SETINTINFO _IOW(CCISS_IOC_MAGIC, 3, cciss_coalint_struct)

#define CCISS_GETNODENAME _IOR(CCISS_IOC_MAGIC, 4, NodeName_type)
#define CCISS_SETNODENAME _IOW(CCISS_IOC_MAGIC, 5, NodeName_type)

#define CCISS_GETHEARTBEAT _IOR(CCISS_IOC_MAGIC, 6, Heartbeat_type)
#define CCISS_GETBUSTYPES  _IOR(CCISS_IOC_MAGIC, 7, BusTypes_type)
#define CCISS_GETFIRMVER   _IOR(CCISS_IOC_MAGIC, 8, FirmwareVer_type)
#define CCISS_GETDRIVVER   _IOR(CCISS_IOC_MAGIC, 9, DriverVer_type)
#define CCISS_REVALIDVOLS  _IO(CCISS_IOC_MAGIC, 10)
#define CCISS_PASSTHRU	   _IOWR(CCISS_IOC_MAGIC, 11, IOCTL_Command_struct)
#define CCISS_DEREGDISK	   _IO(CCISS_IOC_MAGIC, 12)

/* no longer used... use REGNEWD instead */ 
#define CCISS_REGNEWDISK  _IOW(CCISS_IOC_MAGIC, 13, int)

#define CCISS_REGNEWD	   _IO(CCISS_IOC_MAGIC, 14)
#define CCISS_RESCANDISK   _IO(CCISS_IOC_MAGIC, 16)
#define CCISS_GETLUNINFO   _IOR(CCISS_IOC_MAGIC, 17, LogvolInfo_struct)
#define CCISS_BIG_PASSTHRU _IOWR(CCISS_IOC_MAGIC, 18, BIG_IOCTL_Command_struct)

#ifdef __KERNEL__
#ifdef CONFIG_COMPAT

/* 32 bit compatible ioctl structs */
typedef struct _IOCTL32_Command_struct {
  LUNAddr_struct	   LUN_info;
  RequestBlock_struct      Request;
  ErrorInfo_struct  	   error_info;
  WORD			   buf_size;  /* size in bytes of the buf */
  __u32			   buf; /* 32 bit pointer to data buffer */
} IOCTL32_Command_struct;

typedef struct _BIG_IOCTL32_Command_struct {
  LUNAddr_struct	   LUN_info;
  RequestBlock_struct      Request;
  ErrorInfo_struct  	   error_info;
  DWORD			   malloc_size; /* < MAX_KMALLOC_SIZE in cciss.c */
  DWORD			   buf_size;    /* size in bytes of the buf */
  				        /* < malloc_size * MAXSGENTRIES */
  __u32 		buf;	/* 32 bit pointer to data buffer */
} BIG_IOCTL32_Command_struct;

#define CCISS_PASSTHRU32   _IOWR(CCISS_IOC_MAGIC, 11, IOCTL32_Command_struct)
#define CCISS_BIG_PASSTHRU32 _IOWR(CCISS_IOC_MAGIC, 18, BIG_IOCTL32_Command_struct)

#endif /* CONFIG_COMPAT */
#endif /* __KERNEL__ */
#endif  

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人精品亚洲日本在线桃色| 激情综合五月天| 午夜欧美2019年伦理| 韩国av一区二区三区| 一本久道中文字幕精品亚洲嫩| 在线91免费看| 亚洲欧洲中文日韩久久av乱码| 久久精品国产亚洲一区二区三区 | 成人免费毛片片v| 欧美精品在线观看播放| 国产精品午夜久久| 狠狠色丁香久久婷婷综合_中 | 精品亚洲porn| 欧美午夜片在线观看| 国产精品美女久久久久久久| 乱一区二区av| 欧美日韩一级片在线观看| 亚洲色图在线播放| 成人app在线| 久久精品在线免费观看| 美国毛片一区二区| 这里只有精品视频在线观看| 亚洲天堂a在线| 成人在线综合网| 国产亚洲一区二区三区四区 | 国产精品五月天| 国产又黄又大久久| 精品国产乱码久久久久久影片| 亚洲超碰精品一区二区| 欧美亚洲愉拍一区二区| 亚洲精选免费视频| 一本色道久久综合亚洲91| 国产精品亲子伦对白| 国产精品乡下勾搭老头1| 欧美mv和日韩mv国产网站| 日本成人在线电影网| 欧美一区二区三区白人| 午夜精品久久一牛影视| 欧美人体做爰大胆视频| 日韩成人av影视| 日韩欧美国产综合| 国产真实精品久久二三区| 精品sm在线观看| 国产河南妇女毛片精品久久久| 久久女同互慰一区二区三区| 国产精品一区二区在线播放| 国产色一区二区| 不卡高清视频专区| 喷水一区二区三区| 精品国产乱码久久久久久图片| 国产一区二区三区在线观看精品| 久久精品综合网| 91麻豆产精品久久久久久 | 一区二区三区四区蜜桃| 在线观看日产精品| 日本怡春院一区二区| 久久精品久久久精品美女| 色先锋资源久久综合| 亚洲欧美国产三级| 成人激情午夜影院| 亚洲欧美aⅴ...| 欧美视频一区二区三区四区| 亚洲第一福利视频在线| 欧美成人aa大片| 国产综合色精品一区二区三区| 国产精品女上位| 在线一区二区视频| 日韩国产一二三区| 久久婷婷久久一区二区三区| 91一区二区在线| 天天综合色天天综合色h| 精品日韩成人av| 不卡的av电影在线观看| 午夜久久久久久| 久久久久久久综合日本| 色婷婷久久久综合中文字幕| 久久超碰97中文字幕| 最新久久zyz资源站| 欧美精品日韩精品| 国产.精品.日韩.另类.中文.在线.播放 | 欧美精品一区二区三区蜜桃视频 | 日日夜夜精品视频免费| 精品粉嫩超白一线天av| 色综合久久久久综合体| 蜜桃视频一区二区三区在线观看| 中文字幕一区在线观看| 欧美一级生活片| 91免费版在线看| 国产在线播放一区| 香蕉久久一区二区不卡无毒影院| 久久婷婷综合激情| 欧美一级高清片| 91老司机福利 在线| 国产一区美女在线| 五月婷婷久久丁香| 日韩毛片在线免费观看| 久久夜色精品国产噜噜av| 欧美理论片在线| 91蝌蚪国产九色| 国产成人精品一区二| 久久激五月天综合精品| 亚洲成人精品影院| 亚洲私人影院在线观看| 国产三级欧美三级| 26uuu欧美日本| 日韩一区二区三区三四区视频在线观看| 波多野结衣一区二区三区| 激情综合色播激情啊| 婷婷综合五月天| 亚洲精选视频免费看| 综合久久久久久| 国产精品毛片大码女人| 久久久www成人免费毛片麻豆| 欧美一区二区三区在线视频| 欧美在线影院一区二区| 91色综合久久久久婷婷| 国产精品18久久久久| 免费成人深夜小野草| 日韩精彩视频在线观看| 日韩中文字幕区一区有砖一区 | 在线观看av一区二区| 成人av在线看| 成人免费视频app| 国产成人亚洲综合a∨婷婷图片| 裸体一区二区三区| 免费一级片91| 蜜桃av噜噜一区| 日韩中文字幕不卡| 亚洲成人av一区| 亚洲18影院在线观看| 五月天亚洲婷婷| 亚洲成人av一区| 日韩精品免费视频人成| 日本欧美一区二区在线观看| 人人狠狠综合久久亚洲| 精品一区二区久久久| 国产精品一区二区你懂的| 丁香婷婷综合五月| 91年精品国产| 一本一道波多野结衣一区二区| 色偷偷88欧美精品久久久| 欧美伊人久久大香线蕉综合69| 欧美日韩精品久久久| 欧美一区二区在线视频| 欧美成人bangbros| 国产精品日产欧美久久久久| 亚洲欧美另类小说视频| 亚洲v日本v欧美v久久精品| 免费成人你懂的| 国产成人av网站| 99精品欧美一区二区三区小说 | 亚洲激情中文1区| 天堂资源在线中文精品| 韩国视频一区二区| 97精品视频在线观看自产线路二| 国产三区在线成人av| ...中文天堂在线一区| 亚洲123区在线观看| 国产一区二区女| 91电影在线观看| 日韩精品一区二区三区三区免费| 亚洲国产精品传媒在线观看| 一区二区三区中文字幕电影| 狠狠色丁香久久婷婷综合_中| 99久久国产综合精品麻豆| 717成人午夜免费福利电影| 久久精品一区八戒影视| 午夜久久久久久电影| 成人免费高清视频| 日韩午夜激情电影| 一区二区三区中文字幕精品精品 | 欧美一区二区在线视频| 日韩理论片在线| 精品亚洲成a人| 欧美另类videos死尸| 亚洲天堂中文字幕| 国产精品中文字幕欧美| 欧美肥妇free| 一区二区三区四区激情| 成人性生交大片免费看视频在线 | 免费观看成人鲁鲁鲁鲁鲁视频| 99久久综合99久久综合网站| 欧美大片日本大片免费观看| 亚洲男同性视频| 国产成人精品综合在线观看 | 国产欧美日韩另类视频免费观看| 日日欢夜夜爽一区| 欧美性色综合网| 亚洲人成电影网站色mp4| 丁香五精品蜜臀久久久久99网站| 日韩精品在线一区| 蜜臀91精品一区二区三区| 在线精品视频免费播放| 最近日韩中文字幕| 99re热视频这里只精品| 国产日韩欧美a| 精一区二区三区| 欧美成人vr18sexvr| 久久狠狠亚洲综合| 欧美一区二区播放|