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

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

?? sil3124.h

?? 此驅動程序是SATA功能的PCI卡為例
?? H
字號:
/******************************************************************************
 * File Name:
 *      Sil3124.h
 * Description:
 *      The header file for the Silicon Image Sertial ATA Controller's Windows WDM driver.
 * Revision History:
 *      10-11-07 : Sil3124 1.00
 ******************************************************************************/
//#include <wdm.h>
#include <ntddk.h>
#include "DebugPrint.h"
#include "IoCtl.h"
///////////////////////////////////////////////////////////////////////////////
// structure for ATA commands
typedef UCHAR BYTE;

typedef struct
{
	BYTE status;	// Return status of the function
	BYTE fxdc;      //= BASE+FDC;    //Global Register Address Definitions
	BYTE data;      //= BASE; data register
	BYTE feat_pre;      //= BASE+1; feature register
	BYTE feat_cur;      //= BASE+1; 
	BYTE secc_pre;      //= BASE+2; sector count register
	BYTE secc_cur;      //= BASE+2; 
	BYTE secn_pre;      //= BASE+3; sector number register
	BYTE secn_cur;      //= BASE+3;
	BYTE cyll_pre;      //= BASE+4; cylinder low register
	BYTE cyll_cur;      //= BASE+4;
	BYTE cylh_pre;      //= BASE+5; cylinder high register
	BYTE cylh_cur;      //= BASE+5;
	BYTE devh;      //= BASE+6;	    device/head high register
	BYTE cmnd;	    //= BASE+7      command register
	BYTE rBuf[512*512];
	BYTE wBuf[512*512];
} SATAREG48,*PSATAREG48;

typedef struct
{
	USHORT Control;                       //Control Field
	USHORT ProtocolOverride;              //Protocol Override Field 
	ULONG ReceivedCount;                //Received Transfer Count
	BYTE FISType;                       //FIS Type
	BYTE PMP;                           //PMP
	BYTE Command_Status;               //Command/Status
	BYTE Features_Error;               //features/error
	BYTE SectorNumber;                 //sector number
	BYTE CylLow;                       //cylinder low
	BYTE CylHigh;                      //cylinder high
	BYTE DevHead;                      //device/head
	BYTE SectorNumberExp;              //sector number(Exp)
	BYTE CylLowExp;                    //cylinder low(Exp)
	BYTE CylHighExp;                   //cylinder high(Exp)
	BYTE FeaturesExp;                  //features(Exp)
    BYTE SectorCount;                  //sector count
	BYTE SectorCountExp;               //sector count(Exp)
	BYTE Reserved0;                   //reserved field between Sector Count and Device Control
	BYTE DeviceControl;               //Device Control
	ULONG Reserved1;
	ULONG Reserved2; 
	ULONG SGE0Low;                   //SGE0 data address low
	ULONG SGE0High;                  //SGE0 data address high
	ULONG SGE0Count;                 //SGE0 data count
	ULONG SGE0Control;              //SGE0 control fields including TRM LNK DRD XCF

	ULONG SGE1Low;                  //SGE1 data address low
	ULONG SGE1High;                 //SGE1 data address high
	ULONG SGE1Count;                 //SGE1 data count
	ULONG SGE1Control;               //SGE1 control fields including TRM LNK DRD XCF
} PRB,*pPRB;

typedef struct
{
	ULONG       PortAddress;
    PSATAREG48  SATAREG48Buffer;
} DmaInfo,*pDmaInfo;

typedef struct
{
	ULONG SGE0Low;                   //SGE0 data address low
	ULONG SGE0High;                  //SGE0 data address high
	ULONG SGE0Count;                 //SGE0 data count
	ULONG SGE0Control;              //SGE0 control fields including TRM LNK DRD XCF

	ULONG SGE1Low;                  //SGE1 data address low
	ULONG SGE1High;                 //SGE1 data address high
	ULONG SGE1Count;                 //SGE1 data count
	ULONG SGE1Control;               //SGE1 control fields including TRM LNK DRD XCF

	ULONG SGE2Low;                   //SGE2 data address low
	ULONG SGE2High;                  //SGE2 data address high
	ULONG SGE2Count;                 //SGE2 data count
	ULONG SGE2Control;              //SGE2 control fields including TRM LNK DRD XCF

	ULONG SGE3Low;                  //SGE3 data address low
	ULONG SGE3High;                 //SGE3 data address high
	ULONG SGE3Count;                 //SGE3 data count
	ULONG SGE3Control;               //SGE3 control fields including TRM LNK DRD XCF
} SGTable,*pSGTable;


