public inbox for linux-i2c@vger.kernel.org
 help / color / mirror / Atom feed
* Re: [PATCH] i2c: tegra: Restore pinmux on system resume
       [not found] <20191213134417.222720-1-thierry.reding@gmail.com>
@ 2020-01-23 11:19 ` Wolfram Sang
  2020-01-23 15:10   ` Dmitry Osipenko
  0 siblings, 1 reply; 2+ messages in thread
From: Wolfram Sang @ 2020-01-23 11:19 UTC (permalink / raw)
  To: Thierry Reding; +Cc: Jon Hunter, Dmitry Osipenko, linux-i2c, linux-tegra

[-- Attachment #1: Type: text/plain, Size: 1358 bytes --]

On Fri, Dec 13, 2019 at 02:44:17PM +0100, Thierry Reding wrote:
> From: Thierry Reding <treding@nvidia.com>
> 
> 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@nvidia.com>

Do we still need this after I applied "[PATCH v5 0/8] NVIDIA Tegra I2C
driver fixes and improvements" ?


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] i2c: tegra: Restore pinmux on system resume
  2020-01-23 11:19 ` [PATCH] i2c: tegra: Restore pinmux on system resume Wolfram Sang
@ 2020-01-23 15:10   ` Dmitry Osipenko
  0 siblings, 0 replies; 2+ messages in thread
From: Dmitry Osipenko @ 2020-01-23 15:10 UTC (permalink / raw)
  To: Wolfram Sang, Thierry Reding
  Cc: Jon Hunter, linux-i2c-u79uwXL29TY76Z2rM5mHXA,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA

23.01.2020 14:19, Wolfram Sang пишет:
> On Fri, Dec 13, 2019 at 02:44:17PM +0100, Thierry Reding wrote:
>> From: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
>>
>> 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-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> 
> 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.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-01-23 15:10 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20191213134417.222720-1-thierry.reding@gmail.com>
2020-01-23 11:19 ` [PATCH] i2c: tegra: Restore pinmux on system resume Wolfram Sang
2020-01-23 15:10   ` Dmitry Osipenko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox