Unverified Commit a59e1221 authored by Prashant Malani's avatar Prashant Malani Committed by Benson Leung
Browse files

platform/chrome: cros_ec_typec: Flush pending work



When a PD notifier event arrives, a new work event won't be enqueued if
the current one hasn't completed. This could lead to dropped events.

So, flush any pending work before scheduling the new instance.

Signed-off-by: default avatarPrashant Malani <pmalani@chromium.org>
Link: https://lore.kernel.org/r/20210211193221.610867-1-pmalani@chromium.org


Signed-off-by: default avatarBenson Leung <bleung@chromium.org>
parent b4b06c97
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -1031,6 +1031,7 @@ static int cros_ec_typec_event(struct notifier_block *nb,
{
	struct cros_typec_data *typec = container_of(nb, struct cros_typec_data, nb);

	flush_work(&typec->port_work);
	schedule_work(&typec->port_work);

	return NOTIFY_OK;