Acked-by: Alex Deucher <alexander.deucher@xxxxxxx> On Thu, Jun 16, 2022 at 11:48 AM Limonciello, Mario <Mario.Limonciello@xxxxxxx> wrote: > > [Public] > > + people associated with original patch being reverted for comments > > > -----Original Message----- > > From: Limonciello, Mario <Mario.Limonciello@xxxxxxx> > > Sent: Wednesday, June 15, 2022 17:30 > > To: amd-gfx@xxxxxxxxxxxxxxxxxxxxx > > Cc: Limonciello, Mario <Mario.Limonciello@xxxxxxx>; Aaron Ma > > <aaron.ma@xxxxxxxxxxxxx> > > Subject: [PATCH] drm/amd: Revert "drm/amd/display: keep eDP Vdd on > > when eDP stream is already enabled" > > > > A variety of Lenovo machines with Rembrandt APUs and OLED panels have > > stopped showing the display at login. This behavior clears up after > > leaving it idle and moving the mouse or touching keyboard. > > > > It was bisected to be caused by commit 559e2655220d ("drm/amd/display: > > keep eDP Vdd on when eDP stream is already enabled"). Revert this commit > > to fix the issue. > > > > Link: https://gitlab.freedesktop.org/drm/amd/-/issues/2047 > > Reported-by: Aaron Ma <aaron.ma@xxxxxxxxxxxxx> > > Fixes: 559e2655220d ("drm/amd/display: keep eDP Vdd on when eDP stream > > is already enabled") > > Signed-off-by: Mario Limonciello <mario.limonciello@xxxxxxx> > > --- > > .../display/dc/dce110/dce110_hw_sequencer.c | 24 ++----------------- > > 1 file changed, 2 insertions(+), 22 deletions(-) > > > > diff --git > > a/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c > > b/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c > > index 7eff7811769d..5f2afa5b4814 100644 > > --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c > > +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c > > @@ -1766,29 +1766,9 @@ void dce110_enable_accelerated_mode(struct dc > > *dc, struct dc_state *context) > > break; > > } > > } > > - > > - /* > > - * TO-DO: So far the code logic below only addresses single > > eDP case. > > - * For dual eDP case, there are a few things that need to be > > - * implemented first: > > - * > > - * 1. Change the fastboot logic above, so eDP link[0 or 1]'s > > - * stream[0 or 1] will all be checked. > > - * > > - * 2. Change keep_edp_vdd_on to an array, and maintain > > keep_edp_vdd_on > > - * for each eDP. > > - * > > - * Once above 2 things are completed, we can then change > > the logic below > > - * correspondingly, so dual eDP case will be fully covered. > > - */ > > - > > - // We are trying to enable eDP, don't power down VDD if > > eDP stream is existing > > - if ((edp_stream_num == 1 && edp_streams[0] != NULL) || > > can_apply_edp_fast_boot) { > > + // We are trying to enable eDP, don't power down VDD > > + if (can_apply_edp_fast_boot) > > keep_edp_vdd_on = true; > > - DC_LOG_EVENT_LINK_TRAINING("Keep eDP Vdd > > on\n"); > > - } else { > > - DC_LOG_EVENT_LINK_TRAINING("No eDP stream > > enabled, turn eDP Vdd off\n"); > > - } > > } > > > > // Check seamless boot support > > -- > > 2.34.1