// Device Extension Structure
typedef struct _DEVICE_EXTENSION 
{
	PDEVICE_OBJECT		pDeviceObject;			// device object this extension belongs to
	PDEVICE_OBJECT		pLowerDeviceObject;		// next lower driver in same stack
	PDEVICE_OBJECT		pPhysicalDeviceObject;	// the PDO

	UNICODE_STRING		InterfaceName;	    	// interface name

	DEVICE_POWER_STATE	DevicePower;			// current device power state
	SYSTEM_POWER_STATE	SystemPower;			// current system power state

	LONG OpenHandleCount;	// Count of open handles

	LONG                Handles;					// # open handles
	BOOLEAN             GotResource;             //whether obtain resources
/////////////////////////////////////////////////////////////////////////////////
//Device Resources
/////////////////////////////////////////////////////////////////////////////////
/********************************************************************************
*Port Resource
*********************************************************************************/
    PHYSICAL_ADDRESS    BaseAddress_Indirect_Access;
	ULONG               IORangeBytes;
/********************************************************************************
*Memory Resource
*********************************************************************************/
    PHYSICAL_ADDRESS    BaseAddress_GlobalRegister;
	PUCHAR               Map_GlobalRegister;
	ULONG               GlobalRegisterBytes;
	PHYSICAL_ADDRESS    BaseAddress_PortRegister;
	PUCHAR               Map_PortRegister;
	ULONG               PortRegisterBytes;
/********************************************************************************
*DMA information
********************************************************************************/
	PDMA_ADAPTER AdapterObject ;                   //represents a bus dma adapter
	PSCATTER_GATHER_LIST ScatterGatherList;

	PHYSICAL_ADDRESS *LogicalAddress,*SGTPAddress;
    ULONG             SGEControl;

	pSGTable          pSGT;

	ULONG PortBaseAddress;
    ULONG MaximumMapRegisters ;                       
    PVOID CurrentVirtualAddress ;
    ULONG CurrentTransferLength ;
    ULONG BytesTransfer,BytesTransfered;
    BOOLEAN WriteToDevice ;

	pDmaInfo pDmaContext;
/********************************************************************************
*Interrupt Resource
*********************************************************************************/
    ULONG							vector;
    KIRQL							IrqL;
	KAFFINITY						affinity;
    BOOLEAN							GotInterrupt;
	BOOLEAN							irqshare;
    KINTERRUPT_MODE					mode;

	// Interrupt handling variables
	ULONG				InterruptSource;
    PKINTERRUPT			InterruptObject;		// address of interrupt object

	PKEVENT				pWaitEvent;             //event pointer

	BOOLEAN				bStopping;				//
	KEVENT				StoppingEvent;			// Set when all pending I/O complete

	PUCHAR              ReadBuffer;
	PUCHAR              WriteBuffer;
	pPRB                PRBStruct;
    ULONG               TansferedCount;
	BOOLEAN             NeedToHandle;

	
} DEVICE_EXTENSION, *PDEVICE_EXTENSION;
//				Define Device Extention

////////////////////////////////////////////////////////////////////////////////////

/**********************************************
*               Initiate Functions
**********************************************/

VOID DriverUnload(IN PDRIVER_OBJECT pDriverObject);

/**********************************************
*               Pnp Functions
**********************************************/
NTSTATUS DispatchPnp(IN PDEVICE_OBJECT fdo,
					 IN PIRP pIrp);
NTSTATUS DefaultPnpHandler(IN PDEVICE_OBJECT fdo,
						   IN PIRP pIrp);

NTSTATUS PnpStartDevice(IN PDEVICE_OBJECT fdo,
						IN PIRP pIrp);
NTSTATUS StartDevice(IN PDEVICE_OBJECT fdo,
					 IN PCM_PARTIAL_RESOURCE_LIST ResourceListRaw,
					 IN PCM_PARTIAL_RESOURCE_LIST ResourceList);
