4 * Video miniport AGP interface
6 * This file is part of the w32api package.
9 * Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
11 * THIS SOFTWARE IS NOT COPYRIGHTED
13 * This source code is offered for use in the public domain. You may
14 * use, modify or distribute it freely.
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.
23 #ifndef __VIDEOAGP_H__
24 #define __VIDEOAGP_H__
32 #define VIDEO_AGP_RATE_1X 0x00000001
33 #define VIDEO_AGP_RATE_2X 0x00000002
34 #define VIDEO_AGP_RATE_4X 0x00000004
35 #define VIDEO_AGP_RATE_8X 0x00000008
37 typedef enum _VIDEO_PORT_CACHE_TYPE
{
41 } VIDEO_PORT_CACHE_TYPE
;
44 (DDKAPI
*PAGP_COMMIT_PHYSICAL
)(
45 IN PVOID HwDeviceExtension
,
46 IN PVOID PhysicalReserveContext
,
51 (DDKAPI
*PAGP_COMMIT_VIRTUAL
)(
52 IN PVOID HwDeviceExtension
,
53 IN PVOID VirtualReserveContext
,
58 (DDKAPI
*PAGP_FREE_PHYSICAL
)(
59 IN PVOID HwDeviceExtension
,
60 IN PVOID PhysicalReserveContext
,
65 (DDKAPI
*PAGP_FREE_VIRTUAL
)(
66 IN PVOID HwDeviceExtension
,
67 IN PVOID VirtualReserveContext
,
72 (DDKAPI
*PAGP_RELEASE_PHYSICAL
)(
73 IN PVOID HwDeviceExtension
,
74 IN PVOID PhysicalReserveContext
);
77 (DDKAPI
*PAGP_RELEASE_VIRTUAL
)(
78 IN PVOID HwDeviceExtension
,
79 IN PVOID VirtualReserveContext
);
81 typedef PHYSICAL_ADDRESS
82 (DDKAPI
*PAGP_RESERVE_PHYSICAL
)(
83 IN PVOID HwDeviceExtension
,
85 IN VIDEO_PORT_CACHE_TYPE Caching
,
86 OUT PVOID
*PhysicalReserveContext
);
89 (DDKAPI
*PAGP_RESERVE_VIRTUAL
)(
90 IN PVOID HwDeviceExtension
,
91 IN HANDLE ProcessHandle
,
92 IN PVOID PhysicalReserveContext
,
93 OUT PVOID
*VirtualReserveContext
);
96 (DDKAPI
*PAGP_SET_RATE
)(
97 IN PVOID HwDeviceExtension
,
100 typedef struct _VIDEO_PORT_AGP_SERVICES
{
101 PAGP_RESERVE_PHYSICAL AgpReservePhysical
;
102 PAGP_RELEASE_PHYSICAL AgpReleasePhysical
;
103 PAGP_COMMIT_PHYSICAL AgpCommitPhysical
;
104 PAGP_FREE_PHYSICAL AgpFreePhysical
;
105 PAGP_RESERVE_VIRTUAL AgpReserveVirtual
;
106 PAGP_RELEASE_VIRTUAL AgpReleaseVirtual
;
107 PAGP_COMMIT_VIRTUAL AgpCommitVirtual
;
108 PAGP_FREE_VIRTUAL AgpFreeVirtual
;
109 ULONGLONG AllocationLimit
;
110 } VIDEO_PORT_AGP_SERVICES
, *PVIDEO_PORT_AGP_SERVICES
;
115 VideoPortGetAgpServices(
116 IN PVOID HwDeviceExtension
,
117 IN PVIDEO_PORT_AGP_SERVICES AgpServices
);
123 #endif /* __VIDEOAGP_H__ */