mbox series

[00/20] thunderbolt: Rework TMU and CLx support

Message ID 20230529100425.6125-1-mika.westerberg@linux.intel.com (mailing list archive)
Headers show
Series thunderbolt: Rework TMU and CLx support | expand

Message

Mika Westerberg May 29, 2023, 10:04 a.m. UTC
Hi all,

This series reworks the TMU and CLx support code to match better what we
do elsewhere in the driver and prepares for USB4v2 adaptive TMU support
that we are going to add in the subsequent series (I'm sending that out
later this week). I've split this part as separate from USB4v2 support
hoping that it makes reviewing them easier.

Gil Fine (1):
  thunderbolt: Introduce tb_switch_downstream_port()

Mika Westerberg (19):
  thunderbolt: Introduce tb_xdomain_downstream_port()
  thunderbolt: Fix a couple of style issues in TMU code
  thunderbolt: Drop useless 'unidirectional' parameter from tb_switch_tmu_is_enabled()
  thunderbolt: Rework Titan Ridge TMU objection disable function
  thunderbolt: Get rid of tb_switch_enable_tmu_1st_child()
  thunderbolt: Move TMU configuration to tb_enable_tmu()
  thunderbolt: Move tb_enable_tmu() close to other TMU functions
  thunderbolt: Check valid TMU configuration in tb_switch_tmu_configure()
  thunderbolt: Move CLx support functions into clx.c
  thunderbolt: Get rid of __tb_switch_[en|dis]able_clx()
  thunderbolt: Move CLx enabling into tb_enable_clx()
  thunderbolt: Switch CL states from enum to a bitmask
  thunderbolt: Check for first depth router in tb.c
  thunderbolt: Do not call CLx functions from TMU code
  thunderbolt: Prefix TMU post time log message with "TMU: "
  thunderbolt: Prefix CL state related log messages with "CLx: "
  thunderbolt: Initialize CL states from the hardware
  thunderbolt: Make tb_switch_clx_disable() return CL states that were enabled
  thunderbolt: Disable CL states when a DMA tunnel is established

 drivers/thunderbolt/Makefile  |   2 +-
 drivers/thunderbolt/acpi.c    |   5 +-
 drivers/thunderbolt/clx.c     | 416 ++++++++++++++++++++++++++++++++++
 drivers/thunderbolt/debugfs.c |  35 ++-
 drivers/thunderbolt/icm.c     |  24 +-
 drivers/thunderbolt/switch.c  | 378 +-----------------------------
 drivers/thunderbolt/tb.c      | 227 +++++++++++++------
 drivers/thunderbolt/tb.h      | 102 ++++-----
 drivers/thunderbolt/tmu.c     | 152 ++++---------
 drivers/thunderbolt/usb4.c    |   9 +-
 drivers/thunderbolt/xdomain.c |  16 +-
 11 files changed, 719 insertions(+), 647 deletions(-)
 create mode 100644 drivers/thunderbolt/clx.c

Comments

Mika Westerberg June 9, 2023, 9:09 a.m. UTC | #1
On Mon, May 29, 2023 at 01:04:05PM +0300, Mika Westerberg wrote:
> Hi all,
> 
> This series reworks the TMU and CLx support code to match better what we
> do elsewhere in the driver and prepares for USB4v2 adaptive TMU support
> that we are going to add in the subsequent series (I'm sending that out
> later this week). I've split this part as separate from USB4v2 support
> hoping that it makes reviewing them easier.
> 
> Gil Fine (1):
>   thunderbolt: Introduce tb_switch_downstream_port()
> 
> Mika Westerberg (19):
>   thunderbolt: Introduce tb_xdomain_downstream_port()
>   thunderbolt: Fix a couple of style issues in TMU code
>   thunderbolt: Drop useless 'unidirectional' parameter from tb_switch_tmu_is_enabled()
>   thunderbolt: Rework Titan Ridge TMU objection disable function
>   thunderbolt: Get rid of tb_switch_enable_tmu_1st_child()
>   thunderbolt: Move TMU configuration to tb_enable_tmu()
>   thunderbolt: Move tb_enable_tmu() close to other TMU functions
>   thunderbolt: Check valid TMU configuration in tb_switch_tmu_configure()
>   thunderbolt: Move CLx support functions into clx.c
>   thunderbolt: Get rid of __tb_switch_[en|dis]able_clx()
>   thunderbolt: Move CLx enabling into tb_enable_clx()
>   thunderbolt: Switch CL states from enum to a bitmask
>   thunderbolt: Check for first depth router in tb.c
>   thunderbolt: Do not call CLx functions from TMU code
>   thunderbolt: Prefix TMU post time log message with "TMU: "
>   thunderbolt: Prefix CL state related log messages with "CLx: "
>   thunderbolt: Initialize CL states from the hardware
>   thunderbolt: Make tb_switch_clx_disable() return CL states that were enabled
>   thunderbolt: Disable CL states when a DMA tunnel is established

All applied to thunderbolt.git/next.