• Hans de Goede's avatar
    Bluetooth: btusb: Add a Kconfig option to enable USB autosuspend by default · eff2d68c
    Hans de Goede authored
    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: default avatarHans de Goede <hdegoede@redhat.com>
    Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
    eff2d68c
btusb.c 88.5 KB