NTSTATUS ForwardAndWait(IN PDEVICE_OBJECT fdo,
						IN PIRP pIrp);

NTSTATUS OnRequestComplete(IN PDEVICE_OBJECT fdo,
						   IN PIRP pIrp,
						   IN PKEVENT pKEvent);

NTSTATUS PnpStopDevice(IN PDEVICE_OBJECT fdo,
					   IN PIRP pIrp);
VOID StopDevice(IN PDEVICE_OBJECT fdo);
NTSTATUS PnpRemoveDevice(IN PDEVICE_OBJECT fdo,
						 IN PIRP pIrp);
NTSTATUS PnpQueryCapabilitiesHandler( IN PDEVICE_OBJECT fdo, IN PIRP Irp);
NTSTATUS PnpQueryRemoveDeviceHandler( IN PDEVICE_OBJECT fdo, IN PIRP Irp);


NTSTATUS CompleteRequest(IN PIRP Irp,
						 IN NTSTATUS status);
NTSTATUS CompleteRequestInfo(IN PIRP Irp, 
							 IN NTSTATUS status, 
							 IN ULONG_PTR info);
NTSTATUS AddDevice(IN PDRIVER_OBJECT pDriverObject,
				   IN PDEVICE_OBJECT pdo);

/**********************************************
*               Dispath Functions
**********************************************/
NTSTATUS DispatchCreate(IN PDEVICE_OBJECT fdo,
						IN PIRP pIrp);
NTSTATUS DispatchClose(IN PDEVICE_OBJECT fdo,
					   IN PIRP pIrp);
NTSTATUS DispatchRead(IN PDEVICE_OBJECT fdo,
					  IN PIRP pIrp);
NTSTATUS DispatchWrite(IN PDEVICE_OBJECT fdo,
					   IN PIRP pIrp);
VOID StartIo(IN PDEVICE_OBJECT fdo,
				  IN PIRP pIrp);

NTSTATUS DispatchIoControl(IN PDEVICE_OBJECT fdo,
						   IN PIRP pIrp);

NTSTATUS IOCTL_GET_3124REGISTER_PORT0_BASEADDRESS_Handler(IN PDEVICE_OBJECT fdo,
						                                  IN PIRP pIrp);
NTSTATUS IOCTL_GET_3124REGISTER_PORT1_BASEADDRESS_Handler(IN PDEVICE_OBJECT fdo,
						                                  IN PIRP pIrp);
NTSTATUS IOCTL_GET_3124REGISTER_PORT2_BASEADDRESS_Handler(IN PDEVICE_OBJECT fdo,
						                                  IN PIRP pIrp);
NTSTATUS IOCTL_GET_3124REGISTER_PORT3_BASEADDRESS_Handler(IN PDEVICE_OBJECT fdo,
						                                  IN PIRP pIrp);
NTSTATUS IOCTL_GET_3124REGISTER_GLOBAL_BASEADDRESS_Handler(IN PDEVICE_OBJECT fdo,
						                                   IN PIRP pIrp);
NTSTATUS IOCTL_GET_3124PORT_INDIRECT_BASEADDRESS_Handler(IN PDEVICE_OBJECT fdo,
						                                 IN PIRP pIrp);

NTSTATUS IOCTL_3124REGISTER_PIO_READ_Handler(IN PDEVICE_OBJECT fdo,
						                         IN PIRP pIrp);
NTSTATUS IOCTL_3124REGISTER_PIO_WRITE_Handler(IN PDEVICE_OBJECT fdo,
						                          IN PIRP pIrp);

NTSTATUS IOCTL_GET_3124TASKFILE_Handler(IN PDEVICE_OBJECT fdo,
						                       IN PIRP pIrp);
NTSTATUS IOCTL_3124REGISTER_COMMAND_Handler(IN PDEVICE_OBJECT fdo,
						                       IN PIRP pIrp);

NTSTATUS IOCTL_3124REGISTER_MAP_PORT_Handler(IN PDEVICE_OBJECT fdo,
						                IN PIRP pIrp);
NTSTATUS IOCTL_3124REGISTER_MAP_GLOBAL_Handler(IN PDEVICE_OBJECT fdo,
						                IN PIRP pIrp);

