Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit 234fb3b0 authored by Khalid Zubair's avatar Khalid Zubair Committed by Gerrit Code Review
Browse files

usb: ensure accessory detached sent on re-attach

It's possible for USB state change events to get swallowed if the
cable is reconnected quickly because state changes are de-bounced with
a 1 second interval.

As a result an accessory detached event will not be sent if it
re-attaches quickly. However, UsbDeviceManager will send an attached
event when the USB connection is configured. This causes apps to
misbehave and attempt to open the accessory without closing the
previous one.

The call to openAccessory fails (with EBUSY) because the underlying
/dev/usb_accessory chardev is already open exclusively by the first
accessory.

Fix this issue by sending a detached event before sending an attached
event if the previous accessory was not cleaned up properly.

This change fixes a failure in CTSVerifier's USB Accessory Test where
the test fails if you reconnect the USB cable quickly.

OPO-688, FEIJ-471

Change-Id: I49690553213e866d200da1fb22c83348c6eb3491
parent 507b3a7b
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment