exynos9610: USB: HAL: enable auto suspend for USB headsets
authorYueyao Zhu <yueyao@google.com>
Wed, 28 Jun 2017 19:13:28 +0000 (12:13 -0700)
committerJan Altensen <info@stricted.net>
Sun, 1 Nov 2020 02:06:28 +0000 (03:06 +0100)
commitee70a3ea715e17c777f3e66593233dfea87029db
tree11037b6c270226f4ae46ffe7882fe3cfc7a98aed
parent6e6ca2a3d6694f9a18a768daae2bc9e266949239
exynos9610: USB: HAL: enable auto suspend for USB headsets

Adds a thread that handles add uevents of USB devices, and
enables auto suspend on that USB device (i.e. set power/control
to auto) if the device idProduct/idVendor is whitelisted.

The android kernel will already autosuspend audio devices,
however this enables autosuspend for the Google USB-C to
3.5mm adapter, which presents an HID-only interface when
no 3.5mm headset is connected.

Test: with the selinux and .rc changes for access permission
- MIR without headset: power/control set to auto
- MIR with headset: power/control set to auto
- regular mouse: power/control set to on

Bug: 38352281
Change-Id: I81572584ea02f6bdc814e70ab3439ab86c34a50a
hidl/usb/Usb.cpp