mirror of
https://github.com/reactos/reactos.git
synced 2025-01-03 21:09:19 +00:00
[WIN32K]
- Add some debug print lidting available modes from a device driver. - Take this as an occasion to use the much underrated win32k debug channels Recompiling? You're so 2013! svn path=/trunk/; revision=61575
This commit is contained in:
parent
2dd3ce50de
commit
0532456b81
1 changed files with 28 additions and 17 deletions
|
@ -8,9 +8,7 @@
|
|||
*/
|
||||
|
||||
#include <win32k.h>
|
||||
|
||||
#define NDEBUG
|
||||
#include <debug.h>
|
||||
DBG_DEFAULT_CHANNEL(EngDev)
|
||||
|
||||
PGRAPHICS_DEVICE gpPrimaryGraphicsDevice;
|
||||
PGRAPHICS_DEVICE gpVgaGraphicsDevice;
|
||||
|
@ -53,7 +51,7 @@ EngpRegisterGraphicsDevice(
|
|||
PDEVMODEW pdm, pdmEnd;
|
||||
PLDEVOBJ pldev;
|
||||
|
||||
DPRINT("EngpRegisterGraphicsDevice(%wZ)\n", pustrDeviceName);
|
||||
TRACE("EngpRegisterGraphicsDevice(%wZ)\n", pustrDeviceName);
|
||||
|
||||
/* Allocate a GRAPHICS_DEVICE structure */
|
||||
pGraphicsDevice = ExAllocatePoolWithTag(PagedPool,
|
||||
|
@ -61,7 +59,7 @@ EngpRegisterGraphicsDevice(
|
|||
GDITAG_GDEVICE);
|
||||
if (!pGraphicsDevice)
|
||||
{
|
||||
DPRINT1("ExAllocatePoolWithTag failed\n");
|
||||
ERR("ExAllocatePoolWithTag failed\n");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@ -72,7 +70,7 @@ EngpRegisterGraphicsDevice(
|
|||
&pDeviceObject);
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
DPRINT1("Could not open driver %wZ, 0x%lx\n", pustrDeviceName, Status);
|
||||
ERR("Could not open driver %wZ, 0x%lx\n", pustrDeviceName, Status);
|
||||
ExFreePoolWithTag(pGraphicsDevice, GDITAG_GDEVICE);
|
||||
return NULL;
|
||||
}
|
||||
|
@ -98,7 +96,7 @@ EngpRegisterGraphicsDevice(
|
|||
pwsz = ExAllocatePoolWithTag(PagedPool, cj, GDITAG_DRVSUP);
|
||||
if (!pwsz)
|
||||
{
|
||||
DPRINT1("Could not allocate string buffer\n");
|
||||
ERR("Could not allocate string buffer\n");
|
||||
ASSERT(FALSE); // FIXME
|
||||
ExFreePoolWithTag(pGraphicsDevice, GDITAG_GDEVICE);
|
||||
return NULL;
|
||||
|
@ -128,12 +126,12 @@ EngpRegisterGraphicsDevice(
|
|||
* This is a REG_MULTI_SZ string */
|
||||
for (; *pwsz; pwsz += wcslen(pwsz) + 1)
|
||||
{
|
||||
DPRINT("trying driver: %ls\n", pwsz);
|
||||
TRACE("trying driver: %ls\n", pwsz);
|
||||
/* Try to load the display driver */
|
||||
pldev = EngLoadImageEx(pwsz, LDEV_DEVICE_DISPLAY);
|
||||
if (!pldev)
|
||||
{
|
||||
DPRINT1("Could not load driver: '%ls'\n", pwsz);
|
||||
ERR("Could not load driver: '%ls'\n", pwsz);
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -141,7 +139,7 @@ EngpRegisterGraphicsDevice(
|
|||
pdminfo = LDEVOBJ_pdmiGetModes(pldev, pDeviceObject);
|
||||
if (!pdminfo)
|
||||
{
|
||||
DPRINT1("Could not get mode list for '%ls'\n", pwsz);
|
||||
ERR("Could not get mode list for '%ls'\n", pwsz);
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -169,7 +167,7 @@ EngpRegisterGraphicsDevice(
|
|||
|
||||
if (!pGraphicsDevice->pdevmodeInfo || cModes == 0)
|
||||
{
|
||||
DPRINT1("No devmodes\n");
|
||||
ERR("No devmodes\n");
|
||||
ExFreePoolWithTag(pGraphicsDevice, GDITAG_GDEVICE);
|
||||
return NULL;
|
||||
}
|
||||
|
@ -181,11 +179,18 @@ EngpRegisterGraphicsDevice(
|
|||
GDITAG_GDEVICE);
|
||||
if (!pGraphicsDevice->pDevModeList)
|
||||
{
|
||||
DPRINT1("No devmode list\n");
|
||||
ERR("No devmode list\n");
|
||||
ExFreePoolWithTag(pGraphicsDevice, GDITAG_GDEVICE);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
TRACE("Looking for mode %lux%lux%lu(%lu Hz)\n",
|
||||
pdm->dmDeviceName,
|
||||
pdm->dmPelsWidth,
|
||||
pdm->dmPelsHeight,
|
||||
pdm->dmBitsPerPel,
|
||||
pdm->dmDisplayFrequency);
|
||||
|
||||
/* Loop through all DEVMODEINFOs */
|
||||
for (pdminfo = pGraphicsDevice->pdevmodeInfo, i = 0;
|
||||
pdminfo;
|
||||
|
@ -199,6 +204,12 @@ EngpRegisterGraphicsDevice(
|
|||
(pdm + 1 <= pdmEnd) && (pdm->dmSize != 0);
|
||||
pdm = (PDEVMODEW)((PCHAR)pdm + pdm->dmSize + pdm->dmDriverExtra))
|
||||
{
|
||||
TRACE(" %S has mode %lux%lux%lu(%lu Hz)\n",
|
||||
pdm->dmDeviceName,
|
||||
pdm->dmPelsWidth,
|
||||
pdm->dmPelsHeight,
|
||||
pdm->dmBitsPerPel,
|
||||
pdm->dmDisplayFrequency);
|
||||
/* Compare with the default entry */
|
||||
if (pdm->dmBitsPerPel == pdmDefault->dmBitsPerPel &&
|
||||
pdm->dmPelsWidth == pdmDefault->dmPelsWidth &&
|
||||
|
@ -207,7 +218,7 @@ EngpRegisterGraphicsDevice(
|
|||
{
|
||||
pGraphicsDevice->iDefaultMode = i;
|
||||
pGraphicsDevice->iCurrentMode = i;
|
||||
DPRINT("Found default entry: %lu '%ls'\n", i, pdm->dmDeviceName);
|
||||
TRACE("Found default entry: %lu '%ls'\n", i, pdm->dmDeviceName);
|
||||
}
|
||||
|
||||
/* Initialize the entry */
|
||||
|
@ -233,7 +244,7 @@ EngpRegisterGraphicsDevice(
|
|||
|
||||
/* Unlock loader */
|
||||
EngReleaseSemaphore(ghsemGraphicsDeviceList);
|
||||
DPRINT("Prepared %lu modes for %ls\n", cModes, pGraphicsDevice->pwszDescription);
|
||||
TRACE("Prepared %lu modes for %ls\n", cModes, pGraphicsDevice->pwszDescription);
|
||||
|
||||
return pGraphicsDevice;
|
||||
}
|
||||
|
@ -249,7 +260,7 @@ EngpFindGraphicsDevice(
|
|||
UNICODE_STRING ustrCurrent;
|
||||
PGRAPHICS_DEVICE pGraphicsDevice;
|
||||
ULONG i;
|
||||
DPRINT("EngpFindGraphicsDevice('%wZ', %lu, 0x%lx)\n",
|
||||
TRACE("EngpFindGraphicsDevice('%wZ', %lu, 0x%lx)\n",
|
||||
pustrDevice, iDevNum, dwFlags);
|
||||
|
||||
/* Lock list */
|
||||
|
@ -437,7 +448,7 @@ EngDeviceIoControl(
|
|||
IO_STATUS_BLOCK Iosb;
|
||||
PDEVICE_OBJECT DeviceObject;
|
||||
|
||||
DPRINT("EngDeviceIoControl() called\n");
|
||||
TRACE("EngDeviceIoControl() called\n");
|
||||
|
||||
KeInitializeEvent(&Event, SynchronizationEvent, FALSE);
|
||||
|
||||
|
@ -462,7 +473,7 @@ EngDeviceIoControl(
|
|||
Status = Iosb.Status;
|
||||
}
|
||||
|
||||
DPRINT("EngDeviceIoControl(): Returning %X/%X\n", Iosb.Status,
|
||||
TRACE("EngDeviceIoControl(): Returning %X/%X\n", Iosb.Status,
|
||||
Iosb.Information);
|
||||
|
||||
/* Return information to the caller about the operation. */
|
||||
|
|
Loading…
Reference in a new issue