[PATCH v3] drm/bochs: add edid present check

Oleksandr Andrushchenko andr2000 at gmail.com
Thu Dec 20 11:26:44 UTC 2018


On 12/20/18 12:51 PM, Daniel Vetter wrote:
> On Thu, Dec 20, 2018 at 11:11:21AM +0100, Gerd Hoffmann wrote:
>> Check header before trying to read the complete edid blob, to avoid the
>> log being spammed in case qemu has no edid support (old qemu or edid
>> support turned off).
>>
>> Fixes: 01f23459cf drm/bochs: add edid support.
>> Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
> Reviewed-by: Daniel Vetter <daniel.vetter at ffwll.ch>
Reviewed-by: Oleksandr Andrushchenko <oleksandr_andrushchenko at epam.com>
>
>> ---
>>   drivers/gpu/drm/bochs/bochs_hw.c | 7 +++++++
>>   1 file changed, 7 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/bochs/bochs_hw.c b/drivers/gpu/drm/bochs/bochs_hw.c
>> index c90a0d492f..d0b4e1cee8 100644
>> --- a/drivers/gpu/drm/bochs/bochs_hw.c
>> +++ b/drivers/gpu/drm/bochs/bochs_hw.c
>> @@ -86,9 +86,16 @@ static int bochs_get_edid_block(void *data, u8 *buf,
>>   
>>   int bochs_hw_load_edid(struct bochs_device *bochs)
>>   {
>> +	u8 header[8];
>> +
>>   	if (!bochs->mmio)
>>   		return -1;
>>   
>> +	/* check header to detect whenever edid support is enabled in qemu */
>> +	bochs_get_edid_block(bochs, header, 0, ARRAY_SIZE(header));
>> +	if (drm_edid_header_is_valid(header) != 8)
>> +		return -1;
>> +
>>   	kfree(bochs->edid);
>>   	bochs->edid = drm_do_get_edid(&bochs->connector,
>>   				      bochs_get_edid_block, bochs);
>> -- 
>> 2.9.3
>>



More information about the dri-devel mailing list