Re: [PATCH RFC] usb: typec: ucsi: Schedule connector worker on freezable workqueue
From: Joonhoe Kim
Date: Fri Oct 16 2026 - 08:55:38 EST
(Resending with the lists on Cc; my earlier reply only went to Abel.)
On Wed, Feb 05, 2025 at 01:45:05PM +0200, Abel Vesa wrote:
> Scheduling the USCI connector worker on the freezable system workqueue
> instead will ensure the devices are resumed by the time the worker is
> scheduled to run.
Hi Abel,
You mentioned respinning this together with the altmode change (now
7d0767c5cd87). Are you still planning to? I hit the same problem on a
Kaanapali tablet (Lenovo Legion Tab Y700 Gen 5) with an FSA4480
orientation switch. Unplugging a USB-C to HDMI adapter during s2idle,
with the altmode change applied:
i2c i2c-2: Transfer while suspended
Workqueue: events ucsi_handle_connector_change
fsa4480_set
typec_switch_set
typec_set_orientation
pmic_glink_ucsi_connector_status
ucsi_handle_connector_change
and the system never resumes. With this patch on v7.3-rc4 it resumes
normally (2 of 2) and the change is handled after thaw.
On Dmitry's question: freezing the ucsi_glink notify_work instead would
also hold back command completions (ucsi_notify_common() ->
complete()), so a command in flight at freeze time would wait for
UCSI_TIMEOUT_MS. That is from reading the code, not tested.
If you respin it, I can reply with a Tested-by. If you'd rather I send
it, I have it rebased on next-20260928; just tell me how to credit you.
Thanks,
Joonhoe Kim