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@gmail.com> Reviewed-on: http://review.coreboot.org/4535 Tested-by: build bot (Jenkins) Reviewed-by: Alexandru Gagniuc <mr.nuke.me@gmail.com> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
This commit is contained in:
parent
86545f7978
commit
dd9945bdc7
|
@ -106,6 +106,9 @@ static void bochs_init(device_t dev)
|
||||||
/* setup coreboot framebuffer */
|
/* setup coreboot framebuffer */
|
||||||
edid.ha = width;
|
edid.ha = width;
|
||||||
edid.va = height;
|
edid.va = height;
|
||||||
|
edid.x_resolution = width;
|
||||||
|
edid.y_resolution = height;
|
||||||
|
edid.bytes_per_line = width * 4;
|
||||||
edid.bpp = 32;
|
edid.bpp = 32;
|
||||||
set_vbe_mode_info_valid(&edid, addr);
|
set_vbe_mode_info_valid(&edid, addr);
|
||||||
}
|
}
|
||||||
|
|
|
@ -330,6 +330,9 @@ static void cirrus_init(device_t dev)
|
||||||
struct edid edid;
|
struct edid edid;
|
||||||
edid.ha = width;
|
edid.ha = width;
|
||||||
edid.va = height;
|
edid.va = height;
|
||||||
|
edid.x_resolution = width;
|
||||||
|
edid.y_resolution = height;
|
||||||
|
edid.bytes_per_line = width * 4;
|
||||||
edid.bpp = 32;
|
edid.bpp = 32;
|
||||||
set_vbe_mode_info_valid(&edid, addr);
|
set_vbe_mode_info_valid(&edid, addr);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue