[coreboot-gerrit] Patch set updated for coreboot: nb/gm45: refactor IGD vram decoding

Arthur Heymans (arthur@aheymans.xyz) gerrit at coreboot.org
Mon Nov 14 19:24:00 CET 2016


Arthur Heymans (arthur at aheymans.xyz) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/17405

-gerrit

commit 7dc24682589be6893d55961b148c92c76e7f35ca
Author: Arthur Heymans <arthur at aheymans.xyz>
Date:   Sat Nov 12 20:13:07 2016 +0100

    nb/gm45: refactor IGD vram decoding
    
    This is more consistent with other Intel GMCH code.
    
    Change-Id: I7bfaa79b9031e2dcc5879a607cadacbdd22ebde7
    Signed-off-by: Arthur Heymans <arthur at aheymans.xyz>
---
 src/northbridge/intel/gm45/ram_calc.c | 36 ++++++-----------------------------
 1 file changed, 6 insertions(+), 30 deletions(-)

diff --git a/src/northbridge/intel/gm45/ram_calc.c b/src/northbridge/intel/gm45/ram_calc.c
index 92f1a7f..8212d18 100644
--- a/src/northbridge/intel/gm45/ram_calc.c
+++ b/src/northbridge/intel/gm45/ram_calc.c
@@ -28,37 +28,13 @@
 /** Decodes used Graphics Mode Select (GMS) to kilobytes. */
 u32 decode_igd_memory_size(const u32 gms)
 {
-	switch (gms) {
-	case 1:
-		return   1 << 10;
-	case 2:
-		return   4 << 10; /* guessed */
-	case 3:
-		return   8 << 10; /* guessed */
-	case 4:
-		return  16 << 10;
-	case 5:
-		return  32 << 10;
-	case 6:
-		return  48 << 10;
-	case 7:
-		return  64 << 10;
-	case 8:
-		return 128 << 10;
-	case 9:
-		return 256 << 10;
-	case 10:
-		return  96 << 10;
-	case 11:
-		return 160 << 10;
-	case 12:
-		return 224 << 10;
-	case 13:
-		return 352 << 10;
-	default:
+	static const u16 ggc2uma[] = { 0, 1, 4, 8, 16, 32, 48, 64, 128, 256,
+				       96, 160, 224, 352 };
+
+	if (gms > ARRAY_SIZE(ggc2uma))
 		die("Bad Graphics Mode Select (GMS) setting.\n");
-		return 0;
-	}
+
+	return ggc2uma[gms] << 10;
 }
 
 /** Decodes used Graphics Stolen Memory (GSM) to kilobytes. */



More information about the coreboot-gerrit mailing list