Revert "drm/amd/display: Disable DWB frame capture to emulate oneshot"
This reverts commit 77a66faaccc0455fe30e326e9a997aec8d0abed4. [WHY & HOW] The writeback series cause a regression in thunderbolt display. Signed-off-by: Alex Hung <alex.hung@amd.com> Reviewed-by: Harry Wentland <harry.wentland@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
60e034f286
commit
7086af68fa
@ -592,20 +592,8 @@ static void dm_crtc_high_irq(void *interrupt_params)
|
||||
list_entry);
|
||||
spin_unlock_irqrestore(&acrtc->wb_conn->job_lock, flags);
|
||||
|
||||
if (job) {
|
||||
unsigned int v_total, refresh_hz;
|
||||
struct dc_stream_state *stream = acrtc->dm_irq_params.stream;
|
||||
|
||||
v_total = stream->adjust.v_total_max ?
|
||||
stream->adjust.v_total_max : stream->timing.v_total;
|
||||
refresh_hz = div_u64((uint64_t) stream->timing.pix_clk_100hz *
|
||||
100LL, (v_total * stream->timing.h_total));
|
||||
mdelay(1000 / refresh_hz);
|
||||
|
||||
if (job)
|
||||
drm_writeback_signal_completion(acrtc->wb_conn, 0);
|
||||
dc_stream_fc_disable_writeback(adev->dm.dc,
|
||||
acrtc->dm_irq_params.stream, 0);
|
||||
}
|
||||
} else
|
||||
DRM_ERROR("%s: no amdgpu_crtc wb_conn\n", __func__);
|
||||
acrtc->wb_pending = false;
|
||||
|
@ -489,33 +489,6 @@ bool dc_stream_add_writeback(struct dc *dc,
|
||||
return true;
|
||||
}
|
||||
|
||||
bool dc_stream_fc_disable_writeback(struct dc *dc,
|
||||
struct dc_stream_state *stream,
|
||||
uint32_t dwb_pipe_inst)
|
||||
{
|
||||
struct dwbc *dwb = dc->res_pool->dwbc[dwb_pipe_inst];
|
||||
|
||||
if (stream == NULL) {
|
||||
dm_error("DC: dc_stream is NULL!\n");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (dwb_pipe_inst >= MAX_DWB_PIPES) {
|
||||
dm_error("DC: writeback pipe is invalid!\n");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (stream->num_wb_info > MAX_DWB_PIPES) {
|
||||
dm_error("DC: num_wb_info is invalid!\n");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (dwb->funcs->set_fc_enable)
|
||||
dwb->funcs->set_fc_enable(dwb, DWB_FRAME_CAPTURE_DISABLE);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool dc_stream_remove_writeback(struct dc *dc,
|
||||
struct dc_stream_state *stream,
|
||||
uint32_t dwb_pipe_inst)
|
||||
|
@ -454,10 +454,6 @@ bool dc_stream_add_writeback(struct dc *dc,
|
||||
struct dc_stream_state *stream,
|
||||
struct dc_writeback_info *wb_info);
|
||||
|
||||
bool dc_stream_fc_disable_writeback(struct dc *dc,
|
||||
struct dc_stream_state *stream,
|
||||
uint32_t dwb_pipe_inst);
|
||||
|
||||
bool dc_stream_remove_writeback(struct dc *dc,
|
||||
struct dc_stream_state *stream,
|
||||
uint32_t dwb_pipe_inst);
|
||||
|
Loading…
x
Reference in New Issue
Block a user