ReactOS  0.4.14-dev-1276-g8aa58c1
isapnp.h
Go to the documentation of this file.
1 #ifndef _ISAPNP_PCH_
2 #define _ISAPNP_PCH_
3 
4 #include <wdm.h>
5 #include <ntstrsafe.h>
6 #include <isapnphw.h>
7 
8 #ifdef __cplusplus
9 extern "C" {
10 #endif
11 
12 #define TAG_ISAPNP 'PNPI'
13 
14 typedef enum {
18 
19 typedef struct _ISAPNP_IO {
23 
24 typedef struct _ISAPNP_IRQ {
29 
30 typedef struct _ISAPNP_DMA {
34 
35 typedef struct _ISAPNP_LOGICAL_DEVICE {
48 
49 typedef struct _ISAPNP_COMMON_EXTENSION {
54 
55 typedef struct _ISAPNP_FDO_EXTENSION {
66 
67 typedef struct _ISAPNP_PDO_EXTENSION {
79 
80 /* isapnp.c */
81 
82 #define RTL_DUPLICATE_UNICODE_STRING_NULL_TERMINATE 1
83 #define RTL_DUPLICATE_UNICODE_STRING_ALLOCATE_NULL_STRING 2
84 
86 NTAPI
88  IN ULONG Flags,
91 
93 NTAPI
96  IN PIRP Irp,
97  IN BOOLEAN IncludeDataPort);
98 
99 DRIVER_INITIALIZE DriverEntry;
100 
101 NTSTATUS
102 NTAPI
106 
107 NTSTATUS
108 NTAPI
110  IN PISAPNP_FDO_EXTENSION FdoExt,
111  IN PIRP Irp);
112 
113 /* fdo.c */
114 NTSTATUS
115 NTAPI
116 IsaFdoPnp(
117  IN PISAPNP_FDO_EXTENSION FdoExt,
118  IN PIRP Irp,
120 
121 /* pdo.c */
122 NTSTATUS
123 NTAPI
124 IsaPdoPnp(
125  IN PISAPNP_PDO_EXTENSION PdoDeviceExtension,
126  IN PIRP Irp,
128 
129 /* hardware.c */
130 NTSTATUS
131 NTAPI
133  IN PUCHAR ReadDataPort);
134 
135 NTSTATUS
136 NTAPI
138  IN PISAPNP_FDO_EXTENSION FdoExt);
139 
140 NTSTATUS
141 NTAPI
143  IN PISAPNP_LOGICAL_DEVICE LogicalDevice);
144 
145 NTSTATUS
146 NTAPI
148  IN PISAPNP_LOGICAL_DEVICE LogicalDevice);
149 
150 #ifdef __cplusplus
151 }
152 #endif
153 
154 #endif /* _ISAPNP_PCH_ */
struct _ISAPNP_FDO_EXTENSION ISAPNP_FDO_EXTENSION
NTSTATUS NTAPI IsaFdoPnp(IN PISAPNP_FDO_EXTENSION FdoExt, IN PIRP Irp, IN PIO_STACK_LOCATION IrpSp)
Definition: fdo.c:44
NTSTATUS NTAPI IsaHwActivateDevice(IN PISAPNP_LOGICAL_DEVICE LogicalDevice)
Definition: hardware.c:599
#define IN
Definition: typedefs.h:39
PDEVICE_OBJECT DataPortPdo
Definition: isapnp.h:59
UCHAR CurrentNo
Definition: isapnp.h:25
ISAPNP_IO_DESCRIPTION Description
Definition: isapnp.h:21
struct _ISAPNP_DMA ISAPNP_DMA
_In_ PIRP Irp
Definition: csq.h:116
LIST_ENTRY DeviceListHead
Definition: isapnp.h:60
unsigned char * PUCHAR
Definition: retypes.h:3
struct _ISAPNP_LOGICAL_DEVICE ISAPNP_LOGICAL_DEVICE
LONG NTSTATUS
Definition: precomp.h:26
ISAPNP_DEVICE_STATE
Definition: isapnp.h:14
NTSTATUS NTAPI IsaForwardIrpSynchronous(IN PISAPNP_FDO_EXTENSION FdoExt, IN PIRP Irp)
Definition: isapnp.c:519
UCHAR CurrentType
Definition: isapnp.h:26
ISAPNP_IO Io[8]
Definition: isapnp.h:41
PDEVICE_OBJECT Pdo
Definition: isapnp.h:58
PISAPNP_LOGICAL_DEVICE IsaPnpDevice
Definition: isapnp.h:69
ISAPNP_COMMON_EXTENSION Common
Definition: isapnp.h:68
NTSTATUS NTAPI IsaHwFillDeviceList(IN PISAPNP_FDO_EXTENSION FdoExt)
Definition: hardware.c:621
DRIVER_INITIALIZE DriverEntry
Definition: isapnp.h:99
PCM_RESOURCE_LIST ResourceList
Definition: isapnp.h:76
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170
ISAPNP_DMA_DESCRIPTION Description
Definition: isapnp.h:32
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
NTSTATUS NTAPI IsaPdoPnp(IN PISAPNP_PDO_EXTENSION PdoDeviceExtension, IN PIRP Irp, IN PIO_STACK_LOCATION IrpSp)
Definition: pdo.c:292
ISAPNP_LOGDEVID LogDevId
Definition: isapnp.h:37
unsigned char BOOLEAN
_Out_ _Inout_ POEM_STRING DestinationString
Definition: rtlfuncs.h:1869
static PDRIVER_OBJECT DriverObject
Definition: template.c:42
LIST_ENTRY ListEntry
Definition: isapnp.h:46
ISAPNP_DEVICE_STATE State
Definition: isapnp.h:52
UCHAR CurrentChannel
Definition: isapnp.h:31
struct _ISAPNP_IO PISAPNP_IO
PDEVICE_OBJECT Pdo
Definition: isapnp.h:36
UNICODE_STRING DeviceID
Definition: isapnp.h:71
UCHAR VendorId[3]
Definition: isapnp.h:38
KSPIN_LOCK Lock
Definition: isapnp.h:64
NTSTATUS NTAPI IsaHwTryReadDataPort(IN PUCHAR ReadDataPort)
Definition: hardware.c:591
struct _ISAPNP_FDO_EXTENSION * PISAPNP_FDO_EXTENSION
struct _ISAPNP_IRQ ISAPNP_IRQ
USHORT CurrentBase
Definition: isapnp.h:20
struct _ISAPNP_LOGICAL_DEVICE * PISAPNP_LOGICAL_DEVICE
ISAPNP_COMMON_EXTENSION Common
Definition: isapnp.h:56
struct _ISAPNP_PDO_EXTENSION ISAPNP_PDO_EXTENSION
unsigned char UCHAR
Definition: xmlstorage.h:181
UNICODE_STRING HardwareIDs
Definition: isapnp.h:72
_Out_ _Inout_ POEM_STRING _In_ PCUNICODE_STRING SourceString
Definition: rtlfuncs.h:1869
ISAPNP_IRQ_DESCRIPTION Description
Definition: isapnp.h:27
Definition: typedefs.h:118
ULONG ResourceListSize
Definition: isapnp.h:77
PISAPNP_FDO_EXTENSION FdoExt
Definition: isapnp.h:70
struct _ISAPNP_IO ISAPNP_IO
ISAPNP_DMA Dma[2]
Definition: isapnp.h:43
PIO_RESOURCE_REQUIREMENTS_LIST RequirementsList
Definition: isapnp.h:75
NTSTATUS NTAPI IsaPnpFillDeviceRelations(IN PISAPNP_FDO_EXTENSION FdoExt, IN PIRP Irp, IN BOOLEAN IncludeDataPort)
Definition: isapnp.c:411
struct _ISAPNP_IRQ * PISAPNP_IRQ
PDRIVER_OBJECT DriverObject
Definition: isapnp.h:62
unsigned short USHORT
Definition: pedump.c:61
_In_ PIO_STACK_LOCATION IrpSp
Definition: create.c:4157
ULONG KSPIN_LOCK
Definition: env_spec_w32.h:72
PUCHAR ReadDataPort
Definition: isapnp.h:63
UNICODE_STRING InstanceID
Definition: isapnp.h:74
struct _ISAPNP_COMMON_EXTENSION ISAPNP_COMMON_EXTENSION
struct _ISAPNP_DMA * PISAPNP_DMA
NTSTATUS NTAPI IsaPnpDuplicateUnicodeString(IN ULONG Flags, IN PCUNICODE_STRING SourceString, OUT PUNICODE_STRING DestinationString)
Definition: isapnp.c:16
#define OUT
Definition: typedefs.h:40
NTSTATUS NTAPI IsaHwDeactivateDevice(IN PISAPNP_LOGICAL_DEVICE LogicalDevice)
Definition: hardware.c:610
unsigned int ULONG
Definition: retypes.h:1
UNICODE_STRING CompatibleIDs
Definition: isapnp.h:73
_In_ PUNICODE_STRING RegistryPath
Definition: wmip.h:28
struct _ISAPNP_COMMON_EXTENSION * PISAPNP_COMMON_EXTENSION
PDEVICE_OBJECT Ldo
Definition: isapnp.h:57
PDEVICE_OBJECT Self
Definition: isapnp.h:50
struct _ISAPNP_PDO_EXTENSION * PISAPNP_PDO_EXTENSION
ISAPNP_IRQ Irq[2]
Definition: isapnp.h:42