All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] thunderbolt: Fix Thunderbolt 3 display flickering issue on 2nd hot plug onwards
@ 2023-07-11  7:27 Sanjay R Mehta
  2023-07-11 14:06 ` Greg KH
  0 siblings, 1 reply; 3+ messages in thread
From: Sanjay R Mehta @ 2023-07-11  7:27 UTC (permalink / raw)
  To: mika.westerberg, andreas.noever, michael.jamet, YehezkelShB
  Cc: linux-usb, Sanjay R Mehta, Sanath S

From: Sanjay R Mehta <sanju.mehta@amd.com>

Previously, on unplug events, the TMU mode was disabled first
followed by the Time Synchronization Handshake, irrespective of
whether the tb_switch_tmu_rate_write() API was successful or not.

However, this caused a problem with Thunderbolt 3 (TBT3)
devices, as the TSPacketInterval bits were always enabled by default,
leading the host router to assume that the device router's TMU was
already enabled and preventing it from initiating the Time
Synchronization Handshake. As a result, TBT3 monitors experienced
display flickering from the second hot plug onwards.

To address this issue, we have modified the code to only disable the
Time Synchronization Handshake during TMU disable if the
tb_switch_tmu_rate_write() function is successful. This ensures that
the TBT3 devices function correctly and eliminates the display
flickering issue.

Signed-off-by: Sanath S <Sanath.S@amd.com>
Signed-off-by: Sanjay R Mehta <sanju.mehta@amd.com>
---
 drivers/thunderbolt/tmu.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/thunderbolt/tmu.c b/drivers/thunderbolt/tmu.c
index 626aca3..49146f9 100644
--- a/drivers/thunderbolt/tmu.c
+++ b/drivers/thunderbolt/tmu.c
@@ -415,7 +415,9 @@ int tb_switch_tmu_disable(struct tb_switch *sw)
 		 * uni-directional mode and we don't want to change it's TMU
 		 * mode.
 		 */
-		tb_switch_tmu_rate_write(sw, TB_SWITCH_TMU_RATE_OFF);
+		ret = tb_switch_tmu_rate_write(sw, TB_SWITCH_TMU_RATE_OFF);
+		if (ret)
+			return ret;
 
 		tb_port_tmu_time_sync_disable(up);
 		ret = tb_port_tmu_time_sync_disable(down);
-- 
2.7.4


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

* Re: [PATCH] thunderbolt: Fix Thunderbolt 3 display flickering issue on 2nd hot plug onwards
  2023-07-11  7:27 [PATCH] thunderbolt: Fix Thunderbolt 3 display flickering issue on 2nd hot plug onwards Sanjay R Mehta
@ 2023-07-11 14:06 ` Greg KH
  2023-07-12  5:31   ` Sanjay R Mehta
  0 siblings, 1 reply; 3+ messages in thread
From: Greg KH @ 2023-07-11 14:06 UTC (permalink / raw)
  To: Sanjay R Mehta
  Cc: mika.westerberg, andreas.noever, michael.jamet, YehezkelShB,
	linux-usb, Sanath S

On Tue, Jul 11, 2023 at 02:27:50AM -0500, Sanjay R Mehta wrote:
> From: Sanjay R Mehta <sanju.mehta@amd.com>
> 
> Previously, on unplug events, the TMU mode was disabled first
> followed by the Time Synchronization Handshake, irrespective of
> whether the tb_switch_tmu_rate_write() API was successful or not.
> 
> However, this caused a problem with Thunderbolt 3 (TBT3)
> devices, as the TSPacketInterval bits were always enabled by default,
> leading the host router to assume that the device router's TMU was
> already enabled and preventing it from initiating the Time
> Synchronization Handshake. As a result, TBT3 monitors experienced
> display flickering from the second hot plug onwards.
> 
> To address this issue, we have modified the code to only disable the
> Time Synchronization Handshake during TMU disable if the
> tb_switch_tmu_rate_write() function is successful. This ensures that
> the TBT3 devices function correctly and eliminates the display
> flickering issue.
> 
> Signed-off-by: Sanath S <Sanath.S@amd.com>
> Signed-off-by: Sanjay R Mehta <sanju.mehta@amd.com>

If "Sanath S" authored this patch, then the From: line is incorrect.

If they did not, then the ordering here is incorrect.

Either way, this isn't correct at all, please fix.

thanks,

greg k-h

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

* Re: [PATCH] thunderbolt: Fix Thunderbolt 3 display flickering issue on 2nd hot plug onwards
  2023-07-11 14:06 ` Greg KH
@ 2023-07-12  5:31   ` Sanjay R Mehta
  0 siblings, 0 replies; 3+ messages in thread
From: Sanjay R Mehta @ 2023-07-12  5:31 UTC (permalink / raw)
  To: Greg KH, Sanjay R Mehta
  Cc: mika.westerberg, andreas.noever, michael.jamet, YehezkelShB,
	linux-usb, Sanath S



On 7/11/2023 7:36 PM, Greg KH wrote:
> On Tue, Jul 11, 2023 at 02:27:50AM -0500, Sanjay R Mehta wrote:
>> From: Sanjay R Mehta <sanju.mehta@amd.com>
>>
>> Previously, on unplug events, the TMU mode was disabled first
>> followed by the Time Synchronization Handshake, irrespective of
>> whether the tb_switch_tmu_rate_write() API was successful or not.
>>
>> However, this caused a problem with Thunderbolt 3 (TBT3)
>> devices, as the TSPacketInterval bits were always enabled by default,
>> leading the host router to assume that the device router's TMU was
>> already enabled and preventing it from initiating the Time
>> Synchronization Handshake. As a result, TBT3 monitors experienced
>> display flickering from the second hot plug onwards.
>>
>> To address this issue, we have modified the code to only disable the
>> Time Synchronization Handshake during TMU disable if the
>> tb_switch_tmu_rate_write() function is successful. This ensures that
>> the TBT3 devices function correctly and eliminates the display
>> flickering issue.
>>
>> Signed-off-by: Sanath S <Sanath.S@amd.com>
>> Signed-off-by: Sanjay R Mehta <sanju.mehta@amd.com>
> 
> If "Sanath S" authored this patch, then the From: line is incorrect.
> 
> If they did not, then the ordering here is incorrect.
> 
> Either way, this isn't correct at all, please fix.
> 
> thanks,
> 
Sure Greg. my bad. I'll fix and resend this patch.
> greg k-h

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

end of thread, other threads:[~2023-07-12  5:31 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-07-11  7:27 [PATCH] thunderbolt: Fix Thunderbolt 3 display flickering issue on 2nd hot plug onwards Sanjay R Mehta
2023-07-11 14:06 ` Greg KH
2023-07-12  5:31   ` Sanjay R Mehta

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.