Driver Problems? Questions? Issues?
Put OSR's experience to work for you! Contact us for assistance with:
  • Creating the right design for your requirements
  • Reviewing your existing driver code
  • Analyzing driver reliability/performance issues
  • Custom training mixed with consulting and focused directly on your specific areas of interest/concern.
Check us out. OSR, the Windows driver experts.

Monthly Seminars at OSR Headquarters

East Coast USA
Windows Internals and SW Drivers, Dulles (Sterling) VA, 13 November 2017

Kernel Debugging & Crash Analysis for Windows, Nashua (Amherst) NH, 4 December 2017

Writing WDF Drivers I: Core Concepts, Nashua (Amherst) NH, 8 January 2018

WDF Drivers II: Advanced Implementation Techniques, Nashua (Amherst) NH, 15 January 2018


Go Back   OSR Online Lists > ntdev
Welcome, Guest
You must login to post to this list
  Message 1 of 10  
07 Oct 17 13:42
venkat narain
xxxxxx@yahoo.com
Join Date: 27 May 2011
Posts To This List: 67
S0Idle

I am trying to enable S0 Idle, and the device can wake the system via PCI PME. However, when I try to configure WdfDeviceAssignS0IdleSettings( idleSettings.IdleCaps = IdleCanWakeFromS0), I get a STATUS_POWER_STATE_INVALID. Reading MSDN, it indicates the following: " Starting in KMDF version 1.11 running on Windows 8, the framework checks if the system's firmware can handle a wake signal while the system is in its fully on (S0) power state. If the machine fails this check, WdfDeviceAssignS0IdleSettings returns STATUS_POWER_STATE_INVALID, and the device remains in its fully on (D0) power state as long as the system remains in S0. " Does this mean the system for some reason will completely prevent the device from going to D3.hot even if the driver wants to idle the device? Is it just that the system doesn't support PCI PME in D3.hot ? thanks
  Message 2 of 10  
07 Oct 17 14:54
Doron Holan
xxxxxx@microsoft.com
Join Date: 08 Sep 2005
Posts To This List: 10090
S0Idle

What are the reported device capabilities? You can see them in the properties dialog for the device in device manager or in the debugger. d Bent from my phone ________________________________ From: xxxxx@lists.osr.com <xxxxx@lists.osr.com> on behalf of xxxxx@yahoo.com <xxxxx@lists.osr.com> Sent: Saturday, October 7, 2017 10:42:40 AM To: Windows System Software Devs Interest List Subject: [ntdev] S0Idle I am trying to enable S0 Idle, and the device can wake the system via PCI PME. However, when I try to configure WdfDeviceAssignS0IdleSettings( idleSettings.IdleCaps = IdleCanWakeFromS0), I get a STATUS_POWER_STATE_INVALID. Reading MSDN, it indicates the following: " Starting in KMDF version 1.11 running on Windows 8, the framework checks if the system's firmware can handle a wake signal while the system is in its fully on (S0) power state. If the machine fails this check, WdfDeviceAssignS0IdleSettings returns STATUS_POWER_STATE_INVALID, and the device remains in its fully on (D0) power state as long as the system remains in S0. " Does this mean the system for some reason will completely prevent the device from going to D3.hot even if the driver wants to idle the device? Is it just that the system doesn't support PCI PME in D3.hot ? thanks --- NTDEV is sponsored by OSR Visit the list online at: <https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.osronline.co m%2Fshowlists.cfm%3Flist%3Dntdev&data=02%7C01%7CDoron.Holan%40microsoft.com%7C8c1 e6786ef3845dbad4908d50dac091c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636429 954896133424&sdata=Xr8b3iazV%2F%2Ft5eT7ze2peb2qzKjxR5H%2FJykFahYgTXs%3D&reserved= 0> MONTHLY seminars on crash dump analysis, WDF, Windows internals and software drivers! Details at <https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.osr.com%2Fse minars&data=02%7C01%7CDoron.Holan%40microsoft.com%7C8c1e6786ef3845dbad4908d50dac0 91c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636429954896133424&sdata=T2zLjvn 9C2Y8PWxhK8S0EWMkZfks48AwR7cqbBPCIGM%3D&reserved=0> To unsubscribe, visit the List Server section of OSR Online at <https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.osronline.co m%2Fpage.cfm%3Fname%3DListServer&data=02%7C01%7CDoron.Holan%40microsoft.com%7C8c1 e6786ef3845dbad4908d50dac091c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636429 954896133424&sdata=GzMyqnO91ENysbzLEDo%2Fj3xNUIO2qU7YIvn8Wctguf4%3D&reserved=0> --
  Message 3 of 10  
08 Oct 17 03:49
venkat narain
xxxxxx@yahoo.com
Join Date: 27 May 2011
Posts To This List: 67
S0Idle

