[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20181220065001.9594-1-kraxel@redhat.com>
Date: Thu, 20 Dec 2018 07:50:01 +0100
From: Gerd Hoffmann <kraxel@...hat.com>
To: dri-devel@...ts.freedesktop.org
Cc: andr2000@...il.com, Gerd Hoffmann <kraxel@...hat.com>,
David Airlie <airlied@...ux.ie>,
virtualization@...ts.linux-foundation.org (open list:DRM DRIVER FOR
BOCHS VIRTUAL GPU), linux-kernel@...r.kernel.org (open list)
Subject: [PATCH v2] drm/bochs: add edid present check
Check first two header bytes before trying to read the edid blob,
to avoid the log being spammed in case qemu has no edid support (old
qemu or edid turned off).
Fixes: 01f23459cf drm/bochs: add edid support.
Signed-off-by: Gerd Hoffmann <kraxel@...hat.com>
---
drivers/gpu/drm/bochs/bochs_hw.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/gpu/drm/bochs/bochs_hw.c b/drivers/gpu/drm/bochs/bochs_hw.c
index c90a0d492f..e1f8ffce00 100644
--- a/drivers/gpu/drm/bochs/bochs_hw.c
+++ b/drivers/gpu/drm/bochs/bochs_hw.c
@@ -89,6 +89,14 @@ int bochs_hw_load_edid(struct bochs_device *bochs)
if (!bochs->mmio)
return -1;
+ /*
+ * Check first two EDID blob header bytes to figure whenever
+ * edid support is enabled in qemu.
+ */
+ if (readb(bochs->mmio + 0) != 0x00 ||
+ readb(bochs->mmio + 1) != 0xff)
+ return -1;
+
kfree(bochs->edid);
bochs->edid = drm_do_get_edid(&bochs->connector,
bochs_get_edid_block, bochs);
--
2.9.3
Powered by blists - more mailing lists