[coreboot-gerrit] New patch to review for coreboot: c1c3ae6 qemu/videoinit: Set required fields in fake EDID

Vladimir Serbinenko (phcoder@gmail.com) gerrit at coreboot.org
Mon Dec 16 23:21:13 CET 2013


Vladimir Serbinenko (phcoder at gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/4535

-gerrit

commit c1c3ae618664d7ad5c5f0d0658e98e4f3b0f9d83
Author: Vladimir Serbinenko <phcoder at gmail.com>
Date:   Mon Dec 16 23:19:01 2013 +0100

    qemu/videoinit: Set required fields in fake EDID
    
    x_resolution, y_resolution and bytes_per_line were not inited. Without them
    coreboot sweared that screen is 1108630x1142817 and payload tried to draw on
    such a big screen.
    
    Change-Id: I0d0277a20c7e1976c27af4a57651ab2be0f9c5d7
    Signed-off-by: Vladimir Serbinenko <phcoder at gmail.com>
---
 src/drivers/emulation/qemu/bochs.c  | 3 +++
 src/drivers/emulation/qemu/cirrus.c | 3 +++
 2 files changed, 6 insertions(+)

diff --git a/src/drivers/emulation/qemu/bochs.c b/src/drivers/emulation/qemu/bochs.c
index b4acfef..1e7986c 100644
--- a/src/drivers/emulation/qemu/bochs.c
+++ b/src/drivers/emulation/qemu/bochs.c
@@ -106,6 +106,9 @@ static void bochs_init(device_t dev)
 	/* setup coreboot framebuffer */
 	edid.ha = width;
 	edid.va = height;
+	edid.x_resolution = width;
+	edid.y_resolution = height;
+	edid.bytes_per_line = width * 4;
 	edid.bpp = 32;
 	set_vbe_mode_info_valid(&edid, addr);
 }
diff --git a/src/drivers/emulation/qemu/cirrus.c b/src/drivers/emulation/qemu/cirrus.c
index 9f79d31..b4928fe 100644
--- a/src/drivers/emulation/qemu/cirrus.c
+++ b/src/drivers/emulation/qemu/cirrus.c
@@ -330,6 +330,9 @@ static void cirrus_init(device_t dev)
 	struct edid edid;
 	edid.ha = width;
 	edid.va = height;
+	edid.x_resolution = width;
+	edid.y_resolution = height;
+	edid.bytes_per_line = width * 4;
 	edid.bpp = 32;
 	set_vbe_mode_info_valid(&edid, addr);
 }



More information about the coreboot-gerrit mailing list