The device says: PCI S0 Wakeup supported : <false> Current Power State : D0 Power capabilities: 00000099 PDCAP_D0_SUPPORTED PDCAP_D3_SUPPORTED PDCAP_WAKE_FROM_D0_SUPPORTED PDCAP_WAKE_FROM_D3_SUPPORTED Power state mappings: S0 -> D0 S1 -> Unspecified S2 -> Unspecified S3 -> D3 S4 -> D3 S5 -> D3 thanks
  Message 4 of 10  
08 Oct 17 10:12
Doron Holan
xxxxxx@microsoft.com
Join Date: 08 Sep 2005
Posts To This List: 10090
S0Idle

The device and/or bios are reporting it can't wake from s0 Bent from my phone ________________________________ From: xxxxx@lists.osr.com <xxxxx@lists.osr.com> on behalf of xxxxx@yahoo.com <xxxxx@lists.osr.com> Sent: Sunday, October 8, 2017 12:49:47 AM To: Windows System Software Devs Interest List Subject: RE:[ntdev] S0Idle The device says: PCI S0 Wakeup supported : <false> Current Power State : D0 Power capabilities: 00000099 PDCAP_D0_SUPPORTED PDCAP_D3_SUPPORTED PDCAP_WAKE_FROM_D0_SUPPORTED PDCAP_WAKE_FROM_D3_SUPPORTED Power state mappings: S0 -> D0 S1 -> Unspecified S2 -> Unspecified S3 -> D3 S4 -> D3 S5 -> D3 thanks --- NTDEV is sponsored by OSR Visit the list online at: <https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.osronline.co m%2Fshowlists.cfm%3Flist%3Dntdev&data=02%7C01%7CDoron.Holan%40microsoft.com%7C338 cde0ede194e068f0408d50e21053d%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636430 457347795715&sdata=GkKVPvbZ0ZVcaCzTCaTtD8c750WdGCLg%2FqK6eH8gYMI%3D&reserved=0> MONTHLY seminars on crash dump analysis, WDF, Windows internals and software drivers! Details at <https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.osr.com%2Fse minars&data=02%7C01%7CDoron.Holan%40microsoft.com%7C338cde0ede194e068f0408d50e210 53d%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636430457347795715&sdata=C9ls3UQ jN%2FkJPf1hub1lPOqTvU9xF%2Fzrqu27QXHOpto%3D&reserved=0> To unsubscribe, visit the List Server section of OSR Online at <https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.osronline.co m%2Fpage.cfm%3Fname%3DListServer&data=02%7C01%7CDoron.Holan%40microsoft.com%7C338 cde0ede194e068f0408d50e21053d%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636430 457347795715&sdata=O9yTEbpcTSQmnHdZE%2FrNAdlY%2F94t%2B6HaNyLmFWYD5Ns%3D&reserved= 0> --
  Message 5 of 10  
08 Oct 17 11:13
venkat narain
xxxxxx@yahoo.com
Join Date: 27 May 2011
Posts To This List: 67
S0Idle

Thanks Doron. How can I confirm that either way? The device is perfectly capable of waking in S0, and so it is either that my driver isn't advertising it correctly or it is the bios itself.
  Message 6 of 10  
08 Oct 17 13:54
Doron Holan
xxxxxx@microsoft.com
Join Date: 08 Sep 2005
Posts To This List: 10090
S0Idle

Your driver should not be able to change then answer if it is computed by the bus driver and the bios. Try a different model of machine and see what it says. Look in your pci bars and see what it reports. Since the docs say wdf started looking at the bios setting in w8, install w7 on the same machine and see if the result is different. d Bent from my phone ________________________________ From: xxxxx@lists.osr.com <xxxxx@lists.osr.com> on behalf of xxxxx@yahoo.com <xxxxx@lists.osr.com> Sent: Sunday, October 8, 2017 8:14:25 AM To: Windows System Software Devs Interest List Subject: RE:[ntdev] S0Idle Thanks Doron. How can I confirm that either way? The device is perfectly capable of waking in S0, and so it is either that my driver isn't advertising it correctly or it is the bios itself. --- NTDEV is sponsored by OSR Visit the list online at: <https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.osronline.co m%2Fshowlists.cfm%3Flist%3Dntdev&data=02%7C01%7CDoron.Holan%40microsoft.com%7Cbcd e1ac459fe4c57e44108d50e5f15f7%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636430 723910635261&sdata=76oAMR0VRLXKLorXrtvV3OpOziZLMPobLgDMfgsEEGE%3D&reserved=0> MONTHLY seminars on crash dump analysis, WDF, Windows internals and software drivers! Details at <https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.osr.com%2Fse minars&data=02%7C01%7CDoron.Holan%40microsoft.com%7Cbcde1ac459fe4c57e44108d50e5f1 5f7%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636430723910635261&sdata=9SCM6ev o7wty3yXBugQUaWB%2FaDA%2BAPQcO5XM2wvg3lg%3D&reserved=0> To unsubscribe, visit the List Server section of OSR Online at <https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.osronline.co m%2Fpage.cfm%3Fname%3DListServer&data=02%7C01%7CDoron.Holan%40microsoft.com%7Cbcd e1ac459fe4c57e44108d50e5f15f7%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636430 723910635261&sdata=FN%2Fsv7cqYe%2BGYrpyQWs4Mm9jDQZQh5stlsuy3Qyyt1E%3D&reserved=0> --
  Message 7 of 10  
