Change macbook air to use a pre-dumped SPD.

MBA has a soldered RAM without SPD, so you need to use stored SPD.

Change-Id: I0205e6c65ccbfe7764c12c815e60801a3c3623a5
Signed-off-by: Vladimir Serbinenko <phcoder@gmail.com>
Reviewed-on: http://review.coreboot.org/11841
Tested-by: build bot (Jenkins)
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
This commit is contained in:
Vladimir Serbinenko 2015-10-09 16:42:21 +02:00
parent 55f3e2fd00
commit f06b08a60f
3 changed files with 14 additions and 5 deletions

View File

@ -1,3 +1,7 @@
romstage-y += early_southbridge.c romstage-y += early_southbridge.c
romstage-y += gpio.c romstage-y += gpio.c
ramstage-y += gnvs.c ramstage-y += gnvs.c
cbfs-files-y += spd.bin
spd.bin-file := spd.bin
spd.bin-type := spd

View File

@ -15,6 +15,7 @@
#include "southbridge/intel/bd82x6x/gpio.h" #include "southbridge/intel/bd82x6x/gpio.h"
#include <arch/cpu.h> #include <arch/cpu.h>
#include <cpu/x86/msr.h> #include <cpu/x86/msr.h>
#include <cbfs.h>
void pch_enable_lpc(void) void pch_enable_lpc(void)
{ {
@ -51,11 +52,15 @@ const struct southbridge_usb_port mainboard_usb_ports[] = {
{ 1, 0, -1 }, { 1, 0, -1 },
}; };
/* FIXME: Put proper SPD map here. */
void mainboard_get_spd(spd_raw_data *spd) void mainboard_get_spd(spd_raw_data *spd)
{ {
read_spd(&spd[0], 0x50); void *spd_file;
read_spd(&spd[1], 0x51); size_t spd_file_len = 0;
read_spd(&spd[2], 0x52); spd_file = cbfs_boot_map_with_leak("spd.bin", CBFS_TYPE_SPD,
read_spd(&spd[3], 0x53); &spd_file_len);
if (spd_file && spd_file_len >= 1024) {
int i;
for (i = 0; i < 4; i++)
memcpy(&spd[i], spd_file + 256 * i, 128);
}
} }

Binary file not shown.