NTSTATUS IOCTL_3124REGISTER_UNMAP_PORT_Handler(IN PDEVICE_OBJECT fdo,
						                  IN PIRP pIrp);
NTSTATUS IOCTL_3124REGISTER_UNMAP_GLOBAL_Handler(IN PDEVICE_OBJECT fdo,
						                  IN PIRP pIrp);

NTSTATUS IOCTL_3124_PORT_RESET_Handler(IN PDEVICE_OBJECT fdo,
						               IN PIRP pIrp);

NTSTATUS IOCTL_3124_DMA_Handler(IN PDEVICE_OBJECT fdo,
						             IN PIRP pIrp);

VOID
  AdapterListControl(
    IN PDEVICE_OBJECT fdo,
    IN PIRP           pIrp,
    IN PSCATTER_GATHER_LIST  ScatterGather,
    IN PVOID  Context
    );

/**********************************************
*               Interupt Functions
**********************************************/
BOOLEAN OnInterrupt(IN PKINTERRUPT pInterrupt,
					IN PDEVICE_EXTENSION pdx);
VOID DpcForIsr(IN PKDPC pDpc,
			   IN PDEVICE_OBJECT fdo,
			   IN PIRP Irp, 
			   IN PDEVICE_EXTENSION pdx);

/**********************************************
*               Power Functions
**********************************************/

NTSTATUS DispatchPower(IN PDEVICE_OBJECT fdo,
					   IN PIRP Irp);
NTSTATUS DefaultPowerHandler(IN PDEVICE_OBJECT fdo,
							 IN PIRP Irp);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
