[WIN32K][VIDEOPRT] Improve initialization and interfacing with INBV.
[reactos.git] / win32ss / drivers / videoprt / videoprt.h
index 3490e56..94289dc 100644 (file)
 #include <windef.h>
 #include <wdmguid.h>
 
-#define TAG_VIDEO_PORT  'PDIV'
-#define TAG_VIDEO_PORT_BUFFER  '\0mpV'
-#define TAG_REQUEST_PACKET 'qRpV'
+/* PSEH for SEH Support */
+#include <pseh/pseh2.h>
 
-#define GUID_STRING_LENGTH 38 * sizeof(WCHAR)
+#define TAG_VIDEO_PORT          'PDIV'
+#define TAG_VIDEO_PORT_BUFFER   '\0mpV'
+#define TAG_REQUEST_PACKET      'qRpV'
+
+#define GUID_STRING_LENGTH (38 * sizeof(WCHAR))
 
 typedef struct _VIDEO_PORT_ADDRESS_MAPPING
 {
@@ -102,6 +105,7 @@ typedef struct _VIDEO_PORT_DEVICE_EXTENSTION
    AGP_BUS_INTERFACE_STANDARD AgpInterface;
    KMUTEX DeviceLock;
    LIST_ENTRY DmaAdapterList, ChildDeviceList;
+   LIST_ENTRY HwResetListEntry;
    ULONG SessionId;
    CHAR MiniPortDeviceExtension[1];
 } VIDEO_PORT_DEVICE_EXTENSION, *PVIDEO_PORT_DEVICE_EXTENSION;
@@ -204,11 +208,6 @@ IntVideoPortDispatchSystemControl(
    IN PDEVICE_OBJECT DeviceObject,
    IN PIRP Irp);
 
-NTSTATUS NTAPI
-IntVideoPortDispatchWrite(
-   IN PDEVICE_OBJECT DeviceObject,
-   IN PIRP Irp);
-
 VOID NTAPI
 IntVideoPortUnload(PDRIVER_OBJECT DriverObject);
 
@@ -244,10 +243,10 @@ IntVideoPortMapPhysicalMemory(
 
 /* videoprt.c */
 
-extern ULONG CsrssInitialized;
-extern PKPROCESS Csrss;
+extern PKPROCESS CsrProcess;
 extern ULONG VideoPortDeviceNumber;
 extern KMUTEX VideoPortInt10Mutex;
+extern LIST_ENTRY HwResetAdaptersList;
 
 VOID FASTCALL
 IntAttachToCSRSS(PKPROCESS *CallingProcess, PKAPC_STATE ApcState);