This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Halt Endpoint Test Failure



Normal 0 false false false EN-US X-NONE X-NONE MicrosoftInternetExplorer4

I’m doing some USB testing on the Logic Torpedo SOM running Windows  CE 6.0. The CE image is built with Logic’s BSP which is based on BSquare BSP version 6.15.00. I’m attempting to diagnose a failure I’ve found with the USB Command Verifier tool (USB20CV R1.4.3.0) running the “Chapter  9 Tests”. These tests are being run on the OTG port. Everything passes with the exception of the Halt Endpoint Test. This is text from the failure:

 

===============

 Now Starting Test: Halt Endpoint Test (Configuration Index 0)

Start time: Tue Mar 08 15:17:31 2011

 Testing Interface number : 0 Alternate setting : 0

Testing EndPoint type : Bulk, Address : 81

Endpoint is currently not halted

Endpoint is halted

Could not clear endpoint halt

(1.2.91) A device that has Bulk/Interrupt endpoints must support the

 Halt Endpoint request on those endpoints.

Testing EndPoint type : Bulk, Address : 2

Endpoint is currently not halted

Endpoint is halted

Could not clear endpoint halt

(1.2.91) A device that has Bulk/Interrupt endpoints must support the

 Halt Endpoint request on those endpoints.

 Stop time: Tue Mar 08 15:17:32 2011

Duration:  1 second.

Stopping Test [ Halt Endpoint Test (Configuration Index 0):

     Number of: Fails (2); Aborts (0); Warnings (0) ]

 ===============

I’ve started digging through the release notes and the known issues database but haven’t found anything that might be related to this issue yet.  Has anyone encountered compliance failures like this one before?  One of my next step will be to dig into the driver code but I’m hoping there is a know issue already recorded that will give me an idea of where to start.


Thanks,

Jemiah

.

  • Hi Jemiah,

    We ran into the same issue and found it was caused by the OTG Function PDD failing to clear the stall condition.

    Two modifications to the UfnPdd_ClearEndpointStall function in C:\WINCE600\PLATFORM\COMMON\SRC\SOC\OMAP35XX_TPS659XX_TI_V1\omap35xx\musb\musbfn\pdd.c are needed:

    Change
        if(csrVal & RXCSR_P_SENTSTALL)
    to
        if(csrVal & (RXCSR_P_SENDSTALL | RXCSR_P_SENTSTALL))

    ...and change
        if (csrVal & TXCSR_P_SENTSTALL)
    to
        if (csrVal & (TXCSR_P_SENDSTALL | TXCSR_P_SENTSTALL))


    Hope this helps,
    Carsten

  • Thanks Carsten,

       That's exactly the change that we made. I should have posted the solution once I'd found it but I still noticed some strange behavior. I could verify that the endpoint halt was cleared however, the test from USB.org still failed(USB Command Verifier). In my case my customer was satisfied that I could show the issue resolved regardless. Were you running the same test suite?  What results did you see? 

    Jemiah

    .

     

  • Hi Jemiah,

    This was the only change needed to make all the USBCV Chapter 9 Tests pass.

    We did not run any other test suites against our device.

    The dll versions reported by USBCV are:

    • UsbCommandVerifier.dll 1.3.3.2
    • TestServices.dll 1.3.3.4
    • StackSwitcher.dll 1.3.3.2

    (Not that I think it makes any difference)

    Carsten