[PATCH v2] drm/amd/display: Report non-DP display as disconnected without EDID

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

 



On 2018-08-02 04:06 AM, Michel Dänzer wrote:
> On 2018-08-01 09:51 PM, Harry Wentland wrote:
>> [Why]
>> Some boards seem to have a problem where HPD is high on HDMI even though
>> no display is connected. We don't want to report these as connected. DP
>> spec still requires us to report DP displays as connected when HPD is
>> high but we can't read the EDID in order to go to fail-safe mode.
>>
>> [How]
>> If connector_signal is not DP abort detection if we can't retrieve the
>> EDID.
>>
>> Bugzilla: https://bugs.freedesktop.org/107390
>> Bugzilla: https://bugs.freedesktop.org/106846
>> Cc: stable at vger.kernel.org
>> Signed-off-by: Harry Wentland <harry.wentland at amd.com>
>> Acked-by: Alex Deucher <alexander.deucher at amd.com>
>>
>> v2: Add Bugzilla and stable
>> ---
>>  drivers/gpu/drm/amd/display/dc/core/dc_link.c | 11 +++++++++++
>>  1 file changed, 11 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link.c b/drivers/gpu/drm/amd/display/dc/core/dc_link.c
>> index b180197a41e2..84f0fd15be4c 100644
>> --- a/drivers/gpu/drm/amd/display/dc/core/dc_link.c
>> +++ b/drivers/gpu/drm/amd/display/dc/core/dc_link.c
>> @@ -744,6 +744,17 @@ bool dc_link_detect(struct dc_link *link, enum dc_detect_reason reason)
>>  			break;
>>  		case EDID_NO_RESPONSE:
>>  			DC_LOG_ERROR("No EDID read.\n");
>> +
>> +			/*
>> +			 * Abort detection for non-DP connectors if we have
>> +			 * no EDID
>> +			 *
>> +			 * DP needs to report as connected if HDP is high
>> +			 * even if we have no EDID in order to go to
>> +			 * fail-safe mode
>> +			 */
>> +			if (!dc_is_dp_signal(link->connector_signal))
>> +				return false;
>>  		default:
>>  			break;
>>  		}
>>
> 
> Could this be problematic with VGA connectors? AFAIR e.g. KVM switches
> can cause trouble with retrieving EDID, or it could just be an old CRT
> with no EDID in the first place.
> 

Good point, although DC doesn't currently support VGA. I'll send another patch anyways in case anyone enables VGA in the future as this would be easily missed.

Harry

> Might it make sense to limit this to HDMI & DVI?
> 
> 


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

  Powered by Linux