As is usually the case on this list, the request doesn’t make much sense out
of context. Please tell us what you are actually trying to accomplish.
That would be something like “I really need D2, since my device should be
armed for wake.” Then we’ll be able to make useful suggestions about how to
meet your larger goal. Simply saying that you want the system to do
something arbitrary doesn’t help much.
–
Jake Oshins
Windows Base Kernel Team
This posting is provided “AS IS” with no warranties, and confers no rights.
“SUJA JAMES” wrote in message
news:xxxxx@ntdev…
Hi All,
I am writing a WDM USB driver and my system supports Stand by (ACPI support
is there).
But when my system goes to stand by, In IRP_MN_QUERY_POWER IRP, I am getting
the system state as “PowerSystemSleeping2” and the device state as
“PowerDeviceD3”.
I need to change this setting in my machine, so that when I go to standby, I
need to get system state as “PowerSystemSleeping1” and device state as
“PowerDeviceD2”.
Does anyone know how to do this. Any setting in registry?
I checked the BIOS and Power Options in Control panel.
Actually I am writting a USB filter driver and in that, how to modify this
parameter and pass down the IRP to lower driver. I did a try like this. but
it is not working
PIO_STACK_LOCATION stack = IoGetCurrentIrpStackLocation(Irp);
stack->Parameters.Power.State.SystemState = NewState;
stack->Parameters.Power.State.DeviceState = NewState;
PoStartNextPowerIrp(Irp);
PoCallDriver(pdx->LowerDeviceObject, Irp);
Please help me on this
Thanks in adavnce
Suja.
You can’t create S1 in a machine that doesn’t support it. If a driver that
you don’t have source for is failing S3, and your machine only supports S3,
then you’re somewhat stuck.
I would try a couple of things. First, disable wake support for the device.
The driver will probably not veto S3.
Second, you might try filtering the QueryPower IRP. If you force it to
succeed, you might get what you need, though the effect on the driver which
you’re hacking around will probably be fatal.
–
Jake Oshins
Windows Base Kernel Team
This posting is provided “AS IS” with no warranties, and confers no rights.
“SUJA JAMES” wrote in message
news:xxxxx@ntdev…
Hi
I will describe my exact problem.
I have a USB device and a driver written by third party.(No source code of
the driver and not possible to get an update). With this driver in some
machine, the system is allowing standby, but in some machines it won’t. The
USB driver is preventing standby.
So I wrote an upper filter driver to check which IRP is falling.
Then from that I can understand that, the original driver is allowing
standby only when the system state is S1 and device state is D2.
But in my target machine, for sleeping the system state is S3 and device
state is D3. With this states the driver is preventing stand by. So I just
want to ensure whether the USB driver is using any hardcoded state values.
So I need to create the states as S1 and D2 for sleeping.
Thats all needed.
Hope I explained my problem clearly…Please do help
Thanks in advance
Suja.
On Tue, 17 Feb 2004 Jake Oshins wrote :
>As is usually the case on this list, the request doesn’t make much sense
>out
>of context. Please tell us what you are actually trying to accomplish.
>That would be something like “I really need D2, since my device should be
>armed for wake.” Then we’ll be able to make useful suggestions about how
>to
>meet your larger goal. Simply saying that you want the system to do
>something arbitrary doesn’t help much.
>
System-to-device mapping from MN_QUERY_CAPABILITIES define this.
Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com
----- Original Message -----
From: SUJA JAMES
To: Windows System Software Devs Interest List
Sent: Tuesday, February 17, 2004 3:20 PM
Subject: [ntdev] System Power State
Hi All,
I am writing a WDM USB driver and my system supports Stand by (ACPI support is there).
But when my system goes to stand by, In IRP_MN_QUERY_POWER IRP, I am getting the system state as “PowerSystemSleeping2” and the device state as “PowerDeviceD3”.
I need to change this setting in my machine, so that when I go to standby, I need to get system state as “PowerSystemSleeping1” and device state as “PowerDeviceD2”.
Does anyone know how to do this. Any setting in registry?
I checked the BIOS and Power Options in Control panel.
Actually I am writting a USB filter driver and in that, how to modify this parameter and pass down the IRP to lower driver. I did a try like this. but it is not working
PIO_STACK_LOCATION stack = IoGetCurrentIrpStackLocation(Irp);
stack->Parameters.Power.State.SystemState = NewState;
stack->Parameters.Power.State.DeviceState = NewState;
PoStartNextPowerIrp(Irp);
PoCallDriver(pdx->LowerDeviceObject, Irp);
Please help me on this
Thanks in adavnce
Suja.
— Questions? First check the Kernel Driver FAQ at http://www.osronline.com/article.cfm?id=256 You are currently subscribed to ntdev as: xxxxx@storagecraft.com To unsubscribe send a blank email to xxxxx@lists.osr.com