broadwell: add support for smbios type17 in broadwell

This change also depends on mrc due to changes in pei_data.h
Report smbios type 17 for each memory

CQ-DEPEND=CL:210005
BUG=None
BRANCH=None
TEST=Compiles successfully
     See smbios type17 in OS by dmidecode

Original-Change-Id: If83c99364726cd17c719a59ed8ac993736c63b9a
Original-Signed-off-by: Kane Chen <kane.chen@intel.com>
Original-Reviewed-on: https://chromium-review.googlesource.com/210399
Original-Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
(cherry picked from commit 6da6b4ffb3a45fdd766b88220c2adb168b3c5e10)
Signed-off-by: Marc Jones <marc.jones@se-eng.com>

Change-Id: I39ea9ef9b342239fe26846ab0a928f6a680c21e8
Reviewed-on: http://review.coreboot.org/8956
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
This commit is contained in:
Kane Chen 2014-07-28 10:54:40 -07:00 committed by Patrick Georgi
parent 33faac643d
commit ebbb0d4105
2 changed files with 8 additions and 0 deletions

View File

@ -30,6 +30,7 @@
#define PEI_DATA_H #define PEI_DATA_H
#include <types.h> #include <types.h>
#include <memory_info.h>
#define PEI_VERSION 21 #define PEI_VERSION 21
@ -177,6 +178,7 @@ struct pei_data
/* Data from MRC that should be saved to flash */ /* Data from MRC that should be saved to flash */
void *data_to_save; void *data_to_save;
int data_to_save_size; int data_to_save_size;
struct memory_info meminfo;
} __attribute__((packed)); } __attribute__((packed));
typedef struct pei_data PEI_DATA; typedef struct pei_data PEI_DATA;

View File

@ -46,6 +46,7 @@
void raminit(struct pei_data *pei_data) void raminit(struct pei_data *pei_data)
{ {
const struct mrc_saved_data *cache; const struct mrc_saved_data *cache;
struct memory_info* mem_info;
pei_wrapper_entry_t entry; pei_wrapper_entry_t entry;
int ret; int ret;
@ -124,4 +125,9 @@ void raminit(struct pei_data *pei_data)
if (pei_data->data_to_save != NULL && pei_data->data_to_save_size > 0) if (pei_data->data_to_save != NULL && pei_data->data_to_save_size > 0)
mrc_cache_stash_data(pei_data->data_to_save, mrc_cache_stash_data(pei_data->data_to_save,
pei_data->data_to_save_size); pei_data->data_to_save_size);
printk(BIOS_DEBUG, "create cbmem for dimm information\n");
mem_info = cbmem_add(CBMEM_ID_MEMINFO, sizeof(struct memory_info));
memcpy(mem_info, &pei_data->meminfo, sizeof(struct memory_info));
} }