09 Oct 17 20:27
venkat narain
xxxxxx@yahoo.com
Join Date: 27 May 2011
Posts To This List: 67
S0Idle

Thanks Doron. using GetIdleWakeInfo also returned DeepestWakeableDstate==DeviceWakeDepthNotWakeable. So I assume it is a limitation on the platform? Just wanted to confirm, if there is anything we would have to do either from the device or from the device driver to enable runtime idling support. thanks
  Message 8 of 10  
10 Oct 17 11:21
Doron Holan
xxxxxx@microsoft.com
Join Date: 08 Sep 2005
Posts To This List: 10090
S0Idle

Maybe something from the device. I don't know. Did you test on multiple different motherboard/bios combinations? The Bent from my phone ________________________________ From: xxxxx@lists.osr.com <xxxxx@lists.osr.com> on behalf of xxxxx@yahoo.com <xxxxx@lists.osr.com> Sent: Monday, October 9, 2017 5:27:08 PM To: Windows System Software Devs Interest List Subject: RE:[ntdev] S0Idle Thanks Doron. using GetIdleWakeInfo also returned DeepestWakeableDstate==3DDeviceWakeDepthNotWakeable. So I assume it is a limitation on the platform? Just wanted to confirm, if there is anything we would have to do either from the device or from the device driver to enable runtime idling support. thanks --- NTDEV is sponsored by OSR Visit the list online at: <https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.osronline.co m%2Fshowlists.cfm%3Flist%3Dntdev&data=02%7C01%7CDoron.Holan%40microsoft.com%7Ccd7 fef83be1e46de306908d50f75b3c9%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636431 920558330368&sdata=IwhDchrHzbzH1Cc30XDGHC0xiNcVKrZa8b6EqEGMX18%3D&reserved=0> MONTHLY seminars on crash dump analysis, WDF, Windows internals and software drivers! Details at <https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.osr.com%2Fse minars&data=02%7C01%7CDoron.Holan%40microsoft.com%7Ccd7fef83be1e46de306908d50f75b 3c9%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636431920558330368&sdata=kKIhjfR lj5gMLZ9HWZuFh104gyLV9YkAWaJEU4jNJYk%3D&reserved=0> To unsubscribe, visit the List Server section of OSR Online at <https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.osronline.co m%2Fpage.cfm%3Fname%3DListServer&data=02%7C01%7CDoron.Holan%40microsoft.com%7Ccd7 fef83be1e46de306908d50f75b3c9%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636431 920558330368&sdata=NPAa0d6BvaUXm%2F5RF6GVFFFBLxpobws3VQyZvTb0wd4%3D&reserved=0> --
  Message 9 of 10  
10 Oct 17 15:39
Peter Viscarola (OSR)
xxxxxx@osr.com
Join Date:
Posts To This List: 5949
List Moderator
S0Idle

Wait. Aren't we simply talking about what settings exist in your device's PCIe Power Management Capabilities? Aren't there bits in the PMC for your device that control/indicate all this stuff? Peter OSR @OSRDrivers
  Message 10 of 10  
11 Oct 17 12:53
venkat narain
xxxxxx@yahoo.com
Join Date: 27 May 2011
Posts To This List: 67
S0Idle

My device supports D0, D3 as well as PME in D3hot and WAKE# in D3 cold as per the config space. I assume the following tab in the device manager also refers to the device itself. Power capabilities: 00000099 PDCAP_D0_SUPPORTED PDCAP_D3_SUPPORTED PDCAP_WAKE_FROM_D0_SUPPORTED PDCAP_WAKE_FROM_D3_SUPPORTED I am trying the same on a different motherboard to see if it will make any difference.
Posting Rules  
You may not post new threads
You may not post replies
You may not post attachments
You must login to OSR Online AND be a member of the ntdev list to be able to post.

All times are GMT -5. The time now is 02:14.


Copyright ©2015, OSR Open Systems Resources, Inc.
Based on vBulletin Copyright ©2000 - 2005, Jelsoft Enterprises Ltd.
Modified under license