23.01.2020 14:19, Wolfram Sang пишет: > On Fri, Dec 13, 2019 at 02:44:17PM +0100, Thierry Reding wrote: >> From: Thierry Reding <treding@xxxxxxxxxx> >> >> Depending on the board design, the I2C controllers found on Tegra SoCs >> may require pinmuxing in order to function. This is done as part of the >> driver's runtime suspend/resume operations. However, the PM core does >> not allow devices to go into runtime suspend during system sleep to >> avoid potential races with the suspend/resume of their parents. >> >> As a result of this, when Tegra SoCs resume from system suspend, their >> I2C controllers may have lost the pinmux state in hardware, whereas the >> pinctrl subsystem is not aware of this. To fix this, make sure that if >> the I2C controller is not runtime suspended, the runtime suspend code is >> still executed in order to disable the module clock (which we don't need >> to be enabled during sleep) and set the pinmux to the idle state. >> >> Conversely, make sure that the I2C controller is properly resumed when >> waking up from sleep so that pinmux settings are properly restored. >> >> This fixes a bug seen with DDC transactions to an HDMI monitor timing >> out when resuming from system suspend. >> >> Signed-off-by: Thierry Reding <treding@xxxxxxxxxx> > > Do we still need this after I applied "[PATCH v5 0/8] NVIDIA Tegra I2C > driver fixes and improvements" ? > No, it shouldn't be needed.