[PATCH v2] drm/amd/display: Fix randomly flicking on overlay with enabled ABM

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: "Yipeng Chen (Jasber)" <yipeng.chen@xxxxxxx>

[Why]
Enabled ABM (level != 0) would raise short pulse irq DC_IRQ_SOURCE_HPD1RX
randomly with PSR error LINK_CRC_ERROR. Actually there is no hot plugging
on EDP panel. After correcting CRC error, there is no need to send drm
hotplug event.

[How]
Returning false would skip doing hot-plug when handle_hpd_irq_psr_sink()
handled irq. Hot-plug process causes visible flicking on overlay.

Signed-off-by: Yipeng Chen (Jasber) <yipeng.chen@xxxxxxx>
Reviewed-by: Roman Li <Roman.Li@xxxxxxx>
Reviewed-by: Anthony Koo <Anthony.Koo@xxxxxxx>
---
 drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c b/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c
index 1e4794e2825c..9b9fbe5e9bd4 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c
@@ -3007,7 +3007,7 @@ bool dc_link_handle_hpd_rx_irq(struct dc_link *link, union hpd_irq_data *out_hpd
 
 	if (handle_hpd_irq_psr_sink(link))
 		/* PSR-related error was detected and handled */
-		return true;
+		return false;
 
 	/* If PSR-related error handled, Main link may be off,
 	 * so do not handle as a normal sink status change interrupt.
-- 
2.25.1




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux