[U-Boot] uboot xHCI driver crash sometimes when endpoint stalls

Mohammed Mohisin mohammedmohisin at gmail.com
Fri May 20 19:43:54 CEST 2016


Hi All,

Sometimes crash is observed, when the endpoint stalls.
And the crash happens in xhci_ctrl_tx() -> xhci_acknowledge_event()


In my case,
1) scsi read command is sent successfully,
2) Then for Get data command stall is received (as i mentioned issue is
seen sometimes, which means data is being sent and received correctly other
times.)
3) As a response to STALL event, i do the following (as endpoint stall is
not handled in u-boot)
    - send reset endpoint command
    - wait for trb completion event
    - call abort_td() which stops endpoint ring and sets deq pointer to enq
pointer.
    - Now return error STALL status to application
    - Now application sends
            a) reset device (0xFF) command ----> issue is seen here...
                     Issue description:
                      - when control setup and status TRBs are enq'ed and
doorbell is                               rung, event is received.
                      - while acknowledging this event, crash is seen
            b) clear stall on both bulk in and out endpoints
4) Now the scsi read command is retried.

Can anyone tell what might be happening, ??

Regards


More information about the U-Boot mailing list