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

📄 xrcom16550.h

📁 wince 5.0下 实现PCI8串口卡驱动
💻 H
字号:
//
// Copyright (c) 2005 Exar Corporation.  All rights reserved.
//
/*++

Module Name:  
   xrcom16550.h
   
Abstract:  
   Holds definitions for sample 16550  serial interface.
   
Notes: 
--*/
#ifndef __SER_PDD_H__   
    #define __SER_PDD_H__

    #ifdef __cplusplus
extern "C" {
    #endif

// TODO - Define PAGE_CONTAINING_UART
    #define PAGE_CONTAINING_UART   XXXXX

/*
 * @doc HWINTERNAL
 * @struct SER_INFO | Private structure.
 */

    typedef struct __SER_INFO {
        // Put lib struct first so we can easily cast pointers
        SER16550_INFO ser16550;

		// now hardware specific fields
        DWORD       dwInterfaceType;   // @filed IO Interface (bus) type
		DWORD       dwBusNumber;		// @field PCI bus number.
        DWORD       dwMemBase;          // @field IO Base Address - unmapped
        DWORD       dwMemLen;           // @field IO Length
        DWORD       dwSysIntr;         // @field System Interrupt number for this peripheral
        DWORD       dwDevIndex;        // @field Index of device
        PUCHAR      pBaseAddress;      // @field Start of serial registers - mapped

        UINT8       cOpenCount;     // @field Count of concurrent opens
        COMMPROP    CommProp;       // @field Pointer to CommProp structure.
        PVOID       pMddHead;       // @field First arg to mdd callbacks.
        BOOL        fIRMode;        // @field Boolean, are we running in IR mode?		
        CEDEVICE_POWER_STATE LastDx;// Last Power State
#ifdef EXAMINE_BOOTARGS
        PBOOT_ARGS  pBootArgs;      // @field Pointer to global boot args struct
#endif    
        PHWOBJ      pHWObj;         // @field Pointer to PDDs HWObj structure

		BOOL		dwPortInstanceOnChip; // Port Instance on PCI Chip
										  // to support PCI UART Config Reg Access
									      // and to limit the access only through 1st Port.
    } SER_INFO, *PSER_INFO;


// Here are the names of the values stored in the registry
    #define PC_REG_DEVINDEX_VAL_NAME TEXT("DeviceArrayIndex") 
    #define PC_REG_DEVINDEX_VAL_LEN  sizeof( DWORD )
    #define PC_REG_REGSTRIDE_VAL_NAME TEXT("RegStride")
    #define PC_REG_REGSTRIDE_VAL_LEN  sizeof( DWORD )

    #ifdef __cplusplus
}
    #endif


#endif __SER_PDD_H__

⌨️ 快捷键说明

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