In case the framebuffer size matches one of the cbvga video modes just use that mode number instead of 0x140.
Signed-off-by: Gerd Hoffmann kraxel@redhat.com --- vgasrc/cbvga.c | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/vgasrc/cbvga.c b/vgasrc/cbvga.c index 9ae97d5f51..fb68620067 100644 --- a/vgasrc/cbvga.c +++ b/vgasrc/cbvga.c @@ -260,6 +260,11 @@ cbvga_setup_modes(u64 addr, u8 bpp, u32 xlines, u32 ylines, u32 linelength) dprintf(3, "Removing mode %x\n", GET_GLOBAL(cbmode_g->mode)); SET_VGA(cbmode_g->mode, 0xffff); } + if ((GET_GLOBAL(cbmode_g->info.height) == ylines) + && (GET_GLOBAL(cbmode_g->info.width) == xlines) + && (GET_GLOBAL(cbmode_g->info.depth) == bpp)) { + SET_VGA(CBmode, GET_GLOBAL(cbmode_g->mode)); + } } }