• Lan Tianyu's avatar
    usb/acpi: Use ACPI methods to power off ports. · f7ac7787
    Lan Tianyu authored
    Upcoming Intel systems will have an ACPI method to control whether a USB
    port can be completely powered off.  The implication of powering off a
    USB port is that the device and host sees a physical disconnect, and
    subsequent port connections and remote wakeups will be lost.
    
    Add a new function, usb_acpi_power_manageable(), that can be used to
    find whether the usb port has ACPI power resources that can be used to
    power on and off the port on these machines. Also add a new function
    called usb_acpi_set_power_state() that controls the port power via these
    ACPI methods.
    
    When the USB core calls into the xHCI hub driver to power off a port,
    check whether the port can be completely powered off via this new ACPI
    mechanism.  If so, call into these new ACPI methods.  Also use the ACPI
    methods when the USB core asks to power on a port.
    Signed-off-by: default avatarLan Tianyu <tianyu.lan@intel.com>
    Signed-off-by: default avatarSarah Sharp <sarah.a.sharp@linux.intel.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    f7ac7787
xhci-hub.c 32.3 KB