nb/intel/gm45: Don't allow too low values for gfx_uma_size

Too low gfx_uma_size can result in problems if the framebuffer
does not fit.

This partially reverts: 7afcfe0 "gm45: enable setting all vram sizes
from cmos"

Change-Id: I485d24198cb784db5d2cfce0a8646e861a4a1695
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/20194
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Rudolph <siro@das-labor.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
This commit is contained in:
Arthur Heymans 2017-06-13 20:57:05 +02:00 committed by Nico Huber
parent 660de34bbf
commit d65ff22988
4 changed files with 6 additions and 19 deletions

View file

@ -125,10 +125,6 @@ enumerations
9 1 Primary
10 0 AHCI
10 1 Compatible
11 0 1M
11 1 4M
11 2 8M
11 3 16M
11 4 32M
11 5 48M
11 6 64M

View file

@ -123,10 +123,6 @@ enumerations
9 1 Primary
10 0 AHCI
10 1 Compatible
11 0 1M
11 1 4M
11 2 8M
11 3 16M
11 4 32M
11 5 48M
11 6 64M

View file

@ -112,10 +112,6 @@ enumerations
8 1 Yes
9 0 AHCI
9 1 Compatible
11 0 1M
11 1 4M
11 2 8M
11 3 16M
11 4 32M
11 5 48M
11 6 64M

View file

@ -153,17 +153,16 @@ void igd_compute_ggc(sysinfo_t *const sysinfo)
if (!sysinfo->enable_igd || (capid & (1 << (33 - 32))))
sysinfo->ggc = 0x0002;
else {
u8 gfxsize;
/* 4 for 32MB, default if not set in cmos */
u8 gfxsize = 4;
/* Graphics Stolen Memory: 2MB GTT (0x0300) when VT-d disabled,
2MB GTT + 2MB shadow GTT (0x0b00) else. */
if (get_option(&gfxsize, "gfx_uma_size") != CB_SUCCESS) {
/* 4 for 32MB, default if not set in cmos */
gfxsize = 4;
}
get_option(&gfxsize, "gfx_uma_size");
/* Handle invalid cmos settings */
if (gfxsize > 12)
gfxsize = 4;
/* Only allow settings between 32MB and 352MB */
gfxsize = MIN(MAX(gfxsize, 4), 12);
sysinfo->ggc = 0x0300 | ((gfxsize + 1) << 4);
if (!(capid & (1 << (48 - 32))))
sysinfo->ggc |= 0x0800;