Project

General

Profile

Actions

Bug #175

open

Most USB3 external disk enclosures do not work with coreboot on X230

Added by Tobis Greer over 5 years ago. Updated 8 months ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
10/16/2018
Due date:
% Done:

0%

Estimated time:
Affected versions:
Needs backport to:
Affected hardware:
Affected OS:

Description

I would like to report issues with USB3 external disk enclosures and coreboot on the Lenovo X230.

I have several enclosures, and only one works without issues: Toshiba Stor E Alu 2.5. Every other one will cause the following messages in dmesg over USB3 (USB2 is fine):

[   73.788819] usb 4-2: new SuperSpeed USB device number 3 using xhci_hcd
[   73.809949] usb 4-2: New USB device found, idVendor=0080, idProduct=a001
[   73.809955] usb 4-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   73.809958] usb 4-2: Product: External USB 3.0
[   73.809961] usb 4-2: Manufacturer: TOSHIBA
[   73.809964] usb 4-2: SerialNumber: 201503310007F
[   73.813049] scsi host8: uas
[   73.813861] scsi 8:0:0:0: Direct-Access     TO Exter nal USB 3.0      0204 PQ: 0 ANSI: 6
[   73.814609] sd 8:0:0:0: Attached scsi generic sg4 type 0
[   73.815157] sd 8:0:0:0: [sde] 156301488 512-byte logical blocks: (80.0 GB/74.5 GiB)
[   73.815161] sd 8:0:0:0: [sde] 4096-byte physical blocks
[   73.815326] sd 8:0:0:0: [sde] Write Protect is off
[   73.815330] sd 8:0:0:0: [sde] Mode Sense: 53 00 00 08
[   73.815659] sd 8:0:0:0: [sde] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[   73.819382]  sde: sde1
[   73.820711] sd 8:0:0:0: [sde] Attached SCSI disk
[  105.329243] sd 8:0:0:0: [sde] tag#3 uas_eh_abort_handler 0 uas-tag 4 inflight: CMD IN 
[  105.329252] sd 8:0:0:0: [sde] tag#3 CDB: Read(10) 28 00 00 00 00 80 00 01 80 00
[  105.329334] sd 8:0:0:0: [sde] tag#2 uas_eh_abort_handler 0 uas-tag 3 inflight: CMD IN 
[  105.329342] sd 8:0:0:0: [sde] tag#2 CDB: Read(10) 28 00 00 00 00 40 00 00 38 00
[  105.345200] scsi host8: uas_eh_device_reset_handler start
[  105.345276] usb 4-2: cmd cmplt err -2
[  105.473565] usb 4-2: reset SuperSpeed USB device number 3 using xhci_hcd
[  105.495210] scsi host8: uas_eh_device_reset_handler success
[  138.096012] sd 8:0:0:0: [sde] tag#5 uas_eh_abort_handler 0 uas-tag 6 inflight: CMD IN 
[  138.096016] sd 8:0:0:0: [sde] tag#5 CDB: Read(10) 28 00 09 50 f5 d8 00 00 28 00
[  138.096184] sd 8:0:0:0: [sde] tag#4 uas_eh_abort_handler 0 uas-tag 5 inflight: CMD IN 
[  138.096187] sd 8:0:0:0: [sde] tag#4 CDB: Read(10) 28 00 09 50 f5 28 00 00 a8 00
[  138.116005] scsi host8: uas_eh_device_reset_handler start
[  138.116027] usb 4-2: cmd cmplt err -2
[  138.244231] usb 4-2: reset SuperSpeed USB device number 3 using xhci_hcd
[  138.265440] scsi host8: uas_eh_device_reset_handler success
[  168.816132] sd 8:0:0:0: [sde] tag#4 uas_eh_abort_handler 0 uas-tag 5 inflight: CMD IN 
[  168.816138] sd 8:0:0:0: [sde] tag#4 CDB: Read(10) 28 00 09 50 f7 b8 00 00 48 00
[  168.816174] sd 8:0:0:0: [sde] tag#3 uas_eh_abort_handler 0 uas-tag 4 inflight: CMD IN 
[  168.816177] sd 8:0:0:0: [sde] tag#3 CDB: Read(10) 28 00 09 50 f7 28 00 00 80 00
[  168.816208] sd 8:0:0:0: [sde] tag#2 uas_eh_abort_handler 0 uas-tag 3 inflight: CMD IN 
[  168.816212] sd 8:0:0:0: [sde] tag#2 CDB: Read(10) 28 00 09 50 f6 68 00 00 b8 00
[  168.832129] scsi host8: uas_eh_device_reset_handler start
[  168.832153] usb 4-2: cmd cmplt err -2
[  168.960341] usb 4-2: reset SuperSpeed USB device number 3 using xhci_hcd
[  168.981496] scsi host8: uas_eh_device_reset_handler success
[  201.583792] sd 8:0:0:0: [sde] tag#0 uas_eh_abort_handler 0 uas-tag 1 inflight: CMD IN 
[  201.583796] sd 8:0:0:0: [sde] tag#0 CDB: Read(10) 28 00 00 00 10 00 00 00 08 00
[  201.599793] scsi host8: uas_eh_device_reset_handler start
[  201.599817] usb 4-2: cmd cmplt err -2
[  201.728046] usb 4-2: reset SuperSpeed USB device number 3 using xhci_hcd
[  201.749283] scsi host8: uas_eh_device_reset_handler success
[  234.351266] sd 8:0:0:0: [sde] tag#3 uas_eh_abort_handler 0 uas-tag 4 inflight: CMD IN 
[  234.351270] sd 8:0:0:0: [sde] tag#3 CDB: Read(10) 28 00 00 00 08 80 00 01 80 00
[  234.351343] sd 8:0:0:0: [sde] tag#2 uas_eh_abort_handler 0 uas-tag 3 inflight: CMD IN 
[  234.351345] sd 8:0:0:0: [sde] tag#2 CDB: Read(10) 28 00 00 00 08 40 00 00 38 00
[  234.375267] scsi host8: uas_eh_device_reset_handler start
[  234.375319] usb 4-2: cmd cmplt err -2
[  234.503509] usb 4-2: reset SuperSpeed USB device number 3 using xhci_hcd
[  234.524774] scsi host8: uas_eh_device_reset_handler success
[  267.118802] sd 8:0:0:0: [sde] tag#0 uas_eh_abort_handler 0 uas-tag 1 inflight: CMD IN 
[  267.118810] sd 8:0:0:0: [sde] tag#0 CDB: Read(10) 28 00 00 00 0a 00 00 02 00 00
[  267.138781] scsi host8: uas_eh_device_reset_handler start
[  267.138872] usb 4-2: cmd cmplt err -2
[  267.267064] usb 4-2: reset SuperSpeed USB device number 3 using xhci_hcd
[  267.288888] scsi host8: uas_eh_device_reset_handler success
[  297.838883] sd 8:0:0:0: [sde] tag#0 uas_eh_abort_handler 0 uas-tag 1 inflight: CMD IN 
[  297.838890] sd 8:0:0:0: [sde] tag#0 CDB: Read(10) 28 00 00 60 08 00 00 00 08 00
[  297.854785] scsi host8: uas_eh_device_reset_handler start
[  297.854827] usb 4-2: cmd cmplt err -2
[  297.983104] usb 4-2: reset SuperSpeed USB device number 3 using xhci_hcd
[  298.004091] scsi host8: uas_eh_device_reset_handler success

