]> git.baikalelectronics.ru Git - kernel.git/commit
Bluetooth: btusb: Add a Kconfig option to enable USB autosuspend by default
authorHans de Goede <hdegoede@redhat.com>
Mon, 13 Nov 2017 13:44:16 +0000 (14:44 +0100)
committerMarcel Holtmann <marcel@holtmann.org>
Tue, 12 Dec 2017 23:28:40 +0000 (00:28 +0100)
commitd1f9356ae7e2c89025d63f828c323d58454b8f4b
treebdf2114cf04cf8c214896b0af91cd8d4c87217d4
parentfdf8a4fb73fe60ea5f2eae576fecd9c8c0768ef7
Bluetooth: btusb: Add a Kconfig option to enable USB autosuspend by default

On many laptops the btusb device is the only USB device not having USB
autosuspend enabled, this causes not only the HCI but also the USB
controller to stay awake, together using aprox. 0.4W of power.

Modern ultrabooks idle around 6W (at 50% screen brightness), 3.5W for
Apollo Lake devices. 0.4W is a significant chunk of this (7 / 11%).

The btusb driver already contains code to allow enabling USB autosuspend,
but currently leaves it up to the user / userspace to enable it. This
means that for most people it will not be enabled, leading to an
unnecessarily high power consumption.

Since enabling it is not entirely without risk of regressions, this
commit adds a Kconfig option so that Linux distributions can choose to
enable it by default. This commit also adds a module option so that when
distros receive bugs they can easily ask the user to disable it again
for easy debugging.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
drivers/bluetooth/Kconfig
drivers/bluetooth/btusb.c