[coreboot-gerrit] Patch set updated for coreboot: mb/samsung/lumpy/romstage: read SPD data of removable DIMM

Patrick Rudolph (siro@das-labor.org) gerrit at coreboot.org
Fri Apr 8 13:18:47 CEST 2016


Patrick Rudolph (siro at das-labor.org) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/14278

-gerrit

commit 824e4d4cc1c79d9b197e52fee5c2c24d7b13f6af
Author: Patrick Rudolph <siro at das-labor.org>
Date:   Thu Apr 7 18:51:12 2016 +0200

    mb/samsung/lumpy/romstage: read SPD data of removable DIMM
    
    The removable DIMM SPD data wasn't read.
    As a result the system only uses the 2GB onboard memory and
    the GNU Linux kernel paniced in acpi_ds_build_internal_package_obj.
    
    Read the SPD and allow native raminit and MRC blob to use the
    removable DIMM.
    The system is able to use the removable dimm and the kernel panic
    is gone.
    
    Change-Id: I30eed747f924cb0029de55d2ab85c5a94075dc1b
    Signed-off-by: Patrick Rudolph <siro at das-labor.org>
    Tested-by: Idwer Vollering <vidwer at gmail.com>
---
 src/mainboard/samsung/lumpy/romstage.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/mainboard/samsung/lumpy/romstage.c b/src/mainboard/samsung/lumpy/romstage.c
index 650c8d7..4d318b7 100644
--- a/src/mainboard/samsung/lumpy/romstage.c
+++ b/src/mainboard/samsung/lumpy/romstage.c
@@ -216,6 +216,8 @@ void mainboard_fill_pei_data(struct pei_data *pei_data)
 	*pei_data = pei_data_template;
 	// leave onboard dimm address at f0, and copy spd data there.
 	memcpy(pei_data->spd_data[0], locate_spd(), 256);
+	/* read removable dimm spd */
+	read_spd(&pei_data->spd_data[2], 0x50);
 }
 
 const struct southbridge_usb_port mainboard_usb_ports[] = {
@@ -238,7 +240,10 @@ const struct southbridge_usb_port mainboard_usb_ports[] = {
 
 void mainboard_get_spd(spd_raw_data *spd)
 {
-	memcpy(&spd[0], locate_spd(), 128);
+	/* get onboard dimm spd */
+	memcpy(&spd[0], locate_spd(), 256);
+	/* read removable dimm spd */
+	read_spd(&spd[2], 0x50);
 }
 
 void mainboard_early_init(int s3resume)



More information about the coreboot-gerrit mailing list