Commit 627181d9 authored by Etaash Mathamsetty's avatar Etaash Mathamsetty Committed by Alexandre Julliard

gdi32: Add stub for D3DKMTQueryAdapterInfo.

parent 3e19ca92
......@@ -27,7 +27,7 @@
@ stub D3DKMTOpenAdapterFromHdc
@ stub D3DKMTOpenResource
@ stub D3DKMTPresent
@ stub D3DKMTQueryAdapterInfo
@ stdcall D3DKMTQueryAdapterInfo(ptr) gdi32.D3DKMTQueryAdapterInfo
@ stub D3DKMTQueryAllocationResidency
@ stub D3DKMTQueryResourceInfo
@ stub D3DKMTRender
......
......@@ -84,6 +84,7 @@
@ stdcall D3DKMTOpenAdapterFromGdiDisplayName(ptr)
@ stdcall D3DKMTOpenAdapterFromHdc(ptr) win32u.NtGdiDdDDIOpenAdapterFromHdc
@ stdcall D3DKMTOpenAdapterFromLuid(ptr) win32u.NtGdiDdDDIOpenAdapterFromLuid
@ stdcall D3DKMTQueryAdapterInfo(ptr) win32u.NtGdiDdDDIQueryAdapterInfo
@ stdcall D3DKMTQueryStatistics(ptr) win32u.NtGdiDdDDIQueryStatistics
@ stdcall D3DKMTQueryVideoMemoryInfo(ptr) win32u.NtGdiDdDDIQueryVideoMemoryInfo
@ stdcall D3DKMTSetQueuedLimit(ptr) win32u.NtGdiDdDDISetQueuedLimit
......
......@@ -1540,6 +1540,18 @@ NTSTATUS WINAPI NtGdiDdDDIDestroyDevice( const D3DKMT_DESTROYDEVICE *desc )
}
/******************************************************************************
* NtGdiDdDDIQueryAdapterInfo (win32u.@)
*/
NTSTATUS WINAPI NtGdiDdDDIQueryAdapterInfo( D3DKMT_QUERYADAPTERINFO *desc )
{
if (!desc)
return STATUS_INVALID_PARAMETER;
FIXME("desc %p, type %d stub\n", desc, desc->Type);
return STATUS_NOT_IMPLEMENTED;
}
/******************************************************************************
* NtGdiDdDDIQueryStatistics (win32u.@)
*/
NTSTATUS WINAPI NtGdiDdDDIQueryStatistics( D3DKMT_QUERYSTATISTICS *stats )
......
......@@ -76,6 +76,7 @@ static void * const syscalls[] =
NtGdiDdDDIOpenAdapterFromDeviceName,
NtGdiDdDDIOpenAdapterFromHdc,
NtGdiDdDDIOpenAdapterFromLuid,
NtGdiDdDDIQueryAdapterInfo,
NtGdiDdDDIQueryStatistics,
NtGdiDdDDIQueryVideoMemoryInfo,
NtGdiDdDDISetQueuedLimit,
......
......@@ -295,7 +295,7 @@
@ stub NtGdiDdDDIPresentMultiPlaneOverlay2
@ stub NtGdiDdDDIPresentMultiPlaneOverlay3
@ stub NtGdiDdDDIPresentRedirected
@ stub NtGdiDdDDIQueryAdapterInfo
@ stdcall -syscall NtGdiDdDDIQueryAdapterInfo(ptr)
@ stub NtGdiDdDDIQueryAllocationResidency
@ stub NtGdiDdDDIQueryClockCalibration
@ stub NtGdiDdDDIQueryFSEBlock
......
......@@ -25,6 +25,7 @@
#include "windef.h"
#include "winbase.h"
#include "ntgdi.h"
#include "ddk/d3dkmthk.h"
#include "wow64win_private.h"
typedef struct
......@@ -585,6 +586,27 @@ NTSTATUS WINAPI wow64_NtGdiDdDDIOpenAdapterFromLuid( UINT *args )
return NtGdiDdDDIOpenAdapterFromLuid( desc );
}
NTSTATUS WINAPI wow64_NtGdiDdDDIQueryAdapterInfo( UINT *args )
{
struct _D3DKMT_QUERYADAPTERINFO
{
D3DKMT_HANDLE hAdapter;
KMTQUERYADAPTERINFOTYPE Type;
ULONG pPrivateDriverData;
UINT PrivateDriverDataSize;
} *desc32 = get_ptr( &args );
D3DKMT_QUERYADAPTERINFO desc;
if (!desc32) return STATUS_INVALID_PARAMETER;
desc.hAdapter = desc32->hAdapter;
desc.Type = desc32->Type;
desc.pPrivateDriverData = UlongToPtr( desc32->pPrivateDriverData );
desc.PrivateDriverDataSize = desc32->PrivateDriverDataSize;
return NtGdiDdDDIQueryAdapterInfo( &desc );
}
NTSTATUS WINAPI wow64_NtGdiDdDDIQueryStatistics( UINT *args )
{
D3DKMT_QUERYSTATISTICS *stats = get_ptr( &args );
......
......@@ -61,6 +61,7 @@
SYSCALL_ENTRY( NtGdiDdDDIOpenAdapterFromDeviceName ) \
SYSCALL_ENTRY( NtGdiDdDDIOpenAdapterFromHdc ) \
SYSCALL_ENTRY( NtGdiDdDDIOpenAdapterFromLuid ) \
SYSCALL_ENTRY( NtGdiDdDDIQueryAdapterInfo ) \
SYSCALL_ENTRY( NtGdiDdDDIQueryStatistics ) \
SYSCALL_ENTRY( NtGdiDdDDIQueryVideoMemoryInfo ) \
SYSCALL_ENTRY( NtGdiDdDDISetQueuedLimit ) \
......
......@@ -174,6 +174,98 @@ typedef struct _D3DKMT_DESTROYDCFROMMEMORY
HANDLE hBitmap;
} D3DKMT_DESTROYDCFROMMEMORY;
typedef enum _KMTQUERYADAPTERINFOTYPE
{
KMTQAITYPE_UMDRIVERPRIVATE,
KMTQAITYPE_UMDRIVERNAME,
KMTQAITYPE_UMOPENGLINFO,
KMTQAITYPE_GETSEGMENTSIZE,
KMTQAITYPE_ADAPTERGUID,
KMTQAITYPE_FLIPQUEUEINFO,
KMTQAITYPE_ADAPTERADDRESS,
KMTQAITYPE_SETWORKINGSETINFO,
KMTQAITYPE_ADAPTERREGISTRYINFO,
KMTQAITYPE_CURRENTDISPLAYMODE,
KMTQAITYPE_MODELIST,
KMTQAITYPE_CHECKDRIVERUPDATESTATUS,
KMTQAITYPE_VIRTUALADDRESSINFO,
KMTQAITYPE_DRIVERVERSION,
KMTQAITYPE_ADAPTERTYPE,
KMTQAITYPE_OUTPUTDUPLCONTEXTSCOUNT,
KMTQAITYPE_WDDM_1_2_CAPS,
KMTQAITYPE_UMD_DRIVER_VERSION,
KMTQAITYPE_DIRECTFLIP_SUPPORT,
KMTQAITYPE_MULTIPLANEOVERLAY_SUPPORT,
KMTQAITYPE_DLIST_DRIVER_NAME,
KMTQAITYPE_WDDM_1_3_CAPS,
KMTQAITYPE_MULTIPLANEOVERLAY_HUD_SUPPORT,
KMTQAITYPE_WDDM_2_0_CAPS,
KMTQAITYPE_NODEMETADATA,
KMTQAITYPE_CPDRIVERNAME,
KMTQAITYPE_XBOX,
KMTQAITYPE_INDEPENDENTFLIP_SUPPORT,
KMTQAITYPE_MIRACASTCOMPANIONDRIVERNAME,
KMTQAITYPE_PHYSICALADAPTERCOUNT,
KMTQAITYPE_PHYSICALADAPTERDEVICEIDS,
KMTQAITYPE_DRIVERCAPS_EXT,
KMTQAITYPE_QUERY_MIRACAST_DRIVER_TYPE,
KMTQAITYPE_QUERY_GPUMMU_CAPS,
KMTQAITYPE_QUERY_MULTIPLANEOVERLAY_DECODE_SUPPORT,
KMTQAITYPE_QUERY_HW_PROTECTION_TEARDOWN_COUNT,
KMTQAITYPE_QUERY_ISBADDRIVERFORHWPROTECTIONDISABLED,
KMTQAITYPE_MULTIPLANEOVERLAY_SECONDARY_SUPPORT,
KMTQAITYPE_INDEPENDENTFLIP_SECONDARY_SUPPORT,
KMTQAITYPE_PANELFITTER_SUPPORT,
KMTQAITYPE_PHYSICALADAPTERPNPKEY,
KMTQAITYPE_GETSEGMENTGROUPSIZE,
KMTQAITYPE_MPO3DDI_SUPPORT,
KMTQAITYPE_HWDRM_SUPPORT,
KMTQAITYPE_MPOKERNELCAPS_SUPPORT,
KMTQAITYPE_MULTIPLANEOVERLAY_STRETCH_SUPPORT,
KMTQAITYPE_GET_DEVICE_VIDPN_OWNERSHIP_INFO,
KMTQAITYPE_QUERYREGISTRY,
KMTQAITYPE_KMD_DRIVER_VERSION,
KMTQAITYPE_BLOCKLIST_KERNEL,
KMTQAITYPE_BLOCKLIST_RUNTIME,
KMTQAITYPE_ADAPTERGUID_RENDER,
KMTQAITYPE_ADAPTERADDRESS_RENDER,
KMTQAITYPE_ADAPTERREGISTRYINFO_RENDER,
KMTQAITYPE_CHECKDRIVERUPDATESTATUS_RENDER,
KMTQAITYPE_DRIVERVERSION_RENDER,
KMTQAITYPE_ADAPTERTYPE_RENDER,
KMTQAITYPE_WDDM_1_2_CAPS_RENDER,
KMTQAITYPE_WDDM_1_3_CAPS_RENDER,
KMTQAITYPE_QUERY_ADAPTER_UNIQUE_GUID,
KMTQAITYPE_NODEPERFDATA,
KMTQAITYPE_ADAPTERPERFDATA,
KMTQAITYPE_ADAPTERPERFDATA_CAPS,
KMTQUITYPE_GPUVERSION,
KMTQAITYPE_DRIVER_DESCRIPTION,
KMTQAITYPE_DRIVER_DESCRIPTION_RENDER,
KMTQAITYPE_SCANOUT_CAPS,
KMTQAITYPE_DISPLAY_UMDRIVERNAME,
KMTQAITYPE_PARAVIRTUALIZATION_RENDER,
KMTQAITYPE_SERVICENAME,
KMTQAITYPE_WDDM_2_7_CAPS,
KMTQAITYPE_TRACKEDWORKLOAD_SUPPORT,
KMTQAITYPE_HYBRID_DLIST_DLL_SUPPORT,
KMTQAITYPE_DISPLAY_CAPS,
KMTQAITYPE_WDDM_2_9_CAPS,
KMTQAITYPE_CROSSADAPTERRESOURCE_SUPPORT,
KMTQAITYPE_WDDM_3_0_CAPS,
KMTQAITYPE_WSAUMDIMAGENAME,
KMTQAITYPE_VGPUINTERFACEID,
KMTQAITYPE_WDDM_3_1_CAPS
} KMTQUERYADAPTERINFOTYPE;
typedef struct _D3DKMT_QUERYADAPTERINFO
{
D3DKMT_HANDLE hAdapter;
KMTQUERYADAPTERINFOTYPE Type;
VOID *pPrivateDriverData;
UINT PrivateDriverDataSize;
} D3DKMT_QUERYADAPTERINFO;
typedef enum _D3DKMT_QUERYRESULT_PREEMPTION_ATTEMPT_RESULT
{
D3DKMT_PreemptionAttempt = 0,
......
......@@ -477,6 +477,7 @@ NTSTATUS WINAPI NtGdiDdDDIEscape( const D3DKMT_ESCAPE *desc );
NTSTATUS WINAPI NtGdiDdDDIOpenAdapterFromHdc( D3DKMT_OPENADAPTERFROMHDC *desc );
NTSTATUS WINAPI NtGdiDdDDIOpenAdapterFromDeviceName( D3DKMT_OPENADAPTERFROMDEVICENAME *desc );
NTSTATUS WINAPI NtGdiDdDDIOpenAdapterFromLuid( D3DKMT_OPENADAPTERFROMLUID *desc );
NTSTATUS WINAPI NtGdiDdDDIQueryAdapterInfo( D3DKMT_QUERYADAPTERINFO *desc );
NTSTATUS WINAPI NtGdiDdDDIQueryStatistics( D3DKMT_QUERYSTATISTICS *stats );
NTSTATUS WINAPI NtGdiDdDDIQueryVideoMemoryInfo( D3DKMT_QUERYVIDEOMEMORYINFO *desc );
NTSTATUS WINAPI NtGdiDdDDISetQueuedLimit( D3DKMT_SETQUEUEDLIMIT *desc );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment