]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
Merge patch series "Support system sleep with offloaded usb transfers" into usb-next
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 12 Sep 2025 12:08:09 +0000 (14:08 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 12 Sep 2025 12:08:09 +0000 (14:08 +0200)
commit44bbcba50d55ca97e09b0eaa7c1e6bf97b9f425d
tree48bfe0425fac7820beeb70cd2fdc40b1483db2b6
parentdaf161343a3904f6699febbfb1e18d532371ba00
parent38d627bc8522a6a2fd6f9454c8b3b5d3848f5f03
Merge patch series "Support system sleep with offloaded usb transfers" into usb-next

Guan-Yu Lin <guanyulin@google.com> says:

Wesley Cheng and Mathias Nyman's USB offload design enables a
co-processor to handle some USB transfers, potentially allowing the
system to sleep (suspend-to-RAM) and save power. However, Linux's System
Sleep model halts the USB host controller when the main system isn't
managing any USB transfers. To address this, the proposal modifies the
system to recognize offloaded USB transfers and manage power
accordingly. This way, offloaded USB transfers could still happen during
system sleep (Suspend-to-RAM).

This involves two key steps:
1. Transfer Status Tracking: Propose offload_usage and corresponding
   apis drivers could track USB transfers on the co-processor, ensuring
   the system is aware of any ongoing activity.
2. Power Management Adjustment:  Modifications to the USB driver stack
   (xhci host controller driver, and USB device drivers) allow the
   system to sleep (Suspend-to-RAM) without disrupting co-processor
   managed USB transfers. This involves adding conditional checks to
   bypass some power management operations in the System Sleep model.

Link: https://lore.kernel.org/r/20250911142051.90822-1-guanyulin@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>