FS#64242 - USCI & USB-C drivers incorrectly loaded for thunderbolt port, causing incredibly slow suspension

Attached to Project: Arch Linux
Opened by Adele Reed (Virepri) - Thursday, 24 October 2019, 06:21 GMT
Last edited by freswa (frederik) - Friday, 21 February 2020, 21:39 GMT
Task Type Bug Report
Category System
Status Closed
Assigned To No-one
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:
On a 2019 HP Omen 15-dc1088nr, the following modules are incorrectly loaded:
- ucsi_ccg
- ucsi_acpi
- typec_ucsi
- typec

When attempting to bring the laptop into S3 or S4 power states, ucsi_acpi fails to contact the PPM, causing systemd-udevd to fail to freeze. This ends up, by extension, causing what seemed like a failure to suspend.

HOWEVER, the USB-C port on this laptop is in fact a thunderbolt port (and works fine, even as a USB Type-C port, even after disabling these kernel modules).

So really, this is a cascade of problems. Namely,
1) Incorrect driver loading
2) usci_acpi causes udev to fail to freeze on suspension, and makes udev workers issue warnings that they're taking a long time
3) udev's failure to freeze causes a slow suspension/resume.

Additional info:
* package version(s)
* config and/or log files etc.
* link to upstream bug report, if any

Steps to reproduce:

Drivers wise, not sure how to repro without this specific setup. Perhaps try a machine with USB-C ports all controlled by thunderbolt.

Suspension wise, also not sure how to repro without this specific setup. Perhaps try using these drivers on a machine without a PPM.
This task depends upon

Closed by  freswa (frederik)
Friday, 21 February 2020, 21:39 GMT
Reason for closing:  None
Additional comments about closing:  This seems pretty stalled to me. If it's still an issue. Please fill a re-open request. Thank you :)
Comment by Adele Reed (Virepri) - Thursday, 24 October 2019, 06:25 GMT
A relevant bit of dmesg with the last timestamp included. This occurs during a suspend. Note the large gaps between logs. This is about how much time between the attempted suspend and actual resume.

[ 105.016123] psmouse serio1: synaptics: queried min coordinates: x [1270..], y [1092..]
[ 151.872491] ucsi_ccg 0-0008: failed to reset PPM!
[ 151.872504] ucsi_ccg 0-0008: PPM init failed (-110)
[ 190.975851] ucsi_ccg 0-0008: PPM NOT RESPONDING
Comment by DDoSolitary (DDoSolitary) - Friday, 06 December 2019, 14:25 GMT
I can confirm that the same is happening on my HP Omen 17 cb0001TX laptop.
Comment by DDoSolitary (DDoSolitary) - Friday, 06 December 2019, 14:37 GMT
For me disabling the ucsi_ccg module is enough to fix the suspending/resuming issue.

Loading...