ReactOS 0.4.15-dev-5853-gcb454ef
video.h
Go to the documentation of this file.
1/*
2 * video.h
3 *
4 * Video port and miniport driver interface
5 *
6 * This file is part of the w32api package.
7 *
8 * Contributors:
9 * Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
10 *
11 * THIS SOFTWARE IS NOT COPYRIGHTED
12 *
13 * This source code is offered for use in the public domain. You may
14 * use, modify or distribute it freely.
15 *
16 * This code is distributed in the hope that it will be useful but
17 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
18 * DISCLAIMED. This includes but is not limited to warranties of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
20 *
21 */
22
23#pragma once
24
25#define __VIDEO_H__
26
27#include "ntddvdeo.h"
28#include "videoagp.h"
29
30#ifdef __cplusplus
31extern "C" {
32#endif
33
34#ifndef _NTOSDEF_
35
36#ifdef PAGED_CODE
37#undef PAGED_CODE
38#endif
39
40#if defined(_MSC_VER)
41#define ALLOC_PRAGMA 1
42#endif
43
44#if defined(_VIDEOPORT_)
45#define VPAPI
46#else
47#define VPAPI DECLSPEC_IMPORT
48#endif
49
50#if DBG
51#define PAGED_CODE() \
52 if (VideoPortGetCurrentIrql() > 1 /* APC_LEVEL */) { \
53 VideoPortDebugPrint(Error, "Video: Pageable code called at IRQL %d\n", VideoPortGetCurrentIrql() ); \
54 ASSERT(FALSE); \
55 }
56#else
57#define PAGED_CODE()
58#endif /* DBG */
59
65
66#else
67
68#define VPAPI
69
70#endif /* _NTOSDEF_ */
71
72#if DBG
73#define VideoDebugPrint(x) VideoPortDebugPrint x
74#else
75#define VideoDebugPrint(x)
76#endif
77
78#define GET_VIDEO_PHYSICAL_ADDRESS(scatterList, \
79 VirtualAddress, \
80 InputBuffer, \
81 pLength, \
82 Address) \
83 do { \
84 ULONG_PTR byteOffset; \
85 \
86 byteOffset = (PCHAR) VirtualAddress - (PCHAR)InputBuffer; \
87 while (byteOffset >= scatterList->Length) { \
88 byteOffset -= scatterList->Length; \
89 scatterList++; \
90 } \
91 *pLength = scatterList->Length - byteOffset; \
92 Address = (ULONG_PTR) (scatterList->PhysicalAddress + byteOffset); \
93 } while (0)
94
95#define GET_VIDEO_SCATTERGATHER(ppDma) (**(PVRB_SG **)ppDma)
96
97/* VIDEO_ACCESS_RANGE.RangePassive */
98#define VIDEO_RANGE_PASSIVE_DECODE 1
99#define VIDEO_RANGE_10_BIT_DECODE 2
100
101#define SIZE_OF_NT4_VIDEO_PORT_CONFIG_INFO FIELD_OFFSET(VIDEO_PORT_CONFIG_INFO, Master)
102#define SIZE_OF_WXP_VIDEO_PORT_CONFIG_INFO sizeof(VIDEO_PORT_CONFIG_INFO)
103
104#define SET_USER_EVENT 0x01
105#define SET_DISPLAY_EVENT 0x02
106
107#define EVENT_TYPE_MASK 1
108#define SYNCHRONIZATION_EVENT 0
109#define NOTIFICATION_EVENT 1
110
111#define INITIAL_EVENT_STATE_MASK 2
112#define INITIAL_EVENT_NOT_SIGNALED 0
113#define INITIAL_EVENT_SIGNALED 2
114
115#define DISPLAY_ADAPTER_HW_ID 0xFFFFFFFF
116
117#define VIDEO_INVALID_CHILD_ID 0xFFFFFFFF
118
119#define SIZE_OF_NT4_VIDEO_HW_INITIALIZATION_DATA FIELD_OFFSET(VIDEO_HW_INITIALIZATION_DATA, HwStartDma)
120#define SIZE_OF_W2K_VIDEO_HW_INITIALIZATION_DATA FIELD_OFFSET(VIDEO_HW_INITIALIZATION_DATA, Reserved)
121#define SIZE_OF_WXP_VIDEO_HW_INITIALIZATION_DATA (SIZE_OF_W2K_VIDEO_HW_INITIALIZATION_DATA + sizeof(ULONG))
122
123#define VIDEO_PORT_AGP_INTERFACE_VERSION_1 1
124#define VIDEO_PORT_AGP_INTERFACE_VERSION_2 2
125#define VIDEO_PORT_I2C_INTERFACE_VERSION_1 1
126#define VIDEO_PORT_I2C_INTERFACE_VERSION_2 2
127#define VIDEO_PORT_INT10_INTERFACE_VERSION_1 1
128#define VIDEO_PORT_WCMEMORYPROTECTION_INTERFACE_VERSION_1 1
129#define VIDEO_PORT_DEBUG_REPORT_INTERFACE_VERSION_1 1
130
131/* Flags for VideoPortGetDeviceBase and VideoPortMapMemory */
132#define VIDEO_MEMORY_SPACE_MEMORY 0x00
133#define VIDEO_MEMORY_SPACE_IO 0x01
134#define VIDEO_MEMORY_SPACE_USER_MODE 0x02
135#define VIDEO_MEMORY_SPACE_DENSE 0x04
136#define VIDEO_MEMORY_SPACE_P6CACHE 0x08
137
138/* PVIDEO_HW_GET_CHILD_DESCRIPTOR return values */
139#define VIDEO_ENUM_MORE_DEVICES ERROR_CONTINUE
140#define VIDEO_ENUM_NO_MORE_DEVICES ERROR_NO_MORE_DEVICES
141#define VIDEO_ENUM_INVALID_DEVICE ERROR_INVALID_NAME
142
143#define DEVICE_VGA_ENABLED 1
144
145/* VideoPortCheckForDeviceExistence.Flags constants */
146#define CDE_USE_SUBSYSTEM_IDS 0x00000001
147#define CDE_USE_REVISION 0x00000002
148
149#define BUGCHECK_DATA_SIZE_RESERVED 48
150
151#define VIDEO_DEBUG_REPORT_MAX_SIZE 0x8000
152
155
156typedef struct _VIDEO_PORT_SPIN_LOCK *PSPIN_LOCK;
157typedef struct _VIDEO_DEBUG_REPORT *PVIDEO_DEBUG_REPORT;
158typedef struct __DMA_PARAMETERS *PDMA;
159typedef struct __VP_DMA_ADAPTER *PVP_DMA_ADAPTER;
160
161typedef PVOID
163 IN PVOID HwDeviceExtension,
165
197
200 IN PVOID HwDeviceExtension,
202 IN PWSTR ArgumentString,
203 IN OUT PVIDEO_PORT_CONFIG_INFO ConfigInfo,
204 OUT PUCHAR Again);
205
206typedef BOOLEAN
208 IN PVOID HwDeviceExtension);
209
210typedef BOOLEAN
212 IN PVOID HwDeviceExtension);
213
214typedef struct _VIDEO_ACCESS_RANGE {
222
223typedef VOID
225 IN ULONG VendorId,
226 IN ULONG DeviceId,
227 IN OUT PVIDEO_ACCESS_RANGE *LegacyResourceList,
228 IN OUT PULONG LegacyResourceCount);
229
230typedef enum _HW_DMA_RETURN {
234
237 PVOID HwDeviceExtension,
238 PDMA pDma);
239
245
251
252typedef VOID
254 IN PVOID HwDeviceExtension,
255 IN PVP_DMA_ADAPTER VpDmaAdapter,
258
259/* PVIDEO_HW_GET_CHILD_DESCRIPTOR.ChildEnumInfo constants */
267
268/* PVIDEO_HW_GET_CHILD_DESCRIPTOR.VideoChildType constants */
269typedef enum _VIDEO_CHILD_TYPE {
273 Other
275
278 IN PVOID HwDeviceExtension,
279 IN PVIDEO_CHILD_ENUM_INFO ChildEnumInfo,
280 OUT PVIDEO_CHILD_TYPE VideoChildType,
281 OUT PUCHAR pChildDescriptor,
282 OUT PULONG UId,
283 OUT PULONG pUnused);
284
287 IN PVOID HwDeviceExtension,
288 IN ULONG HwId,
289 IN PVIDEO_POWER_MANAGEMENT VideoPowerControl);
290
293 IN PVOID HwDeviceExtension,
294 IN ULONG HwId,
295 IN OUT PVIDEO_POWER_MANAGEMENT VideoPowerControl);
296
297typedef struct _QUERY_INTERFACE {
304
307 IN PVOID HwDeviceExtension,
309
312 PVOID HwDeviceExtension,
313 PVOID ChildDeviceExtension);
314
315typedef BOOLEAN
317 IN PVOID HwDeviceExtension,
319 IN ULONG Rows);
320
321typedef struct _STATUS_BLOCK {
322 _ANONYMOUS_UNION union {
328
329typedef struct _VIDEO_REQUEST_PACKET {
337
338typedef BOOLEAN
340 IN PVOID HwDeviceExtension,
341 IN PVIDEO_REQUEST_PACKET RequestPacket);
342
343typedef VOID
345 IN PVOID HwDeviceExtension);
346
347typedef VOID
349 PVOID HwDeviceExtension,
350 UCHAR Data);
351
352typedef VOID
354 PVOID HwDeviceExtension,
355 UCHAR Data);
356
357typedef BOOLEAN
359 PVOID HwDeviceExtension);
360
361typedef BOOLEAN
363 PVOID HwDeviceExtension);
364
365typedef VOID
367 PVOID HwDeviceExtension);
368
369typedef struct _I2C_CALLBACKS {
375
376typedef BOOLEAN
378 IN PVOID HwDeviceExtension,
379 IN PI2C_CALLBACKS I2CCallbacks);
380
381typedef BOOLEAN
383 IN PVOID HwDeviceExtension,
384 IN PI2C_CALLBACKS I2CCallbacks);
385
386typedef BOOLEAN
388 IN PVOID HwDeviceExtension,
389 IN PI2C_CALLBACKS I2CCallbacks,
391 IN ULONG Length);
392
393typedef BOOLEAN
395 IN PVOID HwDeviceExtension,
396 IN PI2C_CALLBACKS I2CCallbacks,
398 IN ULONG Length);
399
400typedef struct _VIDEO_I2C_CONTROL {
407
408typedef BOOLEAN
410 IN PVOID HwDeviceExtension,
411 IN PVIDEO_I2C_CONTROL I2CControl);
412
413typedef BOOLEAN
415 IN PVOID HwDeviceExtension,
416 IN PVIDEO_I2C_CONTROL I2CControl);
417
418typedef BOOLEAN
420 IN PVOID HwDeviceExtension,
421 IN PVIDEO_I2C_CONTROL I2CControl,
423 IN ULONG Length);
424
425typedef BOOLEAN
427 IN PVOID HwDeviceExtension,
428 IN PVIDEO_I2C_CONTROL I2CControl,
431 IN BOOLEAN EndOfRead);
432
433typedef struct _INT10_BIOS_ARGUMENTS {
444
448 IN OUT PINT10_BIOS_ARGUMENTS BiosArguments);
449
453 OUT PUSHORT Seg,
454 OUT PUSHORT Off,
456
460 IN USHORT Seg,
461 IN USHORT Off);
462
466 IN USHORT Seg,
467 IN USHORT Off,
469 IN ULONG Length);
470
474 IN USHORT Seg,
475 IN USHORT Off,
477 IN ULONG Length);
478
482 IN PVOID HwDeviceExtension);
483
487 IN PVOID HwDeviceExtension);
488
496
499 IN PVOID HwDeviceExtension,
501 IN VIDEO_DEVICE_DATA_TYPE DeviceDataType,
503 IN ULONG IdentifierLength,
504 IN PVOID ConfigurationData,
505 IN ULONG ConfigurationDataLength,
506 IN OUT PVOID ComponentInformation,
507 IN ULONG ComponentInformationLength);
508
511 IN PVOID HwDeviceExtension,
516
517typedef VOID
519 IN PVOID HwDeviceExtension,
521
522typedef BOOLEAN
525
526typedef VOID
528 IN PVOID HwDeviceExtension,
529 IN ULONG BugcheckCode,
532
533/* VideoPortSynchronizeExecution.Priority constants */
539
540/* VideoPortAllocatePool.PoolType constants */
541typedef enum _VP_POOL_TYPE {
547
548typedef enum _DMA_FLAGS {
553
568
578
579typedef enum VIDEO_DEBUG_LEVEL {
580 Error = 0,
583 Info
585
586#ifndef _NTOS_
587
591 IN ULONG Port,
593 IN PUCHAR Data);
594
598 IN ULONG Port,
600 IN PUCHAR Data,
602
606 IN ULONG Port,
608 IN PULONG Data);
609
613 IN ULONG Port,
615 IN PULONG Data,
617
621 IN ULONG Port,
623 IN PUSHORT Data);
624
628 IN ULONG Port,
632
633#endif /* _NTOS_ */
634
635typedef struct __VRB_SG {
639
640typedef enum _VP_LOCK_OPERATION {
645
652
653typedef struct _VIDEO_CHILD_STATE {
657
662
686
687typedef struct _I2C_FNC_TABLE {
696
697typedef struct _DDC_CONTROL {
702
703/* VideoPortQueryServices.ServicesType constants */
712
729
747
759
771
784
794
795typedef struct _VPOSVERSIONINFO {
803
811 IN PVOID HwDeviceExtension,
812 IN ULONG ulCode,
813 IN ULONG_PTR ulpArg1,
814 IN ULONG_PTR ulpArg2,
815 IN ULONG_PTR ulpArg3,
816 IN ULONG_PTR ulpArg4
817 );
819 IN OUT PVIDEO_DEBUG_REPORT pReport,
821 IN ULONG ulDataSize
822 );
825 );
827
828/* Video port functions for miniports */
829
830VPAPI
832NTAPI
834 IN PVOID HwDeviceExtension,
835 IN ULONG Size,
836 OUT PVOID *Buffer);
837
838VPAPI
839VOID
840NTAPI
842 IN PVOID HwDeviceExtension);
843
844VPAPI
845ULONG
846NTAPI
848 IN PVOID Source1,
849 IN PVOID Source2,
851
852VPAPI
854NTAPI
856 IN PVOID HwDeviceExtension,
857 IN PVOID DDCControl,
858 IN OUT PUCHAR EdidBuffer,
859 IN ULONG EdidBufferSize);
860
861VPAPI
862VOID
865 IN VIDEO_DEBUG_LEVEL DebugPrintLevel,
866 IN PSTR DebugMessage,
867 IN ...);
868
869VPAPI
871NTAPI
873 IN PVOID HwDeviceExtension);
874
875VPAPI
877NTAPI
879 IN PVOID HwDeviceExtension);
880
881VPAPI
883NTAPI
885 IN PVOID HwDeviceExtension,
887
888VPAPI
889VOID
890NTAPI
892 IN PVOID HwDeviceExtension,
893 IN PVOID MappedAddress);
894
895VPAPI
897NTAPI
899 IN PVOID HwDeviceExtension,
900 IN ULONG NumRequestedResources,
901 IN PIO_RESOURCE_DESCRIPTOR RequestedResources OPTIONAL,
902 IN ULONG NumAccessRanges,
903 OUT PVIDEO_ACCESS_RANGE AccessRanges,
904 IN PVOID VendorId,
905 IN PVOID DeviceId,
906 OUT PULONG Slot);
907
908VPAPI
909PVOID
910NTAPI
913
914VPAPI
915ULONG
916NTAPI
918 IN PVOID HwDeviceExtension,
919 IN BUS_DATA_TYPE BusDataType,
923 IN ULONG Length);
924
925VPAPI
926UCHAR
927NTAPI
929
930VPAPI
931PVOID
932NTAPI
934 IN PVOID HwDeviceExtension,
935 IN PHYSICAL_ADDRESS IoAddress,
936 IN ULONG NumberOfUchars,
937 IN UCHAR InIoSpace);
938
939VPAPI
941NTAPI
943 IN PVOID HwDeviceExtension,
944 IN VIDEO_DEVICE_DATA_TYPE DeviceDataType,
947
948VPAPI
950NTAPI
952 IN PVOID HwDeviceExtension,
954 IN UCHAR IsParameterFileName,
957
958VPAPI
959PVOID
960NTAPI
962 IN PVOID HwDeviceExtension,
963 IN PVOID Unused1,
964 IN ULONG Unused2,
965 IN ULONG Length);
966
967VPAPI
969NTAPI
971 IN PVOID HwDeviceExtension,
972 OUT PULONG VgaStatus);
973
974VPAPI
975LONG
978 IN PLONG Addend);
979
980VPAPI
981LONG
985 IN LONG Value);
986
987VPAPI
988LONG
991 IN PLONG Addend);
992
993VPAPI
994ULONG
995NTAPI
1001
1002VPAPI
1004NTAPI
1006 IN PVOID HwDeviceExtension,
1007 IN PVIDEO_X86_BIOS_ARGUMENTS BiosArguments);
1008
1009VPAPI
1010VOID
1011NTAPI
1013 IN PVOID HwDeviceExtension,
1016 IN ULONG UniqueId);
1017
1018VPAPI
1020NTAPI
1022 IN PVOID HwDeviceExtension,
1025 PULONG InIoSpace,
1027 ULONG BankLength,
1028 UCHAR ReadWriteBank,
1029 PBANKED_SECTION_ROUTINE BankRoutine,
1030 PVOID Context);
1031
1032VPAPI
1034NTAPI
1036 IN PVOID HwDeviceExtension,
1039 IN PULONG InIoSpace,
1041
1042VPAPI
1043VOID
1044NTAPI
1047 IN PVOID Source,
1048 IN ULONG Length);
1049
1050VPAPI
1052NTAPI
1054 IN PVOID HwDeviceExtension,
1055 OUT PLONGLONG PerformanceFrequency OPTIONAL);
1056
1057VPAPI
1059NTAPI
1061 IN PVOID HwDeviceExtension,
1062 IN VIDEO_PORT_SERVICES ServicesType,
1064
1065VPAPI
1066BOOLEAN
1067NTAPI
1069 IN PVOID HwDeviceExtension,
1071 IN PVOID Context);
1072
1073VPAPI
1074VOID
1075NTAPI
1077 IN PUCHAR Port,
1079 IN ULONG Count);
1080
1081VPAPI
1082VOID
1083NTAPI
1085 IN PULONG Port,
1087 IN ULONG Count);
1088
1089VPAPI
1090VOID
1091NTAPI
1093 IN PUSHORT Port,
1095 IN ULONG Count);
1096
1097VPAPI
1098UCHAR
1099NTAPI
1101 IN PUCHAR Port);
1102
1103VPAPI
1104ULONG
1105NTAPI
1107 IN PULONG Port);
1108
1109VPAPI
1110USHORT
1111NTAPI
1113 IN PUSHORT Port);
1114
1115VPAPI
1116VOID
1117NTAPI
1119 IN PUCHAR Register,
1121 IN ULONG Count);
1122
1123VPAPI
1124VOID
1125NTAPI
1127 IN PULONG Register,
1129 IN ULONG Count);
1130
1131VPAPI
1132VOID
1133NTAPI
1135 IN PUSHORT Register,
1137 IN ULONG Count);
1138
1139VPAPI
1140UCHAR
1141NTAPI
1143 IN PUCHAR Register);
1144
1145VPAPI
1146ULONG
1147NTAPI
1149 IN PULONG Register);
1150
1151VPAPI
1152USHORT
1153NTAPI
1155 IN PUSHORT Register);
1156
1157VPAPI
1158VOID
1159NTAPI
1161 IN PVOID HwDeviceExtension,
1162 IN PVOID Buffer);
1163
1164VPAPI
1165VOID
1166NTAPI
1168 IN PVOID HwDeviceExtension);
1169
1170VPAPI
1171BOOLEAN
1172NTAPI
1174 PVOID HwDeviceExtension,
1175 PUCHAR RomBase,
1176 ULONG RomLength,
1177 PUCHAR String);
1178
1179VPAPI
1180ULONG
1181NTAPI
1183 IN PVOID HwDeviceExtension,
1184 IN BUS_DATA_TYPE BusDataType,
1186 IN PVOID Buffer,
1187 IN ULONG Offset,
1188 IN ULONG Length);
1189
1190VPAPI
1192NTAPI
1194 IN PVOID HwDeviceExtension,
1198
1199VPAPI
1201NTAPI
1203 IN PVOID HwDeviceExtension,
1204 IN ULONG NumAccessRanges,
1205 IN PVIDEO_ACCESS_RANGE AccessRange);
1206
1207VPAPI
1208VOID
1209NTAPI
1211 IN ULONG Microseconds);
1212
1213VPAPI
1214VOID
1215NTAPI
1217 IN PVOID HwDeviceExtension);
1218
1219VPAPI
1220VOID
1221NTAPI
1223 IN PVOID HwDeviceExtension);
1224
1225VPAPI
1226BOOLEAN
1227NTAPI
1229 IN PVOID HwDeviceExtension,
1232 IN PVOID Context);
1233
1234VPAPI
1236NTAPI
1238 IN PVOID HwDeviceExtension,
1241
1242VPAPI
1244NTAPI
1246 IN PVOID HwDeviceExtension,
1247 IN ULONG NumAccessRanges,
1248 IN PVIDEO_ACCESS_RANGE AccessRanges);
1249
1250VPAPI
1251VOID
1252NTAPI
1254 IN PUCHAR Port,
1256 IN ULONG Count);
1257
1258VPAPI
1259VOID
1260NTAPI
1262 IN PULONG Port,
1264 IN ULONG Count);
1265
1266VPAPI
1267VOID
1268NTAPI
1270 IN PUSHORT Port,
1272 IN ULONG Count);
1273
1274VPAPI
1275VOID
1276NTAPI
1278 IN PUCHAR Port,
1279 IN UCHAR Value);
1280
1281VPAPI
1282VOID
1283NTAPI
1285 IN PULONG Port,
1286 IN ULONG Value);
1287
1288VPAPI
1289VOID
1290NTAPI
1292 IN PUSHORT Port,
1293 IN USHORT Value);
1294
1295VPAPI
1296VOID
1297NTAPI
1299 IN PUCHAR Register,
1301 IN ULONG Count);
1302
1303VPAPI
1304VOID
1305NTAPI
1307 IN PULONG Register,
1309 IN ULONG Count);
1310
1311VPAPI
1312VOID
1313NTAPI
1315 IN PUSHORT Register,
1317 IN ULONG Count);
1318
1319VPAPI
1320VOID
1321NTAPI
1323 IN PUCHAR Register,
1324 IN UCHAR Value);
1325
1326VPAPI
1327VOID
1328NTAPI
1330 IN PULONG Register,
1331 IN ULONG Value);
1332
1333VPAPI
1334VOID
1335NTAPI
1337 IN PUSHORT Register,
1338 IN USHORT Value);
1339
1340VPAPI
1341VOID
1342NTAPI
1345 IN ULONG Length);
1346
1347VPAPI
1348VOID
1349NTAPI
1352 IN ULONG Length);
1353
1354VPAPI
1355PVOID
1356NTAPI
1358 IN PVOID HwDeviceExtension,
1361
1362VPAPI
1363PVOID
1364NTAPI
1366 IN PVOID HwDeviceExtension,
1367 IN ULONG DesiredLength,
1369 OUT PPHYSICAL_ADDRESS LogicalAddress,
1370 OUT PULONG pActualLength,
1371 IN BOOLEAN CacheEnabled);
1372
1373VPAPI
1374VOID
1375NTAPI
1377 IN PVOID HwDeviceExtension,
1378 IN ULONG Length,
1380 IN PHYSICAL_ADDRESS LogicalAddress,
1381 IN BOOLEAN CacheEnabled);
1382
1383VPAPI
1384PDMA
1385NTAPI
1387 IN PVOID HwDeviceExtension,
1388 IN PDMA pDma,
1389 IN DMA_FLAGS DmaFlags);
1390
1391VPAPI
1392BOOLEAN
1393NTAPI
1395 IN PVOID HwDeviceExtension,
1397 IN OUT PEVENT pUEvent,
1398 IN PEVENT pDisplayEvent,
1399 IN DMA_FLAGS DmaFlags);
1400
1401VPAPI
1402BOOLEAN
1403NTAPI
1405 IN PVOID hwDeviceExtension,
1406 IN OUT PDMA pDma);
1407
1408VPAPI
1409BOOLEAN
1410NTAPI
1412 IN PVOID HwDeviceExtension,
1413 IN PDMA pDmaHandle);
1414
1415VPAPI
1416PVOID
1417NTAPI
1419 IN PVOID HwDeviceExtension,
1420 IN PDMA pDma);
1421
1422VPAPI
1423PVOID
1424NTAPI
1426 IN PVOID HwDeviceExtension,
1427 IN PDMA pDma);
1428
1429VPAPI
1430VOID
1431NTAPI
1433 IN PVOID HwDeviceExtension,
1434 OUT PDMA pDma,
1435 IN PVOID InstanceContext);
1436
1437VPAPI
1438ULONG
1439NTAPI
1441 IN PVOID HwDeviceExtension,
1442 IN PDMA pDma);
1443
1444VPAPI
1445VOID
1446NTAPI
1448 IN PVOID HwDeviceExtension,
1449 IN OUT PDMA pDma,
1450 IN ULONG BytesUsed);
1451
1452VPAPI
1453PDMA
1454NTAPI
1456 IN PVOID HwDeviceExtension,
1458 IN PVOID MappedUserEvent,
1459 IN PVOID DisplayDriverEvent);
1460
1461VPAPI
1462PDMA
1463NTAPI
1465 IN PVOID HwDeviceExtension,
1467 IN PHYSICAL_ADDRESS BoardAddress,
1469 IN PULONG InIoSpace,
1470 IN PVOID MappedUserEvent,
1471 IN PVOID DisplayDriverEvent,
1473
1474VPAPI
1475BOOLEAN
1476NTAPI
1478 IN PVOID HwDeviceExtension,
1481 IN PDMA BoardMemoryHandle);
1482
1483VPAPI
1485NTAPI
1487 IN PVOID HwDeviceExtension,
1488 IN OUT PVOID *SecondaryDeviceExtension,
1489 IN ULONG ulFlag);
1490
1491VPAPI
1493NTAPI
1495 IN PVOID HwDeviceExtension,
1496 IN PVP_DEVICE_DESCRIPTION VpDeviceDescription);
1497
1498VPAPI
1499VOID
1500NTAPI
1502 IN PVOID HwDeviceExtension,
1503 IN PVP_DMA_ADAPTER VpDmaAdapter);
1504
1505VPAPI
1506PVOID
1507NTAPI
1509 IN PVOID HwDeviceExtension,
1510 IN PVP_DMA_ADAPTER VpDmaAdapter,
1511 IN ULONG DesiredLength,
1512 OUT PPHYSICAL_ADDRESS LogicalAddress,
1513 IN BOOLEAN CacheEnabled,
1514 PVOID Reserved);
1515
1516VPAPI
1517VOID
1518NTAPI
1520 IN PVOID HwDeviceExtension,
1521 IN PVP_DMA_ADAPTER VpDmaAdapter,
1522 IN ULONG Length,
1523 IN PHYSICAL_ADDRESS LogicalAddress,
1525 IN BOOLEAN CacheEnabled);
1526
1527VPAPI
1528PVOID
1529NTAPI
1531 IN PVOID HwDeviceExtension,
1533 IN ULONG Length,
1535
1536VPAPI
1537VOID
1538NTAPI
1540 IN PVOID HwDeviceExtension,
1541 IN PVOID Mdl);
1542
1543VPAPI
1545NTAPI
1547 IN PVOID HwDeviceExtension,
1548 IN PVP_DMA_ADAPTER VpDmaAdapter,
1549 IN PVOID Mdl,
1550 IN ULONG Offset,
1551 IN OUT PULONG pLength,
1552 IN PEXECUTE_DMA ExecuteDmaRoutine,
1555
1556VPAPI
1558NTAPI
1560 IN PVOID HwDeviceExtension,
1561 IN PVP_DMA_ADAPTER VpDmaAdapter,
1562 IN PVP_SCATTER_GATHER_LIST VpScatterGather,
1564
1565VPAPI
1567NTAPI
1569 IN PVOID HwDeviceExtension,
1570 IN ULONG EventFlag,
1571 IN PVOID Unused,
1572 OUT PEVENT *ppEvent);
1573
1574VPAPI
1576NTAPI
1578 IN PVOID HwDeviceExtension,
1579 IN PEVENT pEvent);
1580
1581VPAPI
1582LONG
1583NTAPI
1585 IN PVOID HwDeviceExtension,
1586 IN PEVENT pEvent);
1587
1588VPAPI
1589VOID
1590NTAPI
1592 IN PVOID HwDeviceExtension,
1593 IN PEVENT pEvent);
1594
1595VPAPI
1596LONG
1597NTAPI
1599 IN PVOID HwDeviceExtension,
1600 IN PEVENT pEvent);
1601
1602VPAPI
1604NTAPI
1606 IN PVOID HwDeviceExtension,
1607 IN PVOID Object,
1609
1610VPAPI
1611PVOID
1612NTAPI
1614 IN PVOID HwDeviceExtension,
1617 IN ULONG Tag);
1618
1619VPAPI
1620VOID
1621NTAPI
1623 IN PVOID HwDeviceExtension,
1624 IN PVOID Ptr);
1625
1626VPAPI
1628NTAPI
1630 IN PVOID HwDeviceExtension,
1632
1633VPAPI
1635NTAPI
1637 IN PVOID HwDeviceExtension,
1639
1640VPAPI
1641VOID
1642NTAPI
1644 IN PVOID HwDeviceExtension,
1647
1648VPAPI
1649VOID
1650NTAPI
1652 IN PVOID HwDeviceExtension,
1654
1655VPAPI
1656VOID
1657NTAPI
1659 IN PVOID HwDeviceExtension,
1661 IN UCHAR NewIrql);
1662
1663VPAPI
1664VOID
1665NTAPI
1667 IN PVOID HwDeviceExtension,
1669
1670VPAPI
1671VOID
1672NTAPI
1674 OUT PLARGE_INTEGER CurrentTime);
1675
1676VPAPI
1677BOOLEAN
1678NTAPI
1680 IN PVOID HwDeviceExtension,
1681 IN USHORT VendorId,
1682 IN USHORT DeviceId,
1683 IN UCHAR RevisionId,
1684 IN USHORT SubVendorId,
1685 IN USHORT SubSystemId,
1686 IN ULONG Flags);
1687
1688VPAPI
1689ULONG
1690NTAPI
1693
1694VPAPI
1696NTAPI
1698 PVOID HwDeviceExtension);
1699
1700VPAPI
1702NTAPI
1704 IN PVOID HwDeviceExtension,
1705 IN OUT PVPOSVERSIONINFO pVpOsVersionInfo);
1706
1707VPAPI
1708BOOLEAN
1709NTAPI
1711
1712VPAPI
1714NTAPI
1716 IN PVOID HwDeviceExtension,
1717 IN ULONG BugcheckCode,
1719 IN ULONG BugcheckDataSize);
1720
1721VPAPI
1723NTAPI
1725 IN PVOID HwDeviceExtension,
1726 IN ULONG ulCode,
1727 IN ULONG_PTR ulpArg1,
1728 IN ULONG_PTR ulpArg2,
1729 IN ULONG_PTR ulpArg3,
1730 IN ULONG_PTR ulpArg4);
1731
1732VPAPI
1733BOOLEAN
1734NTAPI
1736 IN OUT PVIDEO_DEBUG_REPORT pReport,
1737 IN PVOID pvData,
1738 IN ULONG ulDataSize);
1739
1740VPAPI
1741VOID
1742NTAPI
1744 IN OUT PVIDEO_DEBUG_REPORT pReport);
1745
1746#ifdef __cplusplus
1747}
1748#endif
static KSYNCHRONIZE_ROUTINE SynchronizeRoutine
Definition: IoInterrupt.c:30
unsigned char BOOLEAN
#define __cdecl
Definition: accygwin.h:79
#define VOID
Definition: acefi.h:82
ACPI_BUFFER *RetBuffer ACPI_BUFFER *RetBuffer char ACPI_WALK_RESOURCE_CALLBACK void *Context ACPI_BUFFER *RetBuffer UINT16 ACPI_RESOURCE **ResourcePtr ACPI_GENERIC_ADDRESS *Reg UINT32 *ReturnValue UINT8 UINT8 *Slp_TypB ACPI_PHYSICAL_ADDRESS PhysicalAddress64 UINT32 UINT32 *TimeElapsed UINT32 ACPI_STATUS const char UINT32 ACPI_STATUS const char UINT32 const char * FunctionName
Definition: acpixf.h:1279
@ Identifier
Definition: asmpp.cpp:95
static const COLUMN_LIST Columns[]
Definition: listview.c:19
#define __int64
Definition: basetyps.h:16
_In_opt_ PWSTR _In_ PWSTR ParameterName
Definition: cdrom.h:961
_In_ PSCSI_REQUEST_BLOCK _In_opt_ PVOID _In_ ULONG _In_ BOOLEAN WriteToDevice
Definition: cdrom.h:992
_In_ ULONG _In_opt_ WDFREQUEST _In_opt_ PVOID _In_ size_t _In_ PVOID _In_ size_t _Out_ size_t * DataLength
Definition: cdrom.h:1444
Definition: bufpool.h:45
_In_ PVOID Argument2
Definition: classpnp.h:721
#define BufferSize
Definition: mmc.h:75
VOID(WINAPI * PINTERFACE_DEREFERENCE)(PVOID Context)
Definition: precomp.h:16
VOID(WINAPI * PINTERFACE_REFERENCE)(PVOID Context)
Definition: precomp.h:13
DRIVER_INITIALIZE DriverEntry
Definition: condrv.c:21
IN OUT PLONG Addend
Definition: CrNtStubs.h:25
_Must_inspect_result_ _In_ PFLT_GET_OPERATION_STATUS_CALLBACK CallbackRoutine
Definition: fltkernel.h:1035
FP_OP Operation
Definition: fpcontrol.c:150
_Must_inspect_result_ _In_ PFSRTL_PER_STREAM_CONTEXT Ptr
Definition: fsrtlfuncs.h:898
CPPORT Port[4]
Definition: headless.c:35
_In_ GUID _In_ PVOID ValueData
Definition: hubbusif.h:312
enum _INTERFACE_TYPE INTERFACE_TYPE
#define Unused(x)
Definition: atlwin.h:28
static HRESULT QueryInterface(REFIID, void **)
Definition: events.c:2587
_In_ NDIS_ERROR_CODE ErrorCode
Definition: ndis.h:4436
_In_ UINT _In_ UINT _In_ PNDIS_PACKET Source
Definition: ndis.h:3169
_Out_ PNDIS_HANDLE _Out_ PUINT _In_ PNDIS_STRING _In_ NDIS_PHYSICAL_ADDRESS HighestAcceptableAddress
Definition: ndis.h:3230
_In_ HANDLE ProcessHandle
Definition: mmfuncs.h:403
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID * BaseAddress
Definition: mmfuncs.h:404
_In_ PUNICODE_STRING _Inout_ PUNICODE_STRING Destination
Definition: rtlfuncs.h:2992
int Count
Definition: noreturn.cpp:7
#define FASTCALL
Definition: nt_native.h:50
#define _ANONYMOUS_UNION
Definition: ntbasedef.h:30
__GNU_EXTENSION typedef __int64 * PLONGLONG
Definition: ntbasedef.h:382
_In_ ULONG _In_ ULONG Offset
Definition: ntddpcm.h:101
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
#define CONST
Definition: pedump.c:81
#define BOOLEAN
Definition: pedump.c:73
short SHORT
Definition: pedump.c:59
long LONG
Definition: pedump.c:60
unsigned short USHORT
Definition: pedump.c:61
static ULONG Timeout
Definition: ping.c:61
enum _KINTERRUPT_MODE KINTERRUPT_MODE
enum _BUS_DATA_TYPE BUS_DATA_TYPE
enum _DMA_SPEED DMA_SPEED
VOID(NTAPI * PBANKED_SECTION_ROUTINE)(IN ULONG ReadBank, IN ULONG WriteBank, IN PVOID Context)
Definition: miniport.h:50
enum _DMA_WIDTH DMA_WIDTH
_Must_inspect_result_ _In_ PVOID _In_ struct _HW_INITIALIZATION_DATA _In_ PVOID HwContext
Definition: srb.h:898
_Must_inspect_result_ _In_ PVOID _In_ struct _HW_INITIALIZATION_DATA * HwInitializationData
Definition: srb.h:897
VPAPI USHORT NTAPI VideoPortReadRegisterUshort(IN PUSHORT Register)
BOOLEAN(NTAPI * PI2C_START_2)(IN PVOID HwDeviceExtension, IN PVIDEO_I2C_CONTROL I2CControl)
Definition: video.h:409
VPAPI PVOID NTAPI VideoPortLockBuffer(IN PVOID HwDeviceExtension, IN PVOID BaseAddress, IN ULONG Length, IN VP_LOCK_OPERATION Operation)
Definition: resource.c:975
struct _VIDEO_PORT_INT10_INTERFACE VIDEO_PORT_INT10_INTERFACE
VPAPI PVOID NTAPI VideoPortGetMdl(IN PVOID HwDeviceExtension, IN PDMA pDma)
Definition: stubs.c:58
VPAPI VP_STATUS NTAPI VideoPortGetVersion(IN PVOID HwDeviceExtension, IN OUT PVPOSVERSIONINFO pVpOsVersionInfo)
Definition: videoprt.c:1473
VPAPI VOID NTAPI VideoPortZeroMemory(IN PVOID Destination, IN ULONG Length)
VPAPI VOID NTAPI VideoPortUnlockBuffer(IN PVOID HwDeviceExtension, IN PVOID Mdl)
Definition: resource.c:1040
VPAPI VOID NTAPI VideoPortReleaseCommonBuffer(IN PVOID HwDeviceExtension, IN PVP_DMA_ADAPTER VpDmaAdapter, IN ULONG Length, IN PHYSICAL_ADDRESS LogicalAddress, IN PVOID VirtualAddress, IN BOOLEAN CacheEnabled)
Definition: dma.c:68
struct _VIDEO_HARDWARE_CONFIGURATION_DATA VIDEO_HARDWARE_CONFIGURATION_DATA
VPAPI BOOLEAN NTAPI VideoPortUnmapDmaMemory(IN PVOID HwDeviceExtension, IN PVOID VirtualAddress, IN HANDLE ProcessHandle, IN PDMA BoardMemoryHandle)
VPAPI VP_STATUS NTAPI VideoPortAllocateBuffer(IN PVOID HwDeviceExtension, IN ULONG Size, OUT PVOID *Buffer)
Definition: resource.c:947
VPAPI VOID NTAPI VideoPortWriteRegisterBufferUchar(IN PUCHAR Register, IN PUCHAR Buffer, IN ULONG Count)
VPAPI UCHAR NTAPI VideoPortGetCurrentIrql(VOID)
Definition: videoprt.c:912
VPAPI BOOLEAN NTAPI VideoPortSynchronizeExecution(IN PVOID HwDeviceExtension, IN VIDEO_SYNCHRONIZE_PRIORITY Priority, IN PMINIPORT_SYNCHRONIZE_ROUTINE SynchronizeRoutine, IN PVOID Context)
struct _VP_DEVICE_DESCRIPTION VP_DEVICE_DESCRIPTION
VIDEO_DEBUG_LEVEL
Definition: video.h:579
@ Error
Definition: video.h:580
@ Warn
Definition: video.h:581
@ Trace
Definition: video.h:582
VPAPI VOID NTAPI VideoPortWriteRegisterBufferUlong(IN PULONG Register, IN PULONG Buffer, IN ULONG Count)
VPAPI ULONG NTAPI VideoPortGetAssociatedDeviceID(IN PVOID DeviceObject)
Definition: stubs.c:38
VPAPI VOID NTAPI VideoPortSetDmaContext(IN PVOID HwDeviceExtension, OUT PDMA pDma, IN PVOID InstanceContext)
Definition: dma.c:302
PVOID(NTAPI * PVIDEO_PORT_GET_PROC_ADDRESS)(IN PVOID HwDeviceExtension, IN PUCHAR FunctionName)
Definition: video.h:162
VPAPI VOID NTAPI VideoPortWriteRegisterUshort(IN PUSHORT Register, IN USHORT Value)
VOID(NTAPI * PVIDEO_WRITE_CLOCK_LINE)(PVOID HwDeviceExtension, UCHAR Data)
Definition: video.h:348
VPAPI VP_STATUS NTAPI VideoPortDeleteEvent(IN PVOID HwDeviceExtension, IN PEVENT pEvent)
struct __VRB_SG VRB_SG
VPAPI VP_STATUS NTAPI VideoPortMapBankedMemory(IN PVOID HwDeviceExtension, IN PHYSICAL_ADDRESS PhysicalAddress, IN OUT PULONG Length, PULONG InIoSpace, PVOID *VirtualAddress, ULONG BankLength, UCHAR ReadWriteBank, PBANKED_SECTION_ROUTINE BankRoutine, PVOID Context)
VPAPI VP_STATUS NTAPI VideoPortUnmapMemory(IN PVOID HwDeviceExtension, IN OUT PVOID VirtualAddress, IN HANDLE ProcessHandle)
VPAPI PVOID NTAPI VideoPortGetRomImage(IN PVOID HwDeviceExtension, IN PVOID Unused1, IN ULONG Unused2, IN ULONG Length)
Definition: videoprt.c:1063
VPAPI LONG FASTCALL VideoPortInterlockedExchange(IN OUT PLONG Target, IN LONG Value)
Definition: stubs.c:116
VPAPI VOID NTAPI VideoPortZeroDeviceMemory(IN PVOID Destination, IN ULONG Length)
struct _INT10_BIOS_ARGUMENTS * PINT10_BIOS_ARGUMENTS
VPAPI VOID NTAPI VideoPortWritePortBufferUchar(IN PUCHAR Port, IN PUCHAR Buffer, IN ULONG Count)
_VIDEO_DEVICE_DATA_TYPE
Definition: video.h:489
@ VpMachineData
Definition: video.h:490
@ VpBusData
Definition: video.h:492
@ VpControllerData
Definition: video.h:493
@ VpMonitorData
Definition: video.h:494
@ VpCmosData
Definition: video.h:491
HW_DMA_RETURN(NTAPI * PVIDEO_HW_START_DMA)(PVOID HwDeviceExtension, PDMA pDma)
Definition: video.h:236
enum VIDEO_DEBUG_LEVEL * PVIDEO_DEBUG_LEVEL
VPAPI ULONG NTAPI VideoPortReadRegisterUlong(IN PULONG Register)
VPAPI VOID NTAPI VideoPortAcquireDeviceLock(IN PVOID HwDeviceExtension)
Definition: videoprt.c:1603
LONG VP_STATUS
Definition: video.h:153
VPAPI PVOID NTAPI VideoPortGetDeviceBase(IN PVOID HwDeviceExtension, IN PHYSICAL_ADDRESS IoAddress, IN ULONG NumberOfUchars, IN UCHAR InIoSpace)
Definition: resource.c:452
BOOLEAN(NTAPI * PI2C_READ)(IN PVOID HwDeviceExtension, IN PI2C_CALLBACKS I2CCallbacks, OUT PUCHAR Buffer, IN ULONG Length)
Definition: video.h:394
struct _QUERY_INTERFACE QUERY_INTERFACE
VPAPI VP_STATUS NTAPI VideoPortFlushRegistry(PVOID HwDeviceExtension)
Definition: stubs.c:29
struct _VIDEO_PORT_AGP_INTERFACE VIDEO_PORT_AGP_INTERFACE
VPAPI VOID NTAPI VideoPortFreeDeviceBase(IN PVOID HwDeviceExtension, IN PVOID MappedAddress)
Definition: resource.c:473
struct _VP_SCATTER_GATHER_LIST * PVP_SCATTER_GATHER_LIST
BOOLEAN(NTAPI * PVIDEO_HW_INTERRUPT)(IN PVOID HwDeviceExtension)
Definition: video.h:211
VPAPI VOID NTAPI VideoPortFreeCommonBuffer(IN PVOID HwDeviceExtension, IN ULONG Length, IN PVOID VirtualAddress, IN PHYSICAL_ADDRESS LogicalAddress, IN BOOLEAN CacheEnabled)
Definition: dma.c:187
struct _VIDEO_CHILD_ENUM_INFO VIDEO_CHILD_ENUM_INFO
VPAPI VOID NTAPI VideoPortWriteRegisterUchar(IN PUCHAR Register, IN UCHAR Value)
VP_STATUS(NTAPI * RESTORE_WC_MEMORY)(IN PVOID Context, IN PVOID HwDeviceExtension)
Definition: video.h:485
VPAPI VP_STATUS NTAPI VideoPortCreateSpinLock(IN PVOID HwDeviceExtension, OUT PSPIN_LOCK *SpinLock)
Definition: spinlock.c:32
VPAPI BOOLEAN NTAPI VideoPortUnlockPages(IN PVOID hwDeviceExtension, IN OUT PDMA pDma)
VPAPI BOOLEAN NTAPI VideoPortIsNoVesa(VOID)
Definition: videoprt.c:1661
VP_STATUS(NTAPI * PDRIVER_IO_PORT_USHORT_STRING)(IN ULONG_PTR Context, IN ULONG Port, IN UCHAR AccessMode, IN PUSHORT Data, IN ULONG DataLength)
Definition: video.h:626
VPAPI VOID NTAPI VideoPortFreePool(IN PVOID HwDeviceExtension, IN PVOID Ptr)
Definition: resource.c:935
VPAPI PVOID NTAPI VideoPortGetCommonBuffer(IN PVOID HwDeviceExtension, IN ULONG DesiredLength, IN ULONG Alignment, OUT PPHYSICAL_ADDRESS LogicalAddress, OUT PULONG pActualLength, IN BOOLEAN CacheEnabled)
Definition: dma.c:215
VOID(NTAPI * PVIDEO_BUGCHECK_CALLBACK)(IN PVOID HwDeviceExtension, IN ULONG BugcheckCode, IN PUCHAR Buffer, IN ULONG BufferSize)
Definition: video.h:527
VIDEO_SYNCHRONIZE_PRIORITY
Definition: video.h:534
@ VpMediumPriority
Definition: video.h:536
@ VpLowPriority
Definition: video.h:535
@ VpHighPriority
Definition: video.h:537
VOID(NTAPI * PMINIPORT_DPC_ROUTINE)(IN PVOID HwDeviceExtension, IN PVOID Context)
Definition: video.h:518
VPAPI VP_STATUS NTAPI VideoPortCompleteDma(IN PVOID HwDeviceExtension, IN PVP_DMA_ADAPTER VpDmaAdapter, IN PVP_SCATTER_GATHER_LIST VpScatterGather, IN BOOLEAN WriteToDevice)
Definition: dma.c:453
struct _VIDEO_PORT_I2C_INTERFACE VIDEO_PORT_I2C_INTERFACE
struct _VP_SCATTER_GATHER_ELEMENT * PVP_SCATTER_GATHER_ELEMENT
_DMA_FLAGS
Definition: video.h:548
@ VideoPortUnlockAfterDma
Definition: video.h:549
@ VideoPortKeepPagesLocked
Definition: video.h:550
@ VideoPortDmaInitOnly
Definition: video.h:551
LONG * PVP_STATUS
Definition: video.h:153
BOOLEAN(NTAPI * PVIDEO_HW_START_IO)(IN PVOID HwDeviceExtension, IN PVIDEO_REQUEST_PACKET RequestPacket)
Definition: video.h:339
struct _VIDEO_PORT_WCMEMORYPROTECTION_INTERFACE * PVIDEO_PORT_WCMEMORYPROTECTION_INTERFACE
VPAPI VP_STATUS NTAPI VideoPortGetRegistryParameters(IN PVOID HwDeviceExtension, IN PWSTR ParameterName, IN UCHAR IsParameterFileName, IN PMINIPORT_GET_REGISTRY_ROUTINE CallbackRoutine, IN PVOID Context)
Definition: videoprt.c:953
struct _VIDEO_PORT_DEBUG_REPORT_INTERFACE * PVIDEO_PORT_DEBUG_REPORT_INTERFACE
struct _VIDEO_HW_INITIALIZATION_DATA VIDEO_HW_INITIALIZATION_DATA
struct _VPOSVERSIONINFO * PVPOSVERSIONINFO
VPAPI VOID NTAPI VideoPortReadPortBufferUlong(IN PULONG Port, OUT PULONG Buffer, IN ULONG Count)
struct __DMA_PARAMETERS * PDMA
Definition: video.h:158
BOOLEAN(NTAPI * PI2C_WRITE_2)(IN PVOID HwDeviceExtension, IN PVIDEO_I2C_CONTROL I2CControl, IN PUCHAR Buffer, IN ULONG Length)
Definition: video.h:419
VPAPI VOID NTAPI VideoPortQuerySystemTime(OUT PLARGE_INTEGER CurrentTime)
VPAPI ULONG NTAPI VideoPortReadPortUlong(IN PULONG Port)
BOOLEAN(NTAPI * PVIDEO_HW_RESET_HW)(IN PVOID HwDeviceExtension, IN ULONG Columns, IN ULONG Rows)
Definition: video.h:316
struct _VIDEO_DEBUG_REPORT * PVIDEO_DEBUG_REPORT
Definition: video.h:157
struct _I2C_FNC_TABLE I2C_FNC_TABLE
VPAPI VOID NTAPI VideoPortWritePortUlong(IN PULONG Port, IN ULONG Value)
enum VIDEO_SYNCHRONIZE_PRIORITY * PVIDEO_SYNCHRONIZE_PRIORITY
VPAPI ULONG NTAPI VideoPortInitialize(IN PVOID Argument1, IN PVOID Argument2, IN PVIDEO_HW_INITIALIZATION_DATA HwInitializationData, IN PVOID HwContext)
Definition: videoprt.c:663
BOOLEAN(NTAPI * PI2C_STOP_2)(IN PVOID HwDeviceExtension, IN PVIDEO_I2C_CONTROL I2CControl)
Definition: video.h:414
struct _VIDEO_X86_BIOS_ARGUMENTS VIDEO_X86_BIOS_ARGUMENTS
enum _VIDEO_DEVICE_DATA_TYPE * PVIDEO_DEVICE_DATA_TYPE
struct _VP_DEVICE_DESCRIPTION * PVP_DEVICE_DESCRIPTION
VPAPI UCHAR NTAPI VideoPortReadPortUchar(IN PUCHAR Port)
struct _VIDEO_CHILD_STATE_CONFIGURATION VIDEO_CHILD_STATE_CONFIGURATION
VPAPI BOOLEAN NTAPI VideoPortDDCMonitorHelper(IN PVOID HwDeviceExtension, IN PVOID DDCControl, IN OUT PUCHAR EdidBuffer, IN ULONG EdidBufferSize)
struct _VPOSVERSIONINFO VPOSVERSIONINFO
VPAPI VP_STATUS NTAPI VideoPortEnumerateChildren(IN PVOID HwDeviceExtension, IN PVOID Reserved)
Definition: videoprt.c:1367
VP_STATUS(NTAPI * PVIDEO_HW_QUERY_INTERFACE)(IN PVOID HwDeviceExtension, IN OUT PQUERY_INTERFACE QueryInterface)
Definition: video.h:306
VPAPI VP_STATUS NTAPI VideoPortMapMemory(IN PVOID HwDeviceExtension, IN PHYSICAL_ADDRESS PhysicalAddress, IN OUT PULONG Length, IN PULONG InIoSpace, IN OUT PVOID *VirtualAddress)
ULONG DMA_EVENT_FLAGS
Definition: video.h:154
VPAPI LONG FASTCALL VideoPortInterlockedDecrement(IN PLONG Addend)
Definition: stubs.c:100
VPAPI VP_STATUS NTAPI VideoPortInt10(IN PVOID HwDeviceExtension, IN PVIDEO_X86_BIOS_ARGUMENTS BiosArguments)
Definition: int10.c:457
VPAPI VOID NTAPI VideoPortReleaseSpinLockFromDpcLevel(IN PVOID HwDeviceExtension, IN PSPIN_LOCK SpinLock)
Definition: spinlock.c:104
VPAPI BOOLEAN NTAPI VideoPortDbgReportSecondaryData(IN OUT PVIDEO_DEBUG_REPORT pReport, IN PVOID pvData, IN ULONG ulDataSize)
VPAPI VOID __cdecl VideoPortDebugPrint(IN VIDEO_DEBUG_LEVEL DebugPrintLevel, IN PSTR DebugMessage, IN ...)
VPAPI VP_STATUS NTAPI VideoPortVerifyAccessRanges(IN PVOID HwDeviceExtension, IN ULONG NumAccessRanges, IN PVIDEO_ACCESS_RANGE AccessRanges)
Definition: resource.c:824
struct _STATUS_BLOCK STATUS_BLOCK
VPAPI BOOLEAN NTAPI VideoPortQueueDpc(IN PVOID HwDeviceExtension, IN PMINIPORT_DPC_ROUTINE CallbackRoutine, IN PVOID Context)
Definition: videoprt.c:1440
VOID(NTAPI * PVIDEO_HW_LEGACYRESOURCES)(IN ULONG VendorId, IN ULONG DeviceId, IN OUT PVIDEO_ACCESS_RANGE *LegacyResourceList, IN OUT PULONG LegacyResourceCount)
Definition: video.h:224
VPAPI USHORT NTAPI VideoPortReadPortUshort(IN PUSHORT Port)
VP_STATUS(NTAPI * PVIDEO_HW_GET_CHILD_DESCRIPTOR)(IN PVOID HwDeviceExtension, IN PVIDEO_CHILD_ENUM_INFO ChildEnumInfo, OUT PVIDEO_CHILD_TYPE VideoChildType, OUT PUCHAR pChildDescriptor, OUT PULONG UId, OUT PULONG pUnused)
Definition: video.h:277
VPAPI VP_STATUS NTAPI VideoPortWaitForSingleObject(IN PVOID HwDeviceExtension, IN PVOID Object, IN PLARGE_INTEGER Timeout OPTIONAL)
VPAPI PDMA NTAPI VideoPortDoDma(IN PVOID HwDeviceExtension, IN PDMA pDma, IN DMA_FLAGS DmaFlags)
Definition: dma.c:426
VPAPI VOID NTAPI VideoPortStallExecution(IN ULONG Microseconds)
enum _DMA_FLAGS DMA_FLAGS
VPAPI VP_STATUS NTAPI VideoPortGetAccessRanges(IN PVOID HwDeviceExtension, IN ULONG NumRequestedResources, IN PIO_RESOURCE_DESCRIPTOR RequestedResources OPTIONAL, IN ULONG NumAccessRanges, OUT PVIDEO_ACCESS_RANGE AccessRanges, IN PVOID VendorId, IN PVOID DeviceId, OUT PULONG Slot)
VP_STATUS(NTAPI * PVIDEO_HW_FIND_ADAPTER)(IN PVOID HwDeviceExtension, IN PVOID HwContext, IN PWSTR ArgumentString, IN OUT PVIDEO_PORT_CONFIG_INFO ConfigInfo, OUT PUCHAR Again)
Definition: video.h:199
VPAPI LONG NTAPI VideoPortSetEvent(IN PVOID HwDeviceExtension, IN PEVENT pEvent)
VPAPI VP_STATUS NTAPI VideoPortQueryServices(IN PVOID HwDeviceExtension, IN VIDEO_PORT_SERVICES ServicesType, IN OUT PINTERFACE Interface)
Definition: services.c:40
enum _VP_POOL_TYPE VP_POOL_TYPE
enum _VP_POOL_TYPE * PVP_POOL_TYPE
VPAPI BOOLEAN NTAPI VideoPortCheckForDeviceExistence(IN PVOID HwDeviceExtension, IN USHORT VendorId, IN USHORT DeviceId, IN UCHAR RevisionId, IN USHORT SubVendorId, IN USHORT SubSystemId, IN ULONG Flags)
Definition: videoprt.c:1511
struct _VIDEO_PORT_I2C_INTERFACE_2 VIDEO_PORT_I2C_INTERFACE_2
struct _VP_SCATTER_GATHER_ELEMENT VP_SCATTER_GATHER_ELEMENT
struct _STATUS_BLOCK * PSTATUS_BLOCK
VPAPI VOID NTAPI VideoPortMoveMemory(IN PVOID Destination, IN PVOID Source, IN ULONG Length)
VPAPI VP_STATUS NTAPI VideoPortDeleteSpinLock(IN PVOID HwDeviceExtension, IN PSPIN_LOCK SpinLock)
Definition: spinlock.c:49
enum _HW_DMA_RETURN HW_DMA_RETURN
VOID(NTAPI * PVIDEO_HW_TIMER)(IN PVOID HwDeviceExtension)
Definition: video.h:344
VPAPI VOID NTAPI VideoPortPutDmaAdapter(IN PVOID HwDeviceExtension, IN PVP_DMA_ADAPTER VpDmaAdapter)
Definition: dma.c:93
BOOLEAN(NTAPI * PVIDEO_READ_CLOCK_LINE)(PVOID HwDeviceExtension)
Definition: video.h:358
struct _VIDEO_PORT_INT10_INTERFACE * PVIDEO_PORT_INT10_INTERFACE
VP_STATUS(NTAPI * PINT10_CALL_BIOS)(IN PVOID Context, IN OUT PINT10_BIOS_ARGUMENTS BiosArguments)
Definition: video.h:446
VPAPI VOID NTAPI VideoPortReadRegisterBufferUchar(IN PUCHAR Register, OUT PUCHAR Buffer, IN ULONG Count)
struct _VIDEO_CHILD_STATE VIDEO_CHILD_STATE
VPAPI ULONG NTAPI VideoPortSetBusData(IN PVOID HwDeviceExtension, IN BUS_DATA_TYPE BusDataType, IN ULONG SlotNumber, IN PVOID Buffer, IN ULONG Offset, IN ULONG Length)
Definition: resource.c:1106
VP_STATUS(NTAPI * PVIDEO_HW_CHILD_CALLBACK)(PVOID HwDeviceExtension, PVOID ChildDeviceExtension)
Definition: video.h:311
VPAPI UCHAR NTAPI VideoPortReadRegisterUchar(IN PUCHAR Register)
VOID(NTAPI * PVIDEO_WRITE_DATA_LINE)(PVOID HwDeviceExtension, UCHAR Data)
Definition: video.h:353
VP_STATUS(NTAPI * PDRIVER_IO_PORT_ULONG_STRING)(IN ULONG_PTR Context, IN ULONG Port, IN UCHAR AccessMode, IN PULONG Data, IN ULONG DataLength)
Definition: video.h:611
VPAPI LONG NTAPI VideoPortReadStateEvent(IN PVOID HwDeviceExtension, IN PEVENT pEvent)
VP_STATUS(NTAPI * PMINIPORT_QUERY_DEVICE_ROUTINE)(IN PVOID HwDeviceExtension, IN PVOID Context, IN VIDEO_DEVICE_DATA_TYPE DeviceDataType, IN PVOID Identifier, IN ULONG IdentifierLength, IN PVOID ConfigurationData, IN ULONG ConfigurationDataLength, IN OUT PVOID ComponentInformation, IN ULONG ComponentInformationLength)
Definition: video.h:498
VPAPI VOID NTAPI VideoPortReadPortBufferUchar(IN PUCHAR Port, OUT PUCHAR Buffer, IN ULONG Count)
VPAPI VOID NTAPI VideoPortReleaseDeviceLock(IN PVOID HwDeviceExtension)
Definition: videoprt.c:1619
VPAPI VP_STATUS NTAPI VideoPortCreateEvent(IN PVOID HwDeviceExtension, IN ULONG EventFlag, IN PVOID Unused, OUT PEVENT *ppEvent)
VP_STATUS(NTAPI * PINT10_ALLOCATE_BUFFER)(IN PVOID Context, OUT PUSHORT Seg, OUT PUSHORT Off, IN OUT PULONG Length)
Definition: video.h:451
VPAPI VOID NTAPI VideoPortAcquireSpinLockAtDpcLevel(IN PVOID HwDeviceExtension, IN PSPIN_LOCK SpinLock)
Definition: spinlock.c:77
struct _VP_SCATTER_GATHER_LIST VP_SCATTER_GATHER_LIST
struct _VIDEO_CHILD_ENUM_INFO * PVIDEO_CHILD_ENUM_INFO
BOOLEAN(NTAPI * PI2C_WRITE)(IN PVOID HwDeviceExtension, IN PI2C_CALLBACKS I2CCallbacks, IN PUCHAR Buffer, IN ULONG Length)
Definition: video.h:387
enum _VIDEO_CHILD_TYPE * PVIDEO_CHILD_TYPE
VPAPI PVOID NTAPI VideoPortAllocatePool(IN PVOID HwDeviceExtension, IN VP_POOL_TYPE PoolType, IN SIZE_T NumberOfBytes, IN ULONG Tag)
Definition: resource.c:920
VPAPI VOID NTAPI VideoPortReleaseSpinLock(IN PVOID HwDeviceExtension, IN PSPIN_LOCK SpinLock, IN UCHAR NewIrql)
Definition: spinlock.c:90
VPAPI VP_STATUS NTAPI VideoPortGetDeviceData(IN PVOID HwDeviceExtension, IN VIDEO_DEVICE_DATA_TYPE DeviceDataType, IN PMINIPORT_QUERY_DEVICE_ROUTINE CallbackRoutine, IN PVOID Context)
Definition: resource.c:904
VPAPI VOID NTAPI VideoPortReadPortBufferUshort(IN PUSHORT Port, OUT PUSHORT Buffer, IN ULONG Count)
_VIDEO_CHILD_TYPE
Definition: video.h:269
@ Monitor
Definition: video.h:270
@ VideoChip
Definition: video.h:272
@ NonPrimaryChip
Definition: video.h:271
@ Other
Definition: video.h:273
VP_STATUS(NTAPI * PVIDEO_HW_POWER_SET)(IN PVOID HwDeviceExtension, IN ULONG HwId, IN PVIDEO_POWER_MANAGEMENT VideoPowerControl)
Definition: video.h:286
struct _VIDEO_HARDWARE_CONFIGURATION_DATA * PVIDEO_HARDWARE_CONFIGURATION_DATA
VPAPI PVOID NTAPI VideoPortAllocateContiguousMemory(IN PVOID HwDeviceExtension, IN ULONG NumberOfBytes, IN PHYSICAL_ADDRESS HighestAcceptableAddress)
Definition: videoprt.c:1647
VPAPI PVOID NTAPI VideoPortAllocateCommonBuffer(IN PVOID HwDeviceExtension, IN PVP_DMA_ADAPTER VpDmaAdapter, IN ULONG DesiredLength, OUT PPHYSICAL_ADDRESS LogicalAddress, IN BOOLEAN CacheEnabled, PVOID Reserved)
Definition: dma.c:43
struct _VIDEO_I2C_CONTROL VIDEO_I2C_CONTROL
struct _I2C_CALLBACKS I2C_CALLBACKS
BOOLEAN(NTAPI * PI2C_STOP)(IN PVOID HwDeviceExtension, IN PI2C_CALLBACKS I2CCallbacks)
Definition: video.h:382
VPAPI VOID NTAPI VideoPortClearEvent(IN PVOID HwDeviceExtension, IN PEVENT pEvent)
VPAPI VP_STATUS NTAPI VideoPortSetRegistryParameters(IN PVOID HwDeviceExtension, IN PWSTR ValueName, IN PVOID ValueData, IN ULONG ValueLength)
Definition: videoprt.c:1004
enum _VIDEO_PORT_SERVICES VIDEO_PORT_SERVICES
BOOLEAN(NTAPI * PVIDEO_READ_DATA_LINE)(PVOID HwDeviceExtension)
Definition: video.h:362
VPAPI ULONG NTAPI VideoPortGetBytesUsed(IN PVOID HwDeviceExtension, IN PDMA pDma)
Definition: stubs.c:48
enum _VIDEO_DEVICE_DATA_TYPE VIDEO_DEVICE_DATA_TYPE
struct _VIDEO_CHILD_STATE_CONFIGURATION * PVIDEO_CHILD_STATE_CONFIGURATION
VPAPI VOID NTAPI VideoPortWritePortBufferUshort(IN PUSHORT Port, IN PUSHORT Buffer, IN ULONG Count)
_VP_LOCK_OPERATION
Definition: video.h:640
@ VpReadAccess
Definition: video.h:641
@ VpWriteAccess
Definition: video.h:642
@ VpModifyAccess
Definition: video.h:643
struct _VIDEO_PORT_DEBUG_REPORT_INTERFACE VIDEO_PORT_DEBUG_REPORT_INTERFACE
VP_STATUS(NTAPI * PDRIVER_IO_PORT_UCHAR)(IN ULONG_PTR Context, IN ULONG Port, IN UCHAR AccessMode, IN PUCHAR Data)
Definition: video.h:589
VPAPI VOID NTAPI VideoPortWritePortUchar(IN PUCHAR Port, IN UCHAR Value)
struct _VIDEO_PORT_AGP_INTERFACE * PVIDEO_PORT_AGP_INTERFACE
VPAPI VP_STATUS NTAPI VideoPortDisableInterrupt(IN PVOID HwDeviceExtension)
Definition: interrupt.c:154
VPAPI VP_STATUS NTAPI VideoPortGetVgaStatus(IN PVOID HwDeviceExtension, OUT PULONG VgaStatus)
Definition: videoprt.c:1035
VPAPI VOID NTAPI VideoPortReadRegisterBufferUshort(IN PUSHORT Register, OUT PUSHORT Buffer, IN ULONG Count)
VPAPI VOID NTAPI VideoPortStopTimer(IN PVOID HwDeviceExtension)
Definition: timer.c:89
enum _HW_DMA_RETURN * PHW_DMA_RETURN
struct _VIDEO_PORT_I2C_INTERFACE_2 * PVIDEO_PORT_I2C_INTERFACE_2
VP_STATUS(NTAPI * PVIDEO_HW_POWER_GET)(IN PVOID HwDeviceExtension, IN ULONG HwId, IN OUT PVIDEO_POWER_MANAGEMENT VideoPowerControl)
Definition: video.h:292
struct _VIDEO_PORT_AGP_INTERFACE_2 * PVIDEO_PORT_AGP_INTERFACE_2
struct _DDC_CONTROL * PDDC_CONTROL
VP_STATUS(NTAPI * PDRIVER_IO_PORT_ULONG)(IN ULONG_PTR Context, IN ULONG Port, IN UCHAR AccessMode, IN PULONG Data)
Definition: video.h:604
struct _INT10_BIOS_ARGUMENTS INT10_BIOS_ARGUMENTS
VP_STATUS(NTAPI * PINT10_FREE_BUFFER)(IN PVOID Context, IN USHORT Seg, IN USHORT Off)
Definition: video.h:458
VPAPI VOID NTAPI VideoPortWritePortBufferUlong(IN PULONG Port, IN PULONG Buffer, IN ULONG Count)
VPAPI BOOLEAN NTAPI VideoPortSignalDmaComplete(IN PVOID HwDeviceExtension, IN PDMA pDmaHandle)
Definition: dma.c:315
VPAPI LONGLONG NTAPI VideoPortQueryPerformanceCounter(IN PVOID HwDeviceExtension, OUT PLONGLONG PerformanceFrequency OPTIONAL)
Definition: videoprt.c:1587
struct _VIDEO_PORT_CONFIG_INFO VIDEO_PORT_CONFIG_INFO
VP_STATUS(NTAPI * PDRIVER_IO_PORT_UCHAR_STRING)(IN ULONG_PTR Context, IN ULONG Port, IN UCHAR AccessMode, IN PUCHAR Data, IN ULONG DataLength)
Definition: video.h:596
VPAPI BOOLEAN NTAPI VideoPortLockPages(IN PVOID HwDeviceExtension, IN OUT PVIDEO_REQUEST_PACKET pVrp, IN OUT PEVENT pUEvent, IN PEVENT pDisplayEvent, IN DMA_FLAGS DmaFlags)
VP_STATUS(NTAPI * PROTECT_WC_MEMORY)(IN PVOID Context, IN PVOID HwDeviceExtension)
Definition: video.h:480
enum _VIDEO_CHILD_TYPE VIDEO_CHILD_TYPE
VP_STATUS(NTAPI * PINT10_WRITE_MEMORY)(IN PVOID Context, IN USHORT Seg, IN USHORT Off, IN PVOID Buffer, IN ULONG Length)
Definition: video.h:472
VOID(NTAPI * PEXECUTE_DMA)(IN PVOID HwDeviceExtension, IN PVP_DMA_ADAPTER VpDmaAdapter, IN PVP_SCATTER_GATHER_LIST SGList, IN PVOID Context)
Definition: video.h:253
VP_STATUS(NTAPI * PINT10_READ_MEMORY)(IN PVOID Context, IN USHORT Seg, IN USHORT Off, OUT PVOID Buffer, IN ULONG Length)
Definition: video.h:464
VPAPI PVOID NTAPI VideoPortGetAssociatedDeviceExtension(IN PVOID DeviceObject)
Definition: videoprt.c:1456
VPAPI PVOID NTAPI VideoPortGetDmaContext(IN PVOID HwDeviceExtension, IN PDMA pDma)
Definition: dma.c:414
VPAPI VP_STATUS NTAPI VideoPortStartDma(IN PVOID HwDeviceExtension, IN PVP_DMA_ADAPTER VpDmaAdapter, IN PVOID Mdl, IN ULONG Offset, IN OUT PULONG pLength, IN PEXECUTE_DMA ExecuteDmaRoutine, IN PVOID Context, IN BOOLEAN WriteToDevice)
Definition: dma.c:355
VPAPI VOID NTAPI VideoPortSetBytesUsed(IN PVOID HwDeviceExtension, IN OUT PDMA pDma, IN ULONG BytesUsed)
Definition: stubs.c:68
VPAPI VP_STATUS NTAPI VideoPortCreateSecondaryDisplay(IN PVOID HwDeviceExtension, IN OUT PVOID *SecondaryDeviceExtension, IN ULONG ulFlag)
Definition: videoprt.c:1390
VP_STATUS(NTAPI * PDRIVER_IO_PORT_USHORT)(IN ULONG_PTR Context, IN ULONG Port, IN UCHAR AccessMode, IN PUSHORT Data)
Definition: video.h:619
struct _QUERY_INTERFACE * PQUERY_INTERFACE
VPAPI VOID NTAPI VideoPortWritePortUshort(IN PUSHORT Port, IN USHORT Value)
_VIDEO_PORT_SERVICES
Definition: video.h:704
@ VideoPortServicesWCMemoryProtection
Definition: video.h:710
@ VideoPortServicesAGP
Definition: video.h:705
@ VideoPortServicesI2C
Definition: video.h:706
@ VideoPortServicesHeadless
Definition: video.h:707
@ VideoPortServicesDebugReport
Definition: video.h:709
@ VideoPortServicesInt10
Definition: video.h:708
VPAPI VOID NTAPI VideoPortAcquireSpinLock(IN PVOID HwDeviceExtension, IN PSPIN_LOCK SpinLock, OUT PUCHAR OldIrql)
Definition: spinlock.c:63
VPAPI ULONG NTAPI VideoPortGetBusData(IN PVOID HwDeviceExtension, IN BUS_DATA_TYPE BusDataType, IN ULONG SlotNumber, IN OUT PVOID Buffer, IN ULONG Offset, IN ULONG Length)
VPAPI ULONG NTAPI VideoPortCompareMemory(IN PVOID Source1, IN PVOID Source2, IN SIZE_T Length)
struct _DDC_CONTROL DDC_CONTROL
struct __VRB_SG * PVRB_SG
VPAPI VOID NTAPI VideoPortWriteRegisterUlong(IN PULONG Register, IN ULONG Value)
struct _VIDEO_PORT_SPIN_LOCK * PSPIN_LOCK
Definition: video.h:156
struct _VIDEO_PORT_CONFIG_INFO * PVIDEO_PORT_CONFIG_INFO
VPAPI LONG FASTCALL VideoPortInterlockedIncrement(IN PLONG Addend)
Definition: stubs.c:108
VPAPI BOOLEAN NTAPI VideoPortScanRom(PVOID HwDeviceExtension, PUCHAR RomBase, ULONG RomLength, PUCHAR String)
struct _VIDEO_PORT_AGP_INTERFACE_2 VIDEO_PORT_AGP_INTERFACE_2
VPAPI PVP_DMA_ADAPTER NTAPI VideoPortGetDmaAdapter(IN PVOID HwDeviceExtension, IN PVP_DEVICE_DESCRIPTION VpDeviceDescription)
Definition: dma.c:120
struct _VIDEO_X86_BIOS_ARGUMENTS * PVIDEO_X86_BIOS_ARGUMENTS
struct _VIDEO_HW_INITIALIZATION_DATA * PVIDEO_HW_INITIALIZATION_DATA
VPAPI PDMA NTAPI VideoPortMapDmaMemory(IN PVOID HwDeviceExtension, IN PVIDEO_REQUEST_PACKET pVrp, IN PHYSICAL_ADDRESS BoardAddress, IN PULONG Length, IN PULONG InIoSpace, IN PVOID MappedUserEvent, IN PVOID DisplayDriverEvent, IN OUT PVOID *VirtualAddress)
Definition: dma.c:284
VPAPI VP_STATUS NTAPI VideoPortEnableInterrupt(IN PVOID HwDeviceExtension)
Definition: interrupt.c:116
_VP_POOL_TYPE
Definition: video.h:541
@ VpNonPagedPool
Definition: video.h:542
@ VpPagedPool
Definition: video.h:543
@ VpPagedPoolCacheAligned
Definition: video.h:545
@ VpNonPagedPoolCacheAligned
Definition: video.h:544
struct _VIDEO_PORT_WCMEMORYPROTECTION_INTERFACE VIDEO_PORT_WCMEMORYPROTECTION_INTERFACE
VPAPI VOID NTAPI VideoPortReleaseBuffer(IN PVOID HwDeviceExtension, IN PVOID Buffer)
Definition: resource.c:962
VPAPI PVIDEO_DEBUG_REPORT NTAPI VideoPortDbgReportCreate(IN PVOID HwDeviceExtension, IN ULONG ulCode, IN ULONG_PTR ulpArg1, IN ULONG_PTR ulpArg2, IN ULONG_PTR ulpArg3, IN ULONG_PTR ulpArg4)
struct _VIDEO_PORT_I2C_INTERFACE * PVIDEO_PORT_I2C_INTERFACE
struct _I2C_CALLBACKS * PI2C_CALLBACKS
struct _VIDEO_ACCESS_RANGE VIDEO_ACCESS_RANGE
BOOLEAN(NTAPI * PI2C_READ_2)(IN PVOID HwDeviceExtension, IN PVIDEO_I2C_CONTROL I2CControl, OUT PUCHAR Buffer, IN ULONG Length, IN BOOLEAN EndOfRead)
Definition: video.h:426
struct _VIDEO_ACCESS_RANGE * PVIDEO_ACCESS_RANGE
VPAPI VOID NTAPI VideoPortLogError(IN PVOID HwDeviceExtension, IN PVIDEO_REQUEST_PACKET Vrp OPTIONAL, IN VP_STATUS ErrorCode, IN ULONG UniqueId)
Definition: videoprt.c:893
BOOLEAN(NTAPI * PVIDEO_HW_INITIALIZE)(IN PVOID HwDeviceExtension)
Definition: video.h:207
#define VPAPI
Definition: video.h:47
VPAPI VOID NTAPI VideoPortWriteRegisterBufferUshort(IN PUSHORT Register, IN PUSHORT Buffer, IN ULONG Count)
VOID(NTAPI * PVIDEO_WAIT_VSYNC_ACTIVE)(PVOID HwDeviceExtension)
Definition: video.h:366
struct _VIDEO_REQUEST_PACKET * PVIDEO_REQUEST_PACKET
_HW_DMA_RETURN
Definition: video.h:230
@ DmaSyncReturn
Definition: video.h:232
@ DmaAsyncReturn
Definition: video.h:231
VPAPI PDMA NTAPI VideoPortAssociateEventsWithDmaHandle(IN PVOID HwDeviceExtension, IN OUT PVIDEO_REQUEST_PACKET pVrp, IN PVOID MappedUserEvent, IN PVOID DisplayDriverEvent)
Definition: dma.c:439
VPAPI VP_STATUS NTAPI VideoPortRegisterBugcheckCallback(IN PVOID HwDeviceExtension, IN ULONG BugcheckCode, IN PVIDEO_BUGCHECK_CALLBACK Callback, IN ULONG BugcheckDataSize)
Definition: videoprt.c:1572
VPAPI VOID NTAPI VideoPortDbgReportComplete(IN OUT PVIDEO_DEBUG_REPORT pReport)
VPAPI VP_STATUS NTAPI VideoPortSetTrappedEmulatorPorts(IN PVOID HwDeviceExtension, IN ULONG NumAccessRanges, IN PVIDEO_ACCESS_RANGE AccessRange)
Definition: resource.c:1056
BOOLEAN(NTAPI * PI2C_START)(IN PVOID HwDeviceExtension, IN PI2C_CALLBACKS I2CCallbacks)
Definition: video.h:377
struct _VIDEO_CHILD_STATE * PVIDEO_CHILD_STATE
struct _I2C_FNC_TABLE * PI2C_FNC_TABLE
VPAPI VOID NTAPI VideoPortReadRegisterBufferUlong(IN PULONG Register, OUT PULONG Buffer, IN ULONG Count)
struct __VP_DMA_ADAPTER * PVP_DMA_ADAPTER
Definition: video.h:159
VP_STATUS(NTAPI * PMINIPORT_GET_REGISTRY_ROUTINE)(IN PVOID HwDeviceExtension, IN PVOID Context, IN OUT PWSTR ValueName, IN OUT PVOID ValueData, IN ULONG ValueLength)
Definition: video.h:510
struct _VIDEO_I2C_CONTROL * PVIDEO_I2C_CONTROL
struct _VIDEO_REQUEST_PACKET VIDEO_REQUEST_PACKET
enum _VP_LOCK_OPERATION VP_LOCK_OPERATION
VPAPI VOID NTAPI VideoPortStartTimer(IN PVOID HwDeviceExtension)
Definition: timer.c:78
BOOLEAN(NTAPI * PMINIPORT_SYNCHRONIZE_ROUTINE)(IN PVOID Context)
Definition: video.h:523
_Requires_lock_held_ SpinLock _Releases_lock_ SpinLock _In_ _IRQL_restores_ KIRQL NewIrql
Definition: ke.h:114
PULONG MinorVersion OPTIONAL
Definition: CrossNt.h:68
IN UCHAR EdidSegment
Definition: video.h:700
IN ULONG Size
Definition: video.h:698
IN I2C_CALLBACKS I2CCallbacks
Definition: video.h:699
Definition: miniport.h:40
IN PVIDEO_READ_CLOCK_LINE ReadClockLine
Definition: video.h:372
IN PVIDEO_WRITE_DATA_LINE WriteDataLine
Definition: video.h:371
IN PVIDEO_READ_DATA_LINE ReadDataLine
Definition: video.h:373
IN PVIDEO_WRITE_CLOCK_LINE WriteClockLine
Definition: video.h:370
PVOID Reserved
Definition: video.h:694
IN PVIDEO_READ_DATA_LINE ReadDataLine
Definition: video.h:692
IN PVIDEO_WAIT_VSYNC_ACTIVE WaitVsync
Definition: video.h:693
IN ULONG Size
Definition: video.h:688
IN PVIDEO_WRITE_DATA_LINE WriteDataLine
Definition: video.h:690
IN PVIDEO_WRITE_CLOCK_LINE WriteClockLine
Definition: video.h:689
IN PVIDEO_READ_CLOCK_LINE ReadClockLine
Definition: video.h:691
CONST GUID * InterfaceType
Definition: video.h:298
USHORT Size
Definition: video.h:299
PINTERFACE Interface
Definition: video.h:301
USHORT Version
Definition: video.h:300
PVOID InterfaceSpecificData
Definition: video.h:302
PVOID Pointer
Definition: video.h:324
ULONG_PTR Information
Definition: video.h:326
_ANONYMOUS_UNION union _STATUS_BLOCK::@2227 DUMMYUNIONNAME
VP_STATUS Status
Definition: video.h:323
UCHAR RangeVisible
Definition: video.h:218
ULONG RangeLength
Definition: video.h:216
UCHAR RangeInIoSpace
Definition: video.h:217
UCHAR RangeShareable
Definition: video.h:219
PHYSICAL_ADDRESS RangeStart
Definition: video.h:215
UCHAR RangePassive
Definition: video.h:220
ULONG ChildDescriptorSize
Definition: video.h:262
PVOID ChildHwDeviceExtension
Definition: video.h:265
VIDEO_CHILD_STATE ChildStateArray[ANYSIZE_ARRAY]
Definition: video.h:660
INTERFACE_TYPE InterfaceType
Definition: video.h:555
PVIDEO_HW_FIND_ADAPTER HwFindAdapter
Definition: video.h:666
PVIDEO_HW_START_IO HwStartIO
Definition: video.h:669
PVIDEO_HW_POWER_SET HwSetPowerState
Definition: video.h:675
PVIDEO_HW_POWER_GET HwGetPowerState
Definition: video.h:676
PVIDEO_HW_INTERRUPT HwInterrupt
Definition: video.h:668
PVIDEO_HW_RESET_HW HwResetHw
Definition: video.h:672
PVIDEO_HW_GET_CHILD_DESCRIPTOR HwGetVideoChildDescriptor
Definition: video.h:677
INTERFACE_TYPE AdapterInterfaceType
Definition: video.h:665
PVIDEO_ACCESS_RANGE HwLegacyResourceList
Definition: video.h:680
PVIDEO_HW_TIMER HwTimer
Definition: video.h:673
PVIDEO_HW_INITIALIZE HwInitialize
Definition: video.h:667
PVIDEO_HW_START_DMA HwStartDma
Definition: video.h:674
PVIDEO_HW_QUERY_INTERFACE HwQueryInterface
Definition: video.h:678
PVIDEO_HW_LEGACYRESOURCES HwGetLegacyResources
Definition: video.h:682
IN PVIDEO_READ_DATA_LINE ReadDataLine
Definition: video.h:404
IN ULONG I2CDelay
Definition: video.h:405
IN PVIDEO_WRITE_CLOCK_LINE WriteClockLine
Definition: video.h:401
IN PVIDEO_WRITE_DATA_LINE WriteDataLine
Definition: video.h:402
IN PVIDEO_READ_CLOCK_LINE ReadClockLine
Definition: video.h:403
OUT PAGP_COMMIT_VIRTUAL AgpCommitVirtual
Definition: video.h:742
OUT PAGP_COMMIT_PHYSICAL AgpCommitPhysical
Definition: video.h:738
OUT PAGP_RESERVE_VIRTUAL AgpReserveVirtual
Definition: video.h:740
OUT PINTERFACE_DEREFERENCE InterfaceDereference
Definition: video.h:735
OUT PAGP_RESERVE_PHYSICAL AgpReservePhysical
Definition: video.h:736
OUT PAGP_FREE_VIRTUAL AgpFreeVirtual
Definition: video.h:743
OUT PAGP_SET_RATE AgpSetRate
Definition: video.h:745
OUT ULONGLONG AgpAllocationLimit
Definition: video.h:744
OUT PAGP_RELEASE_VIRTUAL AgpReleaseVirtual
Definition: video.h:741
OUT PINTERFACE_REFERENCE InterfaceReference
Definition: video.h:734
OUT PAGP_FREE_PHYSICAL AgpFreePhysical
Definition: video.h:739
OUT PAGP_RELEASE_PHYSICAL AgpReleasePhysical
Definition: video.h:737
PAGP_RESERVE_PHYSICAL AgpReservePhysical
Definition: video.h:719
PAGP_COMMIT_PHYSICAL AgpCommitPhysical
Definition: video.h:721
PAGP_RESERVE_VIRTUAL AgpReserveVirtual
Definition: video.h:723
PINTERFACE_REFERENCE InterfaceReference
Definition: video.h:717
PINTERFACE_DEREFERENCE InterfaceDereference
Definition: video.h:718
PAGP_FREE_VIRTUAL AgpFreeVirtual
Definition: video.h:726
PAGP_FREE_PHYSICAL AgpFreePhysical
Definition: video.h:722
PAGP_RELEASE_PHYSICAL AgpReleasePhysical
Definition: video.h:720
PAGP_RELEASE_VIRTUAL AgpReleaseVirtual
Definition: video.h:724
PAGP_COMMIT_VIRTUAL AgpCommitVirtual
Definition: video.h:725
ULONGLONG AgpAllocationLimit
Definition: video.h:727
ULONG MaximumTransferLength
Definition: video.h:189
KINTERRUPT_MODE InterruptMode
Definition: video.h:172
UCHAR InterruptShareable
Definition: video.h:182
PHYSICAL_ADDRESS VdmPhysicalVideoMemoryAddress
Definition: video.h:176
INTERFACE_TYPE AdapterInterfaceType
Definition: video.h:169
BOOLEAN NeedPhysicalAddresses
Definition: video.h:187
BOOLEAN ScatterGather
Definition: video.h:191
PVIDEO_PORT_GET_PROC_ADDRESS VideoPortGetProcAddress
Definition: video.h:193
ULONG NumEmulatorAccessEntries
Definition: video.h:173
ULONG BusInterruptVector
Definition: video.h:171
ULONGLONG SystemMemorySize
Definition: video.h:195
PEMULATOR_ACCESS_ENTRY EmulatorAccessEntries
Definition: video.h:174
DMA_WIDTH DmaWidth
Definition: video.h:184
ULONG MaximumScatterGatherChunkSize
Definition: video.h:192
ULONG_PTR EmulatorAccessEntriesContext
Definition: video.h:175
ULONG NumberOfPhysicalBreaks
Definition: video.h:190
ULONG VdmPhysicalVideoMemoryLength
Definition: video.h:177
PWSTR DriverRegistryPath
Definition: video.h:194
DMA_SPEED DmaSpeed
Definition: video.h:185
OUT VOID(* DbgReportComplete)(IN OUT PVIDEO_DEBUG_REPORT pReport)
Definition: video.h:823
OUT PINTERFACE_REFERENCE InterfaceReference
Definition: video.h:808
OUT PINTERFACE_DEREFERENCE InterfaceDereference
Definition: video.h:809
OUT BOOLEAN(* DbgReportSecondaryData)(IN OUT PVIDEO_DEBUG_REPORT pReport, IN PVOID pvData, IN ULONG ulDataSize)
Definition: video.h:818
OUT PVIDEO_DEBUG_REPORT(* DbgReportCreate)(IN PVOID HwDeviceExtension, IN ULONG ulCode, IN ULONG_PTR ulpArg1, IN ULONG_PTR ulpArg2, IN ULONG_PTR ulpArg3, IN ULONG_PTR ulpArg4)
Definition: video.h:810
OUT PINTERFACE_REFERENCE InterfaceReference
Definition: video.h:764
OUT PINTERFACE_DEREFERENCE InterfaceDereference
Definition: video.h:765
OUT PI2C_WRITE_2 I2CWrite
Definition: video.h:768
OUT PI2C_READ_2 I2CRead
Definition: video.h:769
OUT PI2C_START_2 I2CStart
Definition: video.h:766
OUT PI2C_STOP_2 I2CStop
Definition: video.h:767
PI2C_START I2CStart
Definition: video.h:754
PINTERFACE_REFERENCE InterfaceReference
Definition: video.h:752
PINTERFACE_DEREFERENCE InterfaceDereference
Definition: video.h:753
PI2C_WRITE I2CWrite
Definition: video.h:756
OUT PINT10_FREE_BUFFER Int10FreeBuffer
Definition: video.h:779
OUT PINTERFACE_DEREFERENCE InterfaceDereference
Definition: video.h:777
OUT PINT10_READ_MEMORY Int10ReadMemory
Definition: video.h:780
OUT PINT10_CALL_BIOS Int10CallBios
Definition: video.h:782
OUT PINTERFACE_REFERENCE InterfaceReference
Definition: video.h:776
OUT PINT10_ALLOCATE_BUFFER Int10AllocateBuffer
Definition: video.h:778
OUT PINT10_WRITE_MEMORY Int10WriteMemory
Definition: video.h:781
OUT PINTERFACE_DEREFERENCE InterfaceDereference
Definition: video.h:790
OUT RESTORE_WC_MEMORY VideoPortRestoreWCMemory
Definition: video.h:792
OUT PINTERFACE_REFERENCE InterfaceReference
Definition: video.h:789
OUT PROTECT_WC_MEMORY VideoPortProtectWCMemory
Definition: video.h:791
ULONG InputBufferLength
Definition: video.h:333
PSTATUS_BLOCK StatusBlock
Definition: video.h:331
ULONG OutputBufferLength
Definition: video.h:335
OUT ULONG MinorVersion
Definition: video.h:798
OUT USHORT ServicePackMinor
Definition: video.h:801
OUT ULONG BuildNumber
Definition: video.h:799
OUT ULONG MajorVersion
Definition: video.h:797
IN ULONG Size
Definition: video.h:796
OUT USHORT ServicePackMajor
Definition: video.h:800
BOOLEAN Dma64BitAddresses
Definition: video.h:649
BOOLEAN ScatterGather
Definition: video.h:647
BOOLEAN Dma32BitAddresses
Definition: video.h:648
PHYSICAL_ADDRESS Address
Definition: video.h:241
VP_SCATTER_GATHER_ELEMENT Elements[0]
Definition: video.h:249
ULONG_PTR Reserved
Definition: video.h:248
ULONG Length
Definition: video.h:637
__int64 PhysicalAddress
Definition: video.h:636
_In_ PNET_PNP_EVENT _In_ PTDI_PNP_CONTEXT Context1
Definition: tdikrnl.h:1095
_In_ PNET_PNP_EVENT _In_ PTDI_PNP_CONTEXT _In_ PTDI_PNP_CONTEXT Context2
Definition: tdikrnl.h:1096
uint16_t * PWSTR
Definition: typedefs.h:56
uint32_t * PULONG
Definition: typedefs.h:59
char * PSTR
Definition: typedefs.h:51
#define ANYSIZE_ARRAY
Definition: typedefs.h:46
int64_t LONGLONG
Definition: typedefs.h:68
#define NTAPI
Definition: typedefs.h:36
void * PVOID
Definition: typedefs.h:50
ULONG_PTR SIZE_T
Definition: typedefs.h:80
uint16_t * PUSHORT
Definition: typedefs.h:56
uint32_t ULONG_PTR
Definition: typedefs.h:65
#define IN
Definition: typedefs.h:39
int32_t * PLONG
Definition: typedefs.h:58
unsigned char * PUCHAR
Definition: typedefs.h:53
uint32_t ULONG
Definition: typedefs.h:59
uint64_t ULONGLONG
Definition: typedefs.h:67
#define OUT
Definition: typedefs.h:40
BOOLEAN(NTAPI * PAGP_COMMIT_PHYSICAL)(IN PVOID HwDeviceExtension, IN PVOID PhysicalReserveContext, IN ULONG Pages, IN ULONG Offset)
Definition: videoagp.h:43
BOOLEAN(NTAPI * PAGP_SET_RATE)(IN PVOID HwDeviceExtension, IN ULONG AgpRate)
Definition: videoagp.h:95
PHYSICAL_ADDRESS(NTAPI * PAGP_RESERVE_PHYSICAL)(IN PVOID HwDeviceExtension, IN ULONG Pages, IN VIDEO_PORT_CACHE_TYPE Caching, OUT PVOID *PhysicalReserveContext)
Definition: videoagp.h:81
VOID(NTAPI * PAGP_FREE_PHYSICAL)(IN PVOID HwDeviceExtension, IN PVOID PhysicalReserveContext, IN ULONG Pages, IN ULONG Offset)
Definition: videoagp.h:57
PVOID(NTAPI * PAGP_RESERVE_VIRTUAL)(IN PVOID HwDeviceExtension, IN HANDLE ProcessHandle, IN PVOID PhysicalReserveContext, OUT PVOID *VirtualReserveContext)
Definition: videoagp.h:88
PVOID(NTAPI * PAGP_COMMIT_VIRTUAL)(IN PVOID HwDeviceExtension, IN PVOID VirtualReserveContext, IN ULONG Pages, IN ULONG Offset)
Definition: videoagp.h:50
VOID(NTAPI * PAGP_RELEASE_PHYSICAL)(IN PVOID HwDeviceExtension, IN PVOID PhysicalReserveContext)
Definition: videoagp.h:71
VOID(NTAPI * PAGP_FREE_VIRTUAL)(IN PVOID HwDeviceExtension, IN PVOID VirtualReserveContext, IN ULONG Pages, IN ULONG Offset)
Definition: videoagp.h:64
VOID(NTAPI * PAGP_RELEASE_VIRTUAL)(IN PVOID HwDeviceExtension, IN PVOID VirtualReserveContext)
Definition: videoagp.h:76
_Must_inspect_result_ _In_ WDFCHILDLIST _In_ PWDF_CHILD_LIST_ITERATOR _Out_ WDFDEVICE _Inout_opt_ PWDF_CHILD_RETRIEVE_INFO Info
Definition: wdfchildlist.h:690
_Must_inspect_result_ _In_ WDFCOLLECTION _In_ WDFOBJECT Object
_In_ PDEVICE_OBJECT DeviceObject
Definition: wdfdevice.h:2055
_Must_inspect_result_ _In_ WDFDEVICE _In_ BOOLEAN _In_opt_ PVOID Tag
Definition: wdfdevice.h:4065
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ _Strict_type_match_ POOL_TYPE PoolType
Definition: wdfdevice.h:3815
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
Definition: wdfdevice.h:4533
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String
Definition: wdfdevice.h:2433
_Must_inspect_result_ _In_ WDFDMATRANSACTION _In_ PFN_WDF_PROGRAM_DMA _In_ WDF_DMA_DIRECTION _In_ PMDL _In_ PVOID VirtualAddress
_In_ WDFDEVICE _In_ PVOID _In_opt_ PMDL Mdl
_Must_inspect_result_ _In_ WDFDEVICE _In_ LPCGUID _Out_ PINTERFACE Interface
Definition: wdffdo.h:465
_In_ WDFINTERRUPT _In_ WDF_INTERRUPT_POLICY _In_ WDF_INTERRUPT_PRIORITY Priority
Definition: wdfinterrupt.h:655
_In_ WDFINTERRUPT _In_ PFN_WDF_INTERRUPT_SYNCHRONIZE Callback
Definition: wdfinterrupt.h:458
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING ValueName
Definition: wdfregistry.h:243
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG ValueLength
Definition: wdfregistry.h:275
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
Definition: wdfregistry.h:413
_In_ WDFIOTARGET Target
Definition: wdfrequest.h:306
_In_ WDFIORESREQLIST _In_ ULONG SlotNumber
Definition: wdfresource.h:68
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFSPINLOCK * SpinLock
Definition: wdfsync.h:228
_In_ ULONG _In_opt_ PVOID pvData
Definition: winddi.h:3749
_Reserved_ PVOID Reserved
Definition: winddi.h:3974
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170
_IRQL_requires_same_ _In_opt_ PVOID Argument1
Definition: cmtypes.h:696
_In_ ULONG Rows
Definition: haltypes.h:7
_Must_inspect_result_ typedef _In_ PHYSICAL_ADDRESS PhysicalAddress
Definition: iotypes.h:1098
_Must_inspect_result_ typedef _In_ PHYSICAL_ADDRESS _Inout_ PLARGE_INTEGER NumberOfBytes
Definition: iotypes.h:1036
_Requires_lock_held_ Interrupt _Releases_lock_ Interrupt _In_ _IRQL_restores_ KIRQL OldIrql
Definition: kefuncs.h:792
_In_ PEPROCESS _In_ KPROCESSOR_MODE AccessMode
Definition: mmfuncs.h:396
unsigned char UCHAR
Definition: xmlstorage.h:181