Skip to content

Commit

Permalink
drm/amd/display: Fix Vega10 lightup on S3 resume
Browse files Browse the repository at this point in the history
[Why]
There have been a few reports of Vega10 display remaining blank
after S3 resume. The regression is caused by workaround for mode
change on Vega10 - skip set_bandwidth if stream count is 0.
As a result we skipped dispclk reset on suspend, thus on resume
we may skip the clock update assuming it hasn't been changed.
On some systems it causes display blank or 'out of range'.

[How]
Revert "drm/amd/display: Fix Vega10 black screen after mode change"
Verified that it hadn't cause mode change regression.

Signed-off-by: Roman Li <[email protected]>
Reviewed-by: Sun peng Li <[email protected]>
Acked-by: Leo Li <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
  • Loading branch information
Roman Li authored and alexdeucher committed Sep 27, 2018
1 parent 61ea6f5 commit 599760d
Show file tree
Hide file tree
Showing 3 changed files with 1 addition and 18 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2560,7 +2560,7 @@ static void pplib_apply_display_requirements(
dc->prev_display_config = *pp_display_cfg;
}

void dce110_set_bandwidth(
static void dce110_set_bandwidth(
struct dc *dc,
struct dc_state *context,
bool decrease_allowed)
Expand Down
5 changes: 0 additions & 5 deletions drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.h
Original file line number Diff line number Diff line change
Expand Up @@ -68,11 +68,6 @@ void dce110_fill_display_configs(
const struct dc_state *context,
struct dm_pp_display_configuration *pp_display_cfg);

void dce110_set_bandwidth(
struct dc *dc,
struct dc_state *context,
bool decrease_allowed);

uint32_t dce110_get_min_vblank_time_us(const struct dc_state *context);

void dp_receiver_power_ctrl(struct dc_link *link, bool on);
Expand Down
12 changes: 0 additions & 12 deletions drivers/gpu/drm/amd/display/dc/dce120/dce120_hw_sequencer.c
Original file line number Diff line number Diff line change
Expand Up @@ -244,17 +244,6 @@ static void dce120_update_dchub(
dh_data->dchub_info_valid = false;
}

static void dce120_set_bandwidth(
struct dc *dc,
struct dc_state *context,
bool decrease_allowed)
{
if (context->stream_count <= 0)
return;

dce110_set_bandwidth(dc, context, decrease_allowed);
}

void dce120_hw_sequencer_construct(struct dc *dc)
{
/* All registers used by dce11.2 match those in dce11 in offset and
Expand All @@ -263,6 +252,5 @@ void dce120_hw_sequencer_construct(struct dc *dc)
dce110_hw_sequencer_construct(dc);
dc->hwss.enable_display_power_gating = dce120_enable_display_power_gating;
dc->hwss.update_dchub = dce120_update_dchub;
dc->hwss.set_bandwidth = dce120_set_bandwidth;
}

0 comments on commit 599760d

Please sign in to comment.