激情综合亚洲精品| 欧美国产欧美综合| 国产成人欧美日韩在线电影| 日韩亚洲欧美高清| 免费人成在线不卡| 欧美电影免费观看完整版| 精品一区二区三区影院在线午夜| 欧美xxxxx牲另类人与| 国内精品久久久久影院薰衣草| 精品理论电影在线观看| 成人永久aaa| 亚洲在线观看免费视频| 日韩视频一区二区| 国产成人精品亚洲午夜麻豆| 自拍偷拍亚洲激情| 色94色欧美sute亚洲线路一久| 亚洲五月六月丁香激情| 精品国产污污免费网站入口 | 欧美一区二区三区在线观看| 免费成人在线影院| 国产欧美视频一区二区| 91福利资源站| 国产一区二区免费看| 中文字幕一区二区三区乱码在线| 欧美三级资源在线| 国产成人精品亚洲午夜麻豆| 亚洲一区二区在线免费观看视频| 日韩精品一区二区三区中文精品| 不卡电影免费在线播放一区| 亚洲成人激情自拍| 国产欧美日韩一区二区三区在线观看| 色94色欧美sute亚洲线路一ni| 日韩电影一区二区三区| 国产清纯在线一区二区www| 欧美伊人久久大香线蕉综合69| 久久精品99久久久| 亚洲女人小视频在线观看| 日韩一级片在线播放| 99re免费视频精品全部| 蜜桃av一区二区| 一区二区在线看| 国产午夜精品一区二区三区四区| 欧洲一区二区三区免费视频| 国模少妇一区二区三区| 亚洲第一主播视频| 亚洲 欧美综合在线网络| 亚洲精品一区二区三区精华液| 色欧美片视频在线观看| 国产精品系列在线观看| 日日噜噜夜夜狠狠视频欧美人 | 国产精品久久久久久福利一牛影视| 欧美性猛交xxxx乱大交退制版| 久久91精品国产91久久小草| 亚洲国产日产av| 国产女人水真多18毛片18精品视频| 7777精品伊人久久久大香线蕉的| 99久久99久久免费精品蜜臀| 国产成人综合在线| 极品美女销魂一区二区三区免费| 午夜精品国产更新| 一区二区三区中文字幕在线观看| 国产精品久久久久天堂| 久久这里只有精品首页| 日韩午夜电影av| 欧美性感一类影片在线播放| av午夜一区麻豆| 国产白丝精品91爽爽久久| 国产精品一区在线| 精品一区二区av| 午夜免费欧美电影| 夜夜揉揉日日人人青青一国产精品| 国产精品精品国产色婷婷| 久久综合99re88久久爱| 欧美精品一区二区蜜臀亚洲| 欧美mv日韩mv亚洲| 久久久美女艺术照精彩视频福利播放| 日韩免费视频线观看| 日韩视频不卡中文| 日韩欧美的一区二区| 欧美不卡一区二区三区四区| 欧美大胆一级视频| 日韩免费观看高清完整版| 69堂亚洲精品首页| 制服丝袜日韩国产| 日韩午夜激情av| 久久一区二区三区国产精品| 2024国产精品| 精品99一区二区三区| 国产区在线观看成人精品 | 国产综合一区二区| 精品制服美女丁香| 国v精品久久久网| 暴力调教一区二区三区| 色天天综合色天天久久| 欧美日韩国产精选| 欧美一区二区三区在线视频| 26uuu欧美日本| 国产精品素人视频| 亚洲精品国产a| 丝袜亚洲另类欧美综合| 九色porny丨国产精品| 粉嫩在线一区二区三区视频| 99re热视频这里只精品 | 91精品国产色综合久久不卡电影| 91精品国产欧美一区二区| 26uuu久久综合| 国产精品网站在线播放| 亚洲一区二区三区激情| 免费看日韩a级影片| 欧美高清www午色夜在线视频| 国产精品水嫩水嫩| 免费观看成人鲁鲁鲁鲁鲁视频| 美女在线观看视频一区二区| 一本久道久久综合中文字幕| 91精品黄色片免费大全| 中文字幕免费观看一区| 香蕉加勒比综合久久| 国产黄色精品网站| 欧美午夜不卡视频| 久久综合色8888| 日本一区二区三区高清不卡| 亚洲地区一二三色| 国产91丝袜在线观看| 欧美中文字幕一区二区三区| 欧美精品一区二区三区蜜桃视频| 亚洲人成人一区二区在线观看| 三级在线观看一区二区| 成人国产精品免费| 日韩一区二区精品葵司在线| 椎名由奈av一区二区三区| 免费久久99精品国产| 91亚洲精品乱码久久久久久蜜桃| 日韩欧美在线123| 一区二区三区毛片| 国产成人av电影在线| 日韩视频一区二区三区在线播放| 婷婷六月综合网| 欧美大白屁股肥臀xxxxxx| 热久久国产精品| 91精品国产综合久久精品| 精品国产乱码久久久久久图片| 午夜国产精品影院在线观看| 色综合久久88色综合天天免费| 日韩精品久久理论片| 欧美日韩精品一区二区天天拍小说| 国产精品三级在线观看| 日韩电影免费一区| 91美女精品福利| 国产日韩三级在线| 激情深爱一区二区| 欧美一区二区女人| 亚洲va中文字幕| 91视频www| 亚洲国产精品高清| 国产精品综合久久| 精品成a人在线观看| 久久精品国产精品亚洲红杏| 91精品国产品国语在线不卡| 亚洲va国产天堂va久久en| 日韩欧美国产电影| 天天色综合成人网| 欧日韩精品视频| 一区二区免费看| 欧美亚洲国产一区二区三区 | 欧美日韩视频第一区| 亚洲丝袜精品丝袜在线| 99久久综合色| 亚洲人午夜精品天堂一二香蕉| 成人手机电影网| 国产精品沙发午睡系列990531| 成人污污视频在线观看| 国产日韩精品久久久| 国产91综合网| 国产精品全国免费观看高清| 成人av免费在线观看| 亚洲精选视频在线| 欧美日韩色综合| 日韩精品一二区| 精品人伦一区二区色婷婷| 麻豆视频观看网址久久| 久久夜色精品国产噜噜av| 国产v综合v亚洲欧| 综合久久给合久久狠狠狠97色| 一本高清dvd不卡在线观看| 亚洲国产婷婷综合在线精品| 717成人午夜免费福利电影| 美女视频第一区二区三区免费观看网站| 91精品在线免费| 国产精品一区二区男女羞羞无遮挡 | 一区二区三区不卡在线观看 | 国产偷v国产偷v亚洲高清| 国产精品中文欧美| 中文字幕日韩欧美一区二区三区| 91成人在线精品| 日本免费新一区视频| 国产片一区二区| 在线观看欧美黄色| 全国精品久久少妇| 国产欧美日韩另类一区| 91久久精品一区二区三区|