vgabios: Fix generating modes list for static_functionality
Accessing the data in the vga_modes array requires using GET_GLOBAL(),
and the bits set in the bit array should correspond to the modes, not
the indexes in vga_modes.
With this change the modes calculated matches the expected value of
0xfe0ff.
Fixes: 12900b1a24
("vgabios: Fill in available legacy modes in video_func_static at runtime")
Signed-off-by: Steven Price <steven@ecrips.co.uk>
This commit is contained in:
parent
2424e4c04a
commit
62a1429ec1
|
@ -419,9 +419,9 @@ stdvga_build_video_param(void)
|
|||
// Fill available legacy modes in video_func_static table
|
||||
u32 modes = 0;
|
||||
for (i = 0; i < ARRAY_SIZE(vga_modes); i++) {
|
||||
u16 mode = vga_modes[i].mode;
|
||||
u16 mode = GET_GLOBAL(vga_modes[i].mode);
|
||||
if (mode <= 0x13)
|
||||
modes |= 1<<i;
|
||||
modes |= 1<<mode;
|
||||
}
|
||||
SET_VGA(static_functionality.modes, modes);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue