Open13

Ubuntu (Linux) の USB-C ポートがうまく動かないんだが…

wintwint

症状

専用ドックだろうとケーブル直接だろうと、断続的に断線したりする。

なぜ??

環境

ThinkPad X1 Extreme

wintwint

dmesg -dw でリアルタイムに観察する


man dmesg

       -d, --show-delta
              Display the timestamp and the time delta spent between messages.  If used  together
              with --notime then only the time delta without the timestamp is printed.
       -w, --follow
              Wait  for  new messages.  This feature is supported only on systems with a readable
              /dev/kmsg (since kernel 3.5.0).
wintwint

怪しいパターン

[14703.918643 <   42.276790>] usb usb1-port4: Cannot enable. Maybe the USB cable is bad?
[14708.162762 <    4.244119>] ucsi_acpi USBC000:00: PPM NOT RESPONDING
[14708.162768 <    0.000006>] ucsi_acpi USBC000:00: con1: failed to register partner alternate modes
[14722.498473 <   14.335705>] ucsi_acpi USBC000:00: PPM NOT RESPONDING
[14722.498479 <    0.000006>] ucsi_acpi USBC000:00: con1: failed to register partner alternate modes
[14759.361740 <   36.863261>] ucsi_acpi USBC000:00: PPM NOT RESPONDING
[14759.361746 <    0.000006>] ucsi_acpi USBC000:00: con1: failed to register partner alternate modes
[14759.509670 <    0.147924>] usb usb1-port4: Cannot enable. Maybe the USB cable is bad?
[14763.185785 <    3.676115>] usb usb1-port4: Cannot enable. Maybe the USB cable is bad?
[14763.185857 <    0.000072>] usb usb1-port4: attempt power cycle
[14765.249530 <    2.063673>] ucsi_acpi USBC000:00: PPM NOT RESPONDING
[14765.249536 <    0.000006>] ucsi_acpi USBC000:00: con1: failed to register partner alternate modes
wintwint

ケーブル変えたら Pixel 3a は特に問題なさそう

wintwint

相変わらず Galaxy Note 8 の挙動が怪しい。通信内容のリッチさは多少カイゼンされた。

pcieport 0000:00:1b.4: PME: Spurious native interrupt!
pcieport 0000:00:1b.4: PME: Spurious native interrupt!
usb 4-1: Device not responding to setup address.
usb 4-1: Device not responding to setup address.
usb 4-1: device not accepting address 20, error -71
wintwint

まあ動くし良いか

[ 9908.113908 <   82.011524>] usb 4-1: USB disconnect, device number 23
[ 9920.818528 <   12.704620>] pcieport 0000:00:1b.4: PME: Spurious native interrupt!
[ 9920.998553 <    0.180025>] pcieport 0000:00:1b.4: PME: Spurious native interrupt!
[ 9920.998565 <    0.000012>] pcieport 0000:00:1b.4: PME: Spurious native interrupt!
[ 9921.718561 <    0.719996>] usb 4-1: new SuperSpeed Gen 1 USB device number 24 using xhci_hcd
[ 9921.763267 <    0.044706>] usb 4-1: device descriptor read/8, error -71
[ 9921.870172 <    0.106905>] usb 4-1: new SuperSpeed Gen 1 USB device number 24 using xhci_hcd
[ 9922.969667 <    1.099495>] pcieport 0000:00:1b.4: PME: Spurious native interrupt!
[ 9923.218513 <    0.248846>] pcieport 0000:00:1b.4: PME: Spurious native interrupt!
[ 9923.218526 <    0.000013>] pcieport 0000:00:1b.4: PME: Spurious native interrupt!
[ 9923.849238 <    0.630712>] usb 4-1: Device not responding to setup address.
[ 9924.061388 <    0.212150>] usb 4-1: Device not responding to setup address.
[ 9924.266254 <    0.204866>] usb 4-1: device not accepting address 26, error -71
[ 9924.879880 <    0.613626>] usb 4-1: new SuperSpeed Gen 1 USB device number 27 using xhci_hcd
[ 9924.912496 <    0.032616>] usb 4-1: New USB device found, idVendor=04e8, idProduct=6860, bcdDevice= 4.00
[ 9924.912502 <    0.000006>] usb 4-1: New USB device strings: Mfr=7, Product=8, SerialNumber=9
[ 9924.912505 <    0.000003>] usb 4-1: Product: SAMSUNG_Android
[ 9924.912508 <    0.000003>] usb 4-1: Manufacturer: SAMSUNG
[ 9924.912511 <    0.000003>] usb 4-1: SerialNumber: ce0717179d44692a027e
[ 9924.923391 <    0.010880>] cdc_acm 4-1:1.1: ttyACM0: USB ACM device
[ 9928.389078 <    3.465687>] usb 4-1: USB disconnect, device number 27
[ 9928.644839 <    0.255761>] pcieport 0000:00:1b.4: PME: Spurious native interrupt!
[ 9928.994766 <    0.349927>] pcieport 0000:00:1b.4: PME: Spurious native interrupt!
[ 9928.994808 <    0.000042>] pcieport 0000:00:1b.4: PME: Spurious native interrupt!
[ 9929.410599 <    0.415791>] usb 4-1: new SuperSpeed Gen 1 USB device number 28 using xhci_hcd
[ 9929.436413 <    0.025814>] usb 4-1: New USB device found, idVendor=04e8, idProduct=6860, bcdDevice= 4.00
[ 9929.436419 <    0.000006>] usb 4-1: New USB device strings: Mfr=7, Product=8, SerialNumber=9
[ 9929.436424 <    0.000005>] usb 4-1: Product: SAMSUNG_Android
[ 9929.436426 <    0.000002>] usb 4-1: Manufacturer: SAMSUNG
[ 9929.436429 <    0.000003>] usb 4-1: SerialNumber: ce0717179d44692a027e
[ 9929.443455 <    0.007026>] cdc_acm 4-1:1.1: ttyACM0: USB ACM device