Driver prevent S1 standby but aloow S3 standby ?

Discussion in 'Windows Vista Drivers' started by chueh8, Sep 5, 2006.

  1. chueh8

    chueh8 Guest

    Hi,

    Our device driver is a USB port driver sitting below a mouse class
    driver.
    I found if I set the BIOS option "Suspend to RAM enabled (S3)".. WinXP
    is able to go to standby with our deivce attached.
    While if BIOS option "Suspend to RAM disabled(S1)".. system would claim
    that our driver prevent the system going to standby..
    The following is a bit of debug info...

    I found our driver return success for Query Power,, but system just set
    the device to D0..when S1 .. ,, (while it would set device to D3 when
    S3 Query..)
    Any hint for that ?

    Thanks.
    -chueh8


    TSC(IRQL 00): TSCPowerDispatch++. IRP 8273AE48
    TSC(IRQL 00): IRP 8273AE48 IRP_MJ_POWER
    TSC(IRQL 00): IRP_MN_QUERY_POWER
    TSC(IRQL 00): PowerSystemSleeping1
    TSC(IRQL 00): ............Query Power 8273ae48....

    TSC(IRQL 00): query system power

    TSC(IRQL 00): TSCSystemPowerDispatch++. IRP 8273AE48
    TSC(IRQL 00): TSCSystemPowerCompletionRoutine++. IRP 8273AE48 STATUS 0
    TSC(IRQL 00): KKK1

    TSC(IRQL 00): TSCGetDevicePowerState++. PowerSystemSleeping1
    TSC(IRQL 00): System State =2

    TSC(IRQL 00): DeviceExtension->DeviceCaps.SystemWake =4

    TSC(IRQL 00): DeviceExtension->DeviceCaps.DeviceState[SystemState] =3

    TSC(IRQL 00): DeviceExtension->DeviceCaps.WakeFromD3 =1

    TSC(IRQL 00): DeviceExtension->DeviceCaps.WakeFromD2 =1

    TSC(IRQL 00): DeviceExtension->DeviceCaps.WakeFromD1 =1

    TSC(IRQL 00): DeviceExtension->DeviceCaps.WakeFromD0 =1

    TSC(IRQL 00): 333

    TSC(IRQL 00): TSCGetDevicePowerState--. PowerDeviceD3 STATUS 0
    TSC(IRQL 00): Get Device Power state status=0

    TSC(IRQL 00): KKK2

    TSC(IRQL 00): TSCDevicePowerCompleteCallback++. IRP 8273AE48
    TSC(IRQL 00): TSCDevicePowerCompleteCallback--
    TSC(IRQL 00): KKK4

    TSC(IRQL 00): TSCSystemPowerCompletionRoutine--. Irp 8273AE48 STATUS
    103
    TSC(IRQL 00): TSCSystemPowerDispatch--. IRP 8273AE48
    TSC(IRQL 00): TSCPowerDispatch--. IRP 8273AE48 STATUS 103
    TSC(IRQL 00): TSCPowerDispatch++. IRP 8273A008
    TSC(IRQL 00): IRP 8273A008 IRP_MJ_POWER
    TSC(IRQL 00): IRP_MN_SET_POWER
    TSC(IRQL 00): PowerSystemWorking
    TSC(IRQL 00): ............PDO set power 1 ....

    TSC(IRQL 00): set sys power

    TSC(IRQL 00): TSCSystemPowerDispatch++. IRP 8273A008
    TSC(IRQL 00): TSCSystemPowerCompletionRoutine++. IRP 8273A008 STATUS 0
    TSC(IRQL 00): KKK1

    TSC(IRQL 00): TSCGetDevicePowerState++. PowerSystemWorking
    TSC(IRQL 00): System State =1

    TSC(IRQL 00): DeviceExtension->DeviceCaps.SystemWake =4

    TSC(IRQL 00): DeviceExtension->DeviceCaps.DeviceState[SystemState] =1

    TSC(IRQL 00): DeviceExtension->DeviceCaps.WakeFromD3 =1

    TSC(IRQL 00): DeviceExtension->DeviceCaps.WakeFromD2 =1

    TSC(IRQL 00): DeviceExtension->DeviceCaps.WakeFromD1 =1

    TSC(IRQL 00): DeviceExtension->DeviceCaps.WakeFromD0 =1

    TSC(IRQL 00): 111

    TSC(IRQL 00): TSCGetDevicePowerState--. PowerDeviceD0 STATUS 0
    TSC(IRQL 00): Get Device Power state status=0

    TSC(IRQL 00): KKK2

    TSC(IRQL 00): TSCPowerDispatch++. IRP 82440430
    TSC(IRQL 00): IRP 82440430 IRP_MJ_POWER
    TSC(IRQL 00): IRP_MN_SET_POWER
    TSC(IRQL 00): PowerDeviceD0
    TSC(IRQL 00): ............PDO set power 1 ....

    TSC(IRQL 00): set device power

    TSC(IRQL 00): device same power

    TSC(IRQL 00): device same power 2

    TSC(IRQL 00): TSCPowerD0PrepCallback++. IRP 82440430
    TSC(IRQL 00): TSCDevicePowerCompleteCallback++. IRP 8273A008
    TSC(IRQL 00): TSCDevicePowerCompleteCallback--
    TSC(IRQL 00): TSCPowerD0PrepCallback--
    TSC(IRQL 00): TSCPowerDispatch--. IRP 82440430 STATUS 103
    TSC(IRQL 00): KKK4

    TSC(IRQL 00): TSCSystemPowerCompletionRoutine--. Irp 8273A008 STATUS
    103
    TSC(IRQL 00): TSCSystemPowerDispatch--. IRP 8273A008
    TSC(IRQL 00): TSCPowerDispatch--. IRP 8273A008 STATUS 103
    Abort: \Driver\Mouclass \Device\PointerClass1 irp (8273ae48)
    QueryPower-Sleeping1 status c00002d3
     
    chueh8, Sep 5, 2006
    #1
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.