From: Mika Westerberg <mika.westerberg@linux.intel.com>
To: linux-usb@vger.kernel.org
Cc: Michael Jamet <michael.jamet@intel.com>,
Yehezkel Bernat <YehezkelShB@gmail.com>,
Mika Westerberg <mika.westerberg@linux.intel.com>,
Andreas Noever <andreas.noever@gmail.com>,
Rajmohan Mani <rajmohan.mani@intel.com>,
Dana Alkattan <dana.alkattan@intel.com>,
Lukas Wunner <lukas@wunner.de>,
"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
Bjorn Helgaas <bhelgaas@google.com>, Len Brown <lenb@kernel.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
linux-acpi@vger.kernel.org, linux-pci@vger.kernel.org
Subject: [PATCH 00/19] thunderbolt: Power Management improvements
Date: Wed, 19 Aug 2020 14:58:46 +0300 [thread overview]
Message-ID: <20200819115905.59834-1-mika.westerberg@linux.intel.com> (raw)
Hi all,
This series improves power management in the Thunderbolt driver. We already
have a quite complete power management on systems where Firmware based
Connection Manager is used (this is pretty much all non-Apple systems out
there) so this series adds a couple of optimizations to make certain power
transitions slightly faster, hopefully improving user experience.
Rest of the patches improve power management in the Software Connection
manager side of the driver. USB4 spec covers power management for USB4
hosts and devices, and also TBT3 compatible devices so these patches
implement that. We also switch to use device links instead of PCI quirk to
make sure the Thunderbolt/USB4 host controller is resumed before tunneled
PCIe and USB 3.x ports (so that it gets the chance to restore the tunnels
properly before). Tiger Lake systems with Software Connection Manager
enabled describe these relationships using a new ACPI _DSD property that we
parse in the driver and populate device links accordingly.
Mika Westerberg (17):
thunderbolt: Software CM only should set force power in Tiger Lake
thunderbolt: Use bit 31 to check if Firmware CM is running in Tiger Lake
thunderbolt: Do not program NFC buffers for USB4 router protocol adapters
thunderbolt: No need to log an error if tb_switch_lane_bonding_enable() fails
thunderbolt: Send reset only to first generation routers
thunderbolt: Tear down DP tunnels when suspending
thunderbolt: Initialize TMU again on resume
thunderbolt: Do not change default USB4 router notification timeout
thunderbolt: Configure link after lane bonding is enabled
thunderbolt: Set port configured for both ends of the link
thunderbolt: Configure port for XDomain
thunderbolt: Disable lane 1 for XDomain connection
thunderbolt: Enable wakes from system suspend
PCI / thunderbolt: Switch to use device links instead of PCI quirk
ACPI: Export acpi_get_first_physical_node() to modules
thunderbolt: Create device links from ACPI description
thunderbolt: Add runtime PM for Software CM
Rajmohan Mani (2):
thunderbolt: Optimize Force Power logic
thunderbolt: Optimize NHI LC mailbox command processing
drivers/acpi/bus.c | 1 +
drivers/pci/quirks.c | 57 --------
drivers/thunderbolt/Makefile | 2 +
drivers/thunderbolt/acpi.c | 117 ++++++++++++++++
drivers/thunderbolt/domain.c | 2 +
drivers/thunderbolt/icm.c | 5 +-
drivers/thunderbolt/lc.c | 151 ++++++++++++++++----
drivers/thunderbolt/nhi.c | 69 ++++++++++
drivers/thunderbolt/nhi_ops.c | 31 +++--
drivers/thunderbolt/switch.c | 209 +++++++++++++++++++++++-----
drivers/thunderbolt/tb.c | 189 +++++++++++++++++++++++--
drivers/thunderbolt/tb.h | 35 ++++-
drivers/thunderbolt/tb_regs.h | 16 +++
drivers/thunderbolt/usb4.c | 251 ++++++++++++++++++++++++++--------
14 files changed, 935 insertions(+), 200 deletions(-)
create mode 100644 drivers/thunderbolt/acpi.c
--
2.28.0
next reply other threads:[~2020-08-19 11:59 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-19 11:58 Mika Westerberg [this message]
2020-08-19 11:58 ` [PATCH 01/19] thunderbolt: Optimize Force Power logic Mika Westerberg
2020-08-19 11:58 ` [PATCH 02/19] thunderbolt: Optimize NHI LC mailbox command processing Mika Westerberg
2020-08-19 11:58 ` [PATCH 03/19] thunderbolt: Software CM only should set force power in Tiger Lake Mika Westerberg
2020-08-19 11:58 ` [PATCH 04/19] thunderbolt: Use bit 31 to check if Firmware CM is running " Mika Westerberg
2020-08-19 11:58 ` [PATCH 05/19] thunderbolt: Do not program NFC buffers for USB4 router protocol adapters Mika Westerberg
2020-08-19 11:58 ` [PATCH 06/19] thunderbolt: No need to log an error if tb_switch_lane_bonding_enable() fails Mika Westerberg
2020-08-19 11:58 ` [PATCH 07/19] thunderbolt: Send reset only to first generation routers Mika Westerberg
2020-08-19 11:58 ` [PATCH 08/19] thunderbolt: Tear down DP tunnels when suspending Mika Westerberg
2020-08-19 11:58 ` [PATCH 09/19] thunderbolt: Initialize TMU again on resume Mika Westerberg
2020-08-19 11:58 ` [PATCH 10/19] thunderbolt: Do not change default USB4 router notification timeout Mika Westerberg
2020-08-19 11:58 ` [PATCH 11/19] thunderbolt: Configure link after lane bonding is enabled Mika Westerberg
2020-08-19 11:58 ` [PATCH 12/19] thunderbolt: Set port configured for both ends of the link Mika Westerberg
2020-08-19 11:58 ` [PATCH 13/19] thunderbolt: Configure port for XDomain Mika Westerberg
2020-08-19 11:59 ` [PATCH 14/19] thunderbolt: Disable lane 1 for XDomain connection Mika Westerberg
2020-08-19 11:59 ` [PATCH 15/19] thunderbolt: Enable wakes from system suspend Mika Westerberg
2020-08-19 11:59 ` [PATCH 16/19] PCI / thunderbolt: Switch to use device links instead of PCI quirk Mika Westerberg
2020-08-20 17:24 ` Bjorn Helgaas
2020-08-19 11:59 ` [PATCH 17/19] ACPI: Export acpi_get_first_physical_node() to modules Mika Westerberg
2020-08-19 11:59 ` [PATCH 18/19] thunderbolt: Create device links from ACPI description Mika Westerberg
2020-08-19 11:59 ` [PATCH 19/19] thunderbolt: Add runtime PM for Software CM Mika Westerberg
2020-09-03 9:15 ` [PATCH 00/19] thunderbolt: Power Management improvements Mika Westerberg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200819115905.59834-1-mika.westerberg@linux.intel.com \
--to=mika.westerberg@linux.intel.com \
--cc=YehezkelShB@gmail.com \
--cc=andreas.noever@gmail.com \
--cc=bhelgaas@google.com \
--cc=dana.alkattan@intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=lukas@wunner.de \
--cc=michael.jamet@intel.com \
--cc=rafael.j.wysocki@intel.com \
--cc=rajmohan.mani@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox