Re: [PATCH] drm/amd/display: eDP fast bootup does not work for pre-raven asic

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

 





On 2019-01-15 5:42 a.m., Paul Menzel wrote:
> Dear Hersen, dear Leo,
> 
> 
> Some nitpicks. Could you not put the problem statement in the commit
> message summary, but the solution? For example:
> 
>> Fix eDP fast bootup for pre-raven asics
> 
> On 01/14/19 23:36, sunpeng.li@xxxxxxx wrote:
>> From: hersen wu <hersenxs.wu@xxxxxxx>
>>
>> [Why] bios will light up eDP before sw driver loaded. sw driver will
> 
> *is* loaded
> 
>> check if eDP lighted up by bios by reading BIOS_SCRATCH_3. If yes,
>> sw driver will not power down eDP power, phy to save time.
>> definition of BIOS_SCRATCH_3 are missed for pre-raven asic. this
> 
> are *missing*
> 
>> cuase eDP fast boot up not work. for some eDP panel, even AMD dp tx
> 
> *causes* … *to* not work.
> 
>> send NoVideoStream_flag =1 and dpcd 0x600=2, eDP rx may not handle
> 
> send*s*?

Will be correcting these on submission, thanks!

> 
>> properly. this may cause short period flash on screen.
> 
> Is that in the eDP specification?
> 
>> [How] add definition of BIOS_SCRATCH_3 for all asic
> 
> How was this tested?

Hersen may be able to provide more details on the specs. AFAIK it was
tested on a stoney laptop where we were able to reproduce the issue. It
was fixed after this.

> 
>> CC: Harry Wentland <harry.wentland@xxxxxxx>
>> Signed-off-by: hersen wu <hersenxs.wu@xxxxxxx>
>> Reviewed-by: Charlene Liu <Charlene.Liu@xxxxxxx>
>> Acked-by: Yongqiang Sun <yongqiang.sun@xxxxxxx>
>> Acked-by: Leo Li <sunpeng.li@xxxxxxx>
>> ---
>>   drivers/gpu/drm/amd/display/dc/bios/bios_parser_helper.c | 3 +--
>>   drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c  | 2 ++
>>   drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c  | 2 ++
>>   drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c  | 2 ++
>>   drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c  | 1 +
>>   drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c    | 2 ++
>>   6 files changed, 10 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/display/dc/bios/bios_parser_helper.c b/drivers/gpu/drm/amd/display/dc/bios/bios_parser_helper.c
>> index fdda8aa..d8275ceb 100644
>> --- a/drivers/gpu/drm/amd/display/dc/bios/bios_parser_helper.c
>> +++ b/drivers/gpu/drm/amd/display/dc/bios/bios_parser_helper.c
>> @@ -83,8 +83,7 @@ uint32_t bios_get_vga_enabled_displays(
>>   {
>>   	uint32_t active_disp = 1;
>>   
>> -	if (bios->regs->BIOS_SCRATCH_3) /*follow up with other asic, todo*/
>> -		active_disp = REG_READ(BIOS_SCRATCH_3) & 0XFFFF;
>> +	active_disp = REG_READ(BIOS_SCRATCH_3) & 0XFFFF;
> 
> So why is the if statement removed?

The SCRATCH_3 register is defined for all ASICs now, so there's no need
to check.

Thanks,
Leo

> 
>>   	return active_disp;
>>   }
> 
> […]
> 
> 
> Kind regards,
> 
> Paul
> 
> 
> _______________________________________________
> amd-gfx mailing list
> amd-gfx@xxxxxxxxxxxxxxxxxxxxx
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
> 
_______________________________________________
amd-gfx mailing list
amd-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/amd-gfx




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux