[SeaBIOS] Unremovable USB3 device can not be detected after reboot

Kevin O'Connor kevin at koconnor.net
Thu Aug 27 15:16:29 CET 2015


On Thu, Aug 27, 2015 at 03:47:02AM +0000, Zheng Bao wrote:
> Fist time: Power up, SeaGate USB hard drive can be detected.
> ------------------------------------------------------   start
> SeaBIOS (version rel-1.8.0-0-g4c59f5d-dirty-20150826_232532-supersrv)
[...]
> -----------------------------------------------------------------------------  end
> 
> Second time: Press reset button. The SeaGate USB3 hard drive can not be detected.
> --------------------------------------------------------------------------------- start
> SeaBIOS (version rel-1.8.0-0-g4c59f5d-dirty-20150826_232532-supersrv)
[...]
> |aff4a000| xhci_alloc_pipe: usbdev 0xaff4f520, ring 0xaff9e100, slotid 0, epid 1
> |aff4a000| xhci_cmd_enable_slot:
> |aff4a000| xhci_trb_queue: ring 0xaff9ed00 [nidx 1, len 0]
> |aff4a000| xhci_process_events: status change port #5
> |aff4a000| xhci_process_events: status change port #1
> |aff4a000| xhci_process_events: status change port #5
> |aff4a000| xhci_process_events: ring 0xaff9ed00 [trb 0xaff9ed00, evt 0xaff9ee00, type 33, eidx 1, cc 1]
> |aff4a000| xhci_alloc_pipe: enable slot: got slotid 1
> |aff4a000| xhci_cmd_address_device: slotid 1
> |aff4a000| xhci_trb_queue: ring 0xaff9ed00 [nidx 2, len 0]
> |aff4a000| xhci_process_events: ring 0xaff9ed00 [trb 0xaff9ed10, evt 0xaff9ee00, type 33, eidx 2, cc 4]
> |aff4a000| xhci_alloc_pipe: address device: failed (cc 4)
> \aff4a000/ End thread

A cc=4 is a "USB Transaction Error".  So, it looks like the device is
being quirky.

Is it possible you could try different types of USB3 drives in this
machine?

Ideally, SeaBIOS would have generic USB retry logic to try and handle
weird errors like this.  It's a bit of work to implement that though.

-Kevin



More information about the SeaBIOS mailing list