diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c index 18317e206ca..d2c03404440 100644 --- a/dlls/ntoskrnl.exe/ntoskrnl.c +++ b/dlls/ntoskrnl.exe/ntoskrnl.c @@ -1540,6 +1540,15 @@ VOID WINAPI READ_REGISTER_BUFFER_UCHAR(PUCHAR Register, PUCHAR Buffer, ULONG Cou FIXME("stub\n"); } +/***************************************************** + * PoSetPowerState (NTOSKRNL.EXE.@) + */ +POWER_STATE WINAPI PoSetPowerState(PDEVICE_OBJECT DeviceObject, POWER_STATE_TYPE Type, POWER_STATE State) +{ + FIXME("(%p %u %u) stub\n", DeviceObject, Type, State.DeviceState); + return State; +} + /***************************************************** * DllMain */ diff --git a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec index 74c53e9a003..06976fdc65c 100644 --- a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec +++ b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec @@ -830,7 +830,7 @@ @ stub PoRequestPowerIrp @ stub PoRequestShutdownEvent @ stub PoSetHiberRange -@ stub PoSetPowerState +@ stdcall PoSetPowerState(ptr long long) @ stub PoSetSystemState @ stub PoShutdownBugCheck @ stub PoStartNextPowerIrp diff --git a/include/ddk/wdm.h b/include/ddk/wdm.h index 3fa355f8230..950d93a6536 100644 --- a/include/ddk/wdm.h +++ b/include/ddk/wdm.h @@ -1129,6 +1129,7 @@ MM_SYSTEMSIZE WINAPI MmQuerySystemSize(void); NTSTATUS WINAPI ObReferenceObjectByHandle(HANDLE,ACCESS_MASK,POBJECT_TYPE,KPROCESSOR_MODE,PVOID*,POBJECT_HANDLE_INFORMATION); +POWER_STATE WINAPI PoSetPowerState(PDEVICE_OBJECT,POWER_STATE_TYPE,POWER_STATE); NTSTATUS WINAPI PsCreateSystemThread(PHANDLE,ULONG,POBJECT_ATTRIBUTES,HANDLE,PCLIENT_ID,PKSTART_ROUTINE,PVOID); #define PsGetCurrentProcess() IoGetCurrentProcess() #define PsGetCurrentThread() ((PETHREAD)KeGetCurrentThread())