blob: 4b934fe8ef20867876565e18c339be672b69ed89 [file] [log] [blame]
/* SPDX-License-Identifier: GPL-2.0-only */
#include <console/console.h>
#include <ec/google/chromeec/ec.h>
#include <memory_info.h>
const char *mainboard_get_dram_part_num(void)
{
static char part_num_store[DIMM_INFO_PART_NUMBER_SIZE];
static enum {
PART_NUM_NOT_READ,
PART_NUM_AVAILABLE,
PART_NUM_NOT_IN_CBI,
} part_num_state = PART_NUM_NOT_READ;
if (part_num_state == PART_NUM_NOT_READ) {
if (google_chromeec_cbi_get_dram_part_num(part_num_store,
sizeof(part_num_store)) < 0) {
printk(BIOS_DEBUG,
"Couldn't obtain DRAM part number from CBI\n");
part_num_state = PART_NUM_NOT_IN_CBI;
} else {
part_num_state = PART_NUM_AVAILABLE;
}
}
if (part_num_state == PART_NUM_NOT_IN_CBI)
return NULL;
return part_num_store;
}