Hi Gil, On Thu, May 26, 2022 at 01:59:15PM +0300, Gil Fine wrote: > v1 can be found here: > https://lore.kernel.org/linux-usb/20220501203321.19021-1-gil.fine@xxxxxxxxx/ > v2 can be found here: > https://lore.kernel.org/linux-usb/20220509201656.502-1-gil.fine@xxxxxxxxx/ > v3 can be found here: > https://lore.kernel.org/linux-usb/20220511140549.10571-1-gil.fine@xxxxxxxxx/ > > Changes in v4: > * Remove unnecessary struct tb_sw_tmu_config and fix some typos. > * device_for_each_child() move from tb.c to tmu.c > inside tb_switch_enable_tmu_1st_child(). > > Changes in v3: > * Fix to support the case of enabling CL1 entry after resume > from runtime PM (if CL1 supported in the connected device) > > Changes in v2: > * Handle CL1 and CL0s together since on the hardware level they are > supported and enabled together > * Use device_for_each_child() to set TMU mode of host router's 1st > children > * Use FIELD_x macros from include/linux/bitfield.h > * Split single patch into two for clarity > * Fix commit message > > In this series of patches, first, we address several issues in the CL0s > implementation. > Then, we add support for a second low power state of the > link: CL1. Low power states (called collectively CLx) are used to reduce > transmitter and receiver power when a high-speed lane is idle. > We enable it, if both sides of the link support it, and only for the > first hop router (i.e. the first device that connected to the > host router). This is needed for better thermal management. > CL1 improves power management that was intoduced by CL0s. > Also, we add support of dynamic change of TMU mode to HiFi uni-directional > once DisplayPort tunnel is created. > This enables CL0s while DP tunnel exists. > Due to Intel hardware limitation, once we changed the TMU mode to HiFi > uni-directional (when DP tunnel exists), we don't change TMU mode back > to normal uni-directional, even if DP tunnel is torn down later. > Though, after sleep (or runtime PM) resume, the TMU is changed to normal > uni-directional (if CLx supported in the connected device) to enable > CL1 entry. > > Gil Fine (6): > thunderbolt: Silently ignore CLx enabling in case CLx is not supported > thunderbolt: CLx disable before system suspend only if previously > enabled > thunderbolt: Fix typos in CLx enabling > thunderbolt: Change downstream router's TMU rate in both TMU uni/bidir > mode > thunderbolt: Add CL1 support for USB4 and Titan Ridge routers > thunderbolt: Change TMU mode to HiFi uni-directional once DisplayPort > tunneled All applied to thunderbolt.git/next, thanks! I changed "Unknown" to "unknown" in tb_switch_clx_name() to be consistent with the rest of the driver.