Thinkpad X1C - laggy touchpad after display lock screen

When unlocking jet (a Thinkpad X1C Gen 7), by tapping the shift (or other) key, sometimes the touchpad would not react until after a few seonds of continuous finger motion. This has been the case for over a year, and has spawned at least one thread in the Lenovo support forums.

In the above topic, a workaround identified was to disable power-saving for the device Intel(R) Serial IO I2C Host Controller - 9DE9. This did indeed seem to correct the issue. However, after a reboot, power-saving was re-enabled on the device.

I assumed there must be a way to disable power-saving on the device, either through the registry or programmatically. After a few blind alleys, I stumbled upon a Dell support forum post, where the same issue had been reported. One helpful person (AZAZAZ_01) had written some Powershell to disable the option. It needed a slight amendment for the Thinkpad, but works. Note, the script must be run with admin privilege, or if run as an automatic task, "Run with Highest Privileges"

Here's the script:

  # Find device to disable
  # "Allow the computer to turn off this device to save power"
  #
  $targetDevice =  "Intel(R) Serial IO I2C Host Controller - 9DE9"

  $hostController = Get-PnpDevice | where {$_.FriendlyName -eq $targetDevice}
  $instanceName = $hostController.InstanceId
  # Find Windows Management Instrumentation instance
  # NOTE: manually verify correct instance is found before using this script
  $powerMgmt = Get-WmiObject MSPower_DeviceEnable -Namespace root\wmi |
    where {$_.InstanceName -like "${instanceName}*"}
  $powerMgmt.Enable = $False
  $powerMgmt.psbase.put()

A little later...

The above solution may have been overkill. Another post on the Lenovo forum, by MHisOveRated, stated that turning off power-saving for the Thuunderbolt system device Thunderbolt(TM) Controller - 15D2 solved the problem, with the added bonus the option was not reset after every boot. This also works for me.