USB Driver Level Re-enumeration Test RRS feed

  • Question

  • I am using the Windows HCK for running tests on my driver for certification. I am running the Driver Level Re-enumeration test on a 64-bit Windows 7 client for my USB driver. Is it necessary to have the Remote wakeup "Enabled" on the USB device for this test to pass correctly?
    • Edited by Kumar87 Wednesday, June 12, 2013 5:54 PM
    Wednesday, June 12, 2013 5:53 PM

All replies

  • Not for this test.  This test merely force loads an arbitrary driver on a device the removes that driver validates the original driver loads on the device.   
    Thursday, June 13, 2013 4:31 AM
  • Thanks, I am trying to figure out why I get this error "PerformPowerCycleOperation failed". The driver passes the USB-IF Chapter 9 tests and also the other re-enumeration tests identified by the HCK.

    The test does this:

    The test determines whether the device is connected to the root hub. After the test verifies that a USB device is connected to the intermediate hub, it performs an IOCTL_INTERNAL_USB_CYCLE_PORT request to all the USB hub ports. The test then sleeps for 15 seconds and finally compares the state and existence of the USB device before and after it performs the IOCTL_INTERNAL_USB_CYCLE_PORT request on all ports. If the state and existence of the found USB devices are the same, the test passes. If the devices do not match, the test logs which device or devices it did not find after it performed the request (IOCTL_INTERNAL_USB_CYCLE_PORT).

    How should my device be responding to this? Shouldn't it be a simple re-enumeration? 

    • Edited by Kumar87 Thursday, June 13, 2013 1:26 PM
    Thursday, June 13, 2013 1:08 PM
  • something is blocking the request.   I would look into the following:

    • the original driver is failing to load or unload.
    • There is something else plugged into the bus that is causing the port cycle to be blocked.  Is this downstream of a hub (if so try a different hub or directly connected to the pc)?  Are other devices plugged into the bus.  Do you need them?
    Thursday, June 13, 2013 3:15 PM
  • Thanks for your response.

    There is nothing else connected on the bus. The test requires the use of a hub. I tried three different hubs with the same result. I see that after the device receives brequests 0x21 (get_line_coding) and 0x22(set_line_coding_state) from the test, it stops responding. I checked this on the lecroy logfiles.

    Thursday, June 13, 2013 3:42 PM
  • Any ideas will be appreciated!

    Monday, July 1, 2013 5:43 PM