[coreboot-gerrit] Patch set updated for coreboot: c88b608 sandy/ivybridge: Make UMA size configurable.

Vladimir Serbinenko (phcoder@gmail.com) gerrit at coreboot.org
Sun Aug 3 04:52:04 CEST 2014


Vladimir Serbinenko (phcoder at gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/6470

-gerrit

commit c88b608fa3d99a65988388f4125dd0f8f827435a
Author: Vladimir Serbinenko <phcoder at gmail.com>
Date:   Sun Aug 3 01:59:38 2014 +0200

    sandy/ivybridge: Make UMA size configurable.
    
    Change-Id: I9aa3652d1b92cece01d024e19bdc065797896001
    Signed-off-by: Vladimir Serbinenko <phcoder at gmail.com>
---
 src/mainboard/google/butterfly/cmos.layout     | 13 ++++++++++++-
 src/mainboard/google/link/cmos.layout          | 13 ++++++++++++-
 src/mainboard/google/parrot/cmos.layout        | 13 ++++++++++++-
 src/mainboard/google/stout/cmos.layout         | 13 ++++++++++++-
 src/mainboard/intel/emeraldlake2/cmos.layout   | 14 +++++++++++++-
 src/mainboard/kontron/ktqm77/cmos.layout       | 12 +++++++++++-
 src/mainboard/lenovo/t520/cmos.layout          | 12 +++++++++++-
 src/mainboard/lenovo/t530/cmos.layout          | 12 +++++++++++-
 src/mainboard/lenovo/x230/cmos.layout          | 13 ++++++++++++-
 src/mainboard/samsung/lumpy/cmos.layout        | 14 +++++++++++++-
 src/mainboard/samsung/stumpy/cmos.layout       | 13 ++++++++++++-
 src/northbridge/intel/sandybridge/early_init.c |  9 +++++++--
 12 files changed, 138 insertions(+), 13 deletions(-)

diff --git a/src/mainboard/google/butterfly/cmos.layout b/src/mainboard/google/butterfly/cmos.layout
index 8270212..da6f114 100644
--- a/src/mainboard/google/butterfly/cmos.layout
+++ b/src/mainboard/google/butterfly/cmos.layout
@@ -93,7 +93,11 @@ entries
 # coreboot config options: bootloader
 #Used by ChromeOS:
 416        128       r        0        vbnv
-#544        440       r       0        unused
+
+# coreboot config options: northbridge
+544         3        e      11        gfx_uma_size
+
+#547        437       r       0        unused
 
 # SandyBridge MRC Scrambler Seed values
 896         32        r       0        mrc_scrambler_seed
@@ -137,6 +141,13 @@ enumerations
 7     2     Keep
 8     0     AHCI
 8     1     Compatible
+11    0     32M
+11    1     64M
+11    2	    96M
+11    3	    128M
+11    4	    160M
+11    5	    192M
+11    6	    224M
 # -----------------------------------------------------------------
 checksums
 
diff --git a/src/mainboard/google/link/cmos.layout b/src/mainboard/google/link/cmos.layout
index 2dfa156..1993be7 100644
--- a/src/mainboard/google/link/cmos.layout
+++ b/src/mainboard/google/link/cmos.layout
@@ -91,7 +91,11 @@ entries
 # coreboot config options: bootloader
 #Used by ChromeOS:
 416        128       r        0        vbnv
-#544        440       r       0        unused
+
+# coreboot config options: northbridge
+544         3        e      11        gfx_uma_size
+
+#547        437       r       0        unused
 
 # SandyBridge MRC Scrambler Seed values
 896         32        r       0        mrc_scrambler_seed
@@ -134,6 +138,13 @@ enumerations
 7     2     Keep
 8     0     AHCI
 8     1     Compatible
+11    0     32M
+11    1     64M
+11    2	    96M
+11    3	    128M
+11    4	    160M
+11    5	    192M
+11    6	    224M
 # -----------------------------------------------------------------
 checksums
 
diff --git a/src/mainboard/google/parrot/cmos.layout b/src/mainboard/google/parrot/cmos.layout
index 2dfa156..1993be7 100644
--- a/src/mainboard/google/parrot/cmos.layout
+++ b/src/mainboard/google/parrot/cmos.layout
@@ -91,7 +91,11 @@ entries
 # coreboot config options: bootloader
 #Used by ChromeOS:
 416        128       r        0        vbnv
-#544        440       r       0        unused
+
+# coreboot config options: northbridge
+544         3        e      11        gfx_uma_size
+
+#547        437       r       0        unused
 
 # SandyBridge MRC Scrambler Seed values
 896         32        r       0        mrc_scrambler_seed
@@ -134,6 +138,13 @@ enumerations
 7     2     Keep
 8     0     AHCI
 8     1     Compatible
+11    0     32M
+11    1     64M
+11    2	    96M
+11    3	    128M
+11    4	    160M
+11    5	    192M
+11    6	    224M
 # -----------------------------------------------------------------
 checksums
 
diff --git a/src/mainboard/google/stout/cmos.layout b/src/mainboard/google/stout/cmos.layout
index 2dfa156..1993be7 100644
--- a/src/mainboard/google/stout/cmos.layout
+++ b/src/mainboard/google/stout/cmos.layout
@@ -91,7 +91,11 @@ entries
 # coreboot config options: bootloader
 #Used by ChromeOS:
 416        128       r        0        vbnv
-#544        440       r       0        unused
+
+# coreboot config options: northbridge
+544         3        e      11        gfx_uma_size
+
+#547        437       r       0        unused
 
 # SandyBridge MRC Scrambler Seed values
 896         32        r       0        mrc_scrambler_seed
@@ -134,6 +138,13 @@ enumerations
 7     2     Keep
 8     0     AHCI
 8     1     Compatible
+11    0     32M
+11    1     64M
+11    2	    96M
+11    3	    128M
+11    4	    160M
+11    5	    192M
+11    6	    224M
 # -----------------------------------------------------------------
 checksums
 
diff --git a/src/mainboard/intel/emeraldlake2/cmos.layout b/src/mainboard/intel/emeraldlake2/cmos.layout
index 2dfa156..711ef4d 100644
--- a/src/mainboard/intel/emeraldlake2/cmos.layout
+++ b/src/mainboard/intel/emeraldlake2/cmos.layout
@@ -91,7 +91,11 @@ entries
 # coreboot config options: bootloader
 #Used by ChromeOS:
 416        128       r        0        vbnv
-#544        440       r       0        unused
+
+# coreboot config options: northbridge
+544         3        e      11        gfx_uma_size
+
+#547        437       r       0        unused
 
 # SandyBridge MRC Scrambler Seed values
 896         32        r       0        mrc_scrambler_seed
@@ -134,6 +138,14 @@ enumerations
 7     2     Keep
 8     0     AHCI
 8     1     Compatible
+11    0     32M
+11    1     64M
+11    2	    96M
+11    3	    128M
+11    4	    160M
+11    5	    192M
+11    6	    224M
+
 # -----------------------------------------------------------------
 checksums
 
diff --git a/src/mainboard/kontron/ktqm77/cmos.layout b/src/mainboard/kontron/ktqm77/cmos.layout
index 245b47e..621d958 100644
--- a/src/mainboard/kontron/ktqm77/cmos.layout
+++ b/src/mainboard/kontron/ktqm77/cmos.layout
@@ -80,7 +80,9 @@ entries
 
 # coreboot config options: cpu
 400          1       e       2        hyper_threading
-#401          7       r       0        unused
+401         3        e      12        gfx_uma_size
+
+#404          4       r       0        unused
 
 # coreboot config options: southbridge
 408          1       e       1        nmi
@@ -165,6 +167,14 @@ enumerations
 10    4     LM75 at 9e
 11    0     AHCI
 11    1     Compatible
+12    0     32M
+12    1     64M
+12    2	    96M
+12    3	    128M
+12    4	    160M
+12    5	    192M
+12    6	    224M
+
 # -----------------------------------------------------------------
 checksums
 
diff --git a/src/mainboard/lenovo/t520/cmos.layout b/src/mainboard/lenovo/t520/cmos.layout
index 50aa5f3..825317f 100644
--- a/src/mainboard/lenovo/t520/cmos.layout
+++ b/src/mainboard/lenovo/t520/cmos.layout
@@ -100,8 +100,11 @@ entries
 
 # coreboot config options: cpu
 424          1       e       2        hyper_threading
+#425        7       r       0        unused
 
-#425        559       r       0        unused
+# coreboot config options: northbridge
+432         3        e      11        gfx_uma_size
+#435        549       r       0        unused
 
 # SandyBridge MRC Scrambler Seed values
 896         32        r       0        mrc_scrambler_seed
@@ -150,6 +153,13 @@ enumerations
 10    1     Keyboard only
 10    2	    Thinklight only
 10    3	    None
+11    0     32M
+11    1     64M
+11    2	    96M
+11    3	    128M
+11    4	    160M
+11    5	    192M
+11    6	    224M
 # -----------------------------------------------------------------
 checksums
 
diff --git a/src/mainboard/lenovo/t530/cmos.layout b/src/mainboard/lenovo/t530/cmos.layout
index 50aa5f3..825317f 100644
--- a/src/mainboard/lenovo/t530/cmos.layout
+++ b/src/mainboard/lenovo/t530/cmos.layout
@@ -100,8 +100,11 @@ entries
 
 # coreboot config options: cpu
 424          1       e       2        hyper_threading
+#425        7       r       0        unused
 
-#425        559       r       0        unused
+# coreboot config options: northbridge
+432         3        e      11        gfx_uma_size
+#435        549       r       0        unused
 
 # SandyBridge MRC Scrambler Seed values
 896         32        r       0        mrc_scrambler_seed
@@ -150,6 +153,13 @@ enumerations
 10    1     Keyboard only
 10    2	    Thinklight only
 10    3	    None
+11    0     32M
+11    1     64M
+11    2	    96M
+11    3	    128M
+11    4	    160M
+11    5	    192M
+11    6	    224M
 # -----------------------------------------------------------------
 checksums
 
diff --git a/src/mainboard/lenovo/x230/cmos.layout b/src/mainboard/lenovo/x230/cmos.layout
index 50aa5f3..7a2eb01 100644
--- a/src/mainboard/lenovo/x230/cmos.layout
+++ b/src/mainboard/lenovo/x230/cmos.layout
@@ -100,8 +100,11 @@ entries
 
 # coreboot config options: cpu
 424          1       e       2        hyper_threading
+#425        7       r       0        unused
 
-#425        559       r       0        unused
+# coreboot config options: northbridge
+432         3        e      11        gfx_uma_size
+#435        549       r       0        unused
 
 # SandyBridge MRC Scrambler Seed values
 896         32        r       0        mrc_scrambler_seed
@@ -150,6 +153,14 @@ enumerations
 10    1     Keyboard only
 10    2	    Thinklight only
 10    3	    None
+11    0     32M
+11    1     64M
+11    2	    96M
+11    3	    128M
+11    4	    160M
+11    5	    192M
+11    6	    224M
+
 # -----------------------------------------------------------------
 checksums
 
diff --git a/src/mainboard/samsung/lumpy/cmos.layout b/src/mainboard/samsung/lumpy/cmos.layout
index 9f0e9f3..f08b7c2 100644
--- a/src/mainboard/samsung/lumpy/cmos.layout
+++ b/src/mainboard/samsung/lumpy/cmos.layout
@@ -91,7 +91,11 @@ entries
 # coreboot config options: bootloader
 #Used by ChromeOS:
 416        128       r        0        vbnv
-#544        440       r       0        unused
+
+# coreboot config options: northbridge
+544         3        e      11        gfx_uma_size
+
+#547        437       r       0        unused
 
 # SandyBridge MRC Scrambler Seed values
 896         32        r       0        mrc_scrambler_seed
@@ -134,6 +138,14 @@ enumerations
 7     2     Keep
 8     0     AHCI
 8     1     Compatible
+11    0     32M
+11    1     64M
+11    2	    96M
+11    3	    128M
+11    4	    160M
+11    5	    192M
+11    6	    224M
+
 # -----------------------------------------------------------------
 checksums
 
diff --git a/src/mainboard/samsung/stumpy/cmos.layout b/src/mainboard/samsung/stumpy/cmos.layout
index e7b73a2..1f8aee8 100644
--- a/src/mainboard/samsung/stumpy/cmos.layout
+++ b/src/mainboard/samsung/stumpy/cmos.layout
@@ -90,7 +90,11 @@ entries
 # coreboot config options: bootloader
 #Used by ChromeOS:
 416        128       r        0        vbnv
-#544        440       r       0        unused
+
+# coreboot config options: northbridge
+544         3        e      11        gfx_uma_size
+
+#547        437       r       0        unused
 
 # SandyBridge MRC Scrambler Seed values
 896         32        r       0        mrc_scrambler_seed
@@ -134,6 +138,13 @@ enumerations
 7     2     Keep
 8     0     AHCI
 8     1     Compatible
+11    0     32M
+11    1     64M
+11    2	    96M
+11    3	    128M
+11    4	    160M
+11    5	    192M
+11    6	    224M
 # -----------------------------------------------------------------
 checksums
 
diff --git a/src/northbridge/intel/sandybridge/early_init.c b/src/northbridge/intel/sandybridge/early_init.c
index d688f5b..d1d35db 100644
--- a/src/northbridge/intel/sandybridge/early_init.c
+++ b/src/northbridge/intel/sandybridge/early_init.c
@@ -24,6 +24,7 @@
 #include <arch/io.h>
 #include <device/pci_def.h>
 #include <elog.h>
+#include <pc80/mc146818rtc.h>
 #include "sandybridge.h"
 
 static void sandybridge_setup_bars(void)
@@ -83,6 +84,7 @@ static void sandybridge_setup_graphics(void)
 	u32 reg32;
 	u16 reg16;
 	u8 reg8;
+	u8 gfxsize;
 
 	reg16 = pci_read_config16(PCI_DEV(0,2,0), PCI_DEVICE_ID);
 	switch (reg16) {
@@ -103,10 +105,13 @@ static void sandybridge_setup_graphics(void)
 
 	printk(BIOS_DEBUG, "Initializing Graphics...\n");
 
-	/* Setup IGD memory by setting GGC[7:3] = 1 for 32MB */
+	if (get_option(&gfxsize, "gfx_uma_size") != CB_SUCCESS) {
+		/* Setup IGD memory by setting GGC[7:3] = 1 for 32MB */
+		gfxsize = 0;
+	}
 	reg16 = pci_read_config16(PCI_DEV(0,0,0), GGC);
 	reg16 &= ~0x00f8;
-	reg16 |= 1 << 3;
+	reg16 |= (gfxsize + 1) << 3;
 	/* Program GTT memory by setting GGC[9:8] = 2MB */
 	reg16 &= ~0x0300;
 	reg16 |= 2 << 8;



More information about the coreboot-gerrit mailing list