Note that it says it's a Toshiba enclosure but it's not the Stor E Alu 2.5, it's from an Orico 2588US3-V1-BK-PRO with a 2.5" Intel X25M SSD in it.

If I use Lenovo's BIOS, then I don't have any errors at all in dmesg, and I'm able to use the disk normally. With coreboot, I can't mount the disk at all and dmesg gets these error messages continuously.


Files

.config (22.5 KB) .config Tobis Greer, 10/16/2018 01:00 PM
lenovo_inteltool.txt (117 KB) lenovo_inteltool.txt Tobis Greer, 10/16/2018 01:29 PM
cb_inteltool.txt (171 KB) cb_inteltool.txt Tobis Greer, 10/16/2018 01:29 PM
Actions #1

Updated by Tobis Greer over 5 years ago

Here is what happens with another enclosure from Amazon (Cateck brand) with a 120GB PNY SSD:

[ 2238.693339] usb 4-2: new SuperSpeed USB device number 8 using xhci_hcd
[ 2238.714317] usb 4-2: New USB device found, idVendor=152d, idProduct=0578
[ 2238.714322] usb 4-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2238.714325] usb 4-2: Product: JMS579
[ 2238.714328] usb 4-2: Manufacturer: JMicron
[ 2238.714331] usb 4-2: SerialNumber: 0E914110000457951707
[ 2238.716588] scsi host8: uas
[ 2238.717470] scsi 8:0:0:0: Direct-Access     SSD2SC12 0G3LA726B087-370 0104 PQ: 0 ANSI: 6
[ 2238.718778] sd 8:0:0:0: Attached scsi generic sg4 type 0
[ 2238.719360] sd 8:0:0:0: [sde] 234441648 512-byte logical blocks: (120 GB/112 GiB)
[ 2238.719362] sd 8:0:0:0: [sde] 4096-byte physical blocks
[ 2238.719518] sd 8:0:0:0: [sde] Write Protect is off
[ 2238.719520] sd 8:0:0:0: [sde] Mode Sense: 53 00 00 08
[ 2238.719839] sd 8:0:0:0: [sde] Disabling FUA
[ 2238.719841] sd 8:0:0:0: [sde] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[ 2238.932634]  sde: sde1
[ 2238.934070] sd 8:0:0:0: [sde] Attached SCSI disk
[ 2270.045106] sd 8:0:0:0: [sde] tag#0 uas_eh_abort_handler 0 uas-tag 1 inflight: CMD IN 
[ 2270.045114] sd 8:0:0:0: [sde] tag#0 CDB: Read(10) 28 00 00 00 02 00 00 02 00 00
[ 2270.065133] scsi host8: uas_eh_device_reset_handler start
[ 2270.065187] usb 4-2: cmd cmplt err -2
[ 2270.193469] usb 4-2: reset SuperSpeed USB device number 8 using xhci_hcd
[ 2270.215218] scsi host8: uas_eh_device_reset_handler success
[ 2300.764956] sd 8:0:0:0: [sde] tag#3 uas_eh_abort_handler 0 uas-tag 4 inflight: CMD IN 
[ 2300.764961] sd 8:0:0:0: [sde] tag#3 CDB: Read(10) 28 00 00 00 08 80 00 01 80 00
[ 2300.788966] scsi host8: uas_eh_device_reset_handler start
[ 2300.789029] usb 4-2: cmd cmplt err -2
[ 2300.917219] usb 4-2: reset SuperSpeed USB device number 8 using xhci_hcd
[ 2300.938307] scsi host8: uas_eh_device_reset_handler success
[ 2333.532856] sd 8:0:0:0: [sde] tag#2 uas_eh_abort_handler 0 uas-tag 3 inflight: CMD IN 
[ 2333.532864] sd 8:0:0:0: [sde] tag#2 CDB: Read(10) 28 00 0d f9 47 e8 00 00 10 00
[ 2333.548875] scsi host8: uas_eh_device_reset_handler start
[ 2333.548929] usb 4-2: cmd cmplt err -2
[ 2333.677072] usb 4-2: reset SuperSpeed USB device number 8 using xhci_hcd
[ 2333.698560] scsi host8: uas_eh_device_reset_handler success
[ 2366.300753] sd 8:0:0:0: [sde] tag#1 uas_eh_abort_handler 0 uas-tag 2 inflight: CMD IN 
[ 2366.300761] sd 8:0:0:0: [sde] tag#1 CDB: Read(10) 28 00 01 bf 30 28 00 00 20 00
[ 2366.300889] sd 8:0:0:0: [sde] tag#0 uas_eh_abort_handler 0 uas-tag 1 inflight: CMD IN 
[ 2366.300896] sd 8:0:0:0: [sde] tag#0 CDB: Read(10) 28 00 00 00 10 00 00 00 08 00
[ 2366.316698] scsi host8: uas_eh_device_reset_handler start
[ 2366.316757] usb 4-2: cmd cmplt err -2
[ 2366.444918] usb 4-2: reset SuperSpeed USB device number 8 using xhci_hcd
[ 2366.466164] scsi host8: uas_eh_device_reset_handler success
[ 2399.068499] sd 8:0:0:0: tag#0 uas_eh_abort_handler 0 uas-tag 1 inflight: CMD 
[ 2399.068506] sd 8:0:0:0: tag#0 CDB: Test Unit Ready 00 00 00 00 00 00
[ 2404.700459] sd 8:0:0:0: [sde] tag#1 uas_eh_abort_handler 0 uas-tag 2 inflight: CMD IN 
[ 2404.700467] sd 8:0:0:0: [sde] tag#1 CDB: Read(10) 28 00 00 00 08 10 00 00 08 00
[ 2404.716460] scsi host8: uas_eh_device_reset_handler start
[ 2404.716493] usb 4-2: cmd cmplt err -2
[ 2404.844698] usb 4-2: reset SuperSpeed USB device number 8 using xhci_hcd
[ 2404.865991] scsi host8: uas_eh_device_reset_handler success

This one is able to mount the disk but doing so takes minutes, and reading or writing operations are also very slow to complete (even a simple ls or touch)

Updated by Tobis Greer over 5 years ago

Finally, here are the inteltool dumps from running the Lenovo 2.68 bios and from running the coreboot built off the .config file attached to the ticket. Dumped with inteltool -a.

Actions #3

Updated by Patrick Rudolph almost 5 years ago

The RCBA register for USB seems fine, but we don't do that much xhci initialisation in coreboot.
From the error description I guess it's related to over-current or transmitter margins.

Actions #4

Updated by Robert Alessi 8 months ago

Patrick Rudolph wrote in #note-3:

The RCBA register for USB seems fine, but we don't do that much xhci initialisation in coreboot.
From the error description I guess it's related to over-current or transmitter margins.

Does this mean the situation is hopeless? As it stands, the problem seems to persist under both
Linux and OpenBSD, which seems to indicate that neither kernel can complete the xhci initialitation.

More information here: https://codeberg.org/libreboot/lbmk/issues/120

And here (please read the whole thread): https://marc.info/?t=151482563500001&r=1&w=2

Thank you!

Actions

Also available in: Atom PDF