mainboard/google/dedede: Migrate onto SKU ID/fw_config helpers
Leverage the common sku id space helper encoders. dedede uses the non-legacy SKU ID space. squash in, mainboard/google/dedede: Migrate onto get fw_config helper BUG=b:149348474 BRANCH=none TEST=only tested on hatch Change-Id: I0c21a748fddef0985022cb4e77a8db95d6692f4b Signed-off-by: Edward O'Callaghan <quasisec@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/39036 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
This commit is contained in:
committed by
Edward O'Callaghan
parent
c6ab2ffaa0
commit
abd02cc1ca
@@ -6,6 +6,7 @@ config BOARD_GOOGLE_BASEBOARD_DEDEDE
|
|||||||
select EC_GOOGLE_CHROMEEC
|
select EC_GOOGLE_CHROMEEC
|
||||||
select EC_GOOGLE_CHROMEEC_BOARDID
|
select EC_GOOGLE_CHROMEEC_BOARDID
|
||||||
select EC_GOOGLE_CHROMEEC_ESPI
|
select EC_GOOGLE_CHROMEEC_ESPI
|
||||||
|
select EC_GOOGLE_CHROMEEC_SKUID
|
||||||
select GENERIC_SPD_BIN
|
select GENERIC_SPD_BIN
|
||||||
select HAVE_ACPI_RESUME
|
select HAVE_ACPI_RESUME
|
||||||
select HAVE_ACPI_TABLES
|
select HAVE_ACPI_TABLES
|
||||||
|
@@ -12,37 +12,9 @@
|
|||||||
#include <smbios.h>
|
#include <smbios.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#define SKU_UNKNOWN 0xffffffff
|
|
||||||
#define SKU_MAX 0x7fffffff
|
|
||||||
|
|
||||||
static uint32_t board_info_get_sku(void)
|
|
||||||
{
|
|
||||||
static uint32_t sku_id = SKU_UNKNOWN;
|
|
||||||
|
|
||||||
if (sku_id != SKU_UNKNOWN)
|
|
||||||
return sku_id;
|
|
||||||
|
|
||||||
if (google_chromeec_cbi_get_sku_id(&sku_id))
|
|
||||||
sku_id = SKU_UNKNOWN;
|
|
||||||
|
|
||||||
return sku_id;
|
|
||||||
}
|
|
||||||
|
|
||||||
const char *smbios_system_sku(void)
|
const char *smbios_system_sku(void)
|
||||||
{
|
{
|
||||||
/* sku{0..2147483647} */
|
return google_chromeec_smbios_system_sku();
|
||||||
static char sku_str[14];
|
|
||||||
uint32_t sku_id = board_info_get_sku();
|
|
||||||
|
|
||||||
if (sku_id == SKU_UNKNOWN || sku_id > SKU_MAX) {
|
|
||||||
printk(BIOS_ERR, "%s: Unexpected SKU ID %u\n",
|
|
||||||
__func__, sku_id);
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
|
|
||||||
snprintf(sku_str, sizeof(sku_str), "sku%u", sku_id);
|
|
||||||
|
|
||||||
return sku_str;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const char *smbios_mainboard_manufacturer(void)
|
const char *smbios_mainboard_manufacturer(void)
|
||||||
@@ -66,15 +38,5 @@ const char *smbios_mainboard_manufacturer(void)
|
|||||||
|
|
||||||
int board_info_get_fw_config(uint32_t *fw_config)
|
int board_info_get_fw_config(uint32_t *fw_config)
|
||||||
{
|
{
|
||||||
uint32_t sku_id = board_info_get_sku();
|
|
||||||
|
|
||||||
/*
|
|
||||||
* FW_CONFIG can potentially have all the bits set. So check the
|
|
||||||
* sku_id to ensure that the CBI is provisioned before reading the
|
|
||||||
* FW_CONFIG.
|
|
||||||
*/
|
|
||||||
if (sku_id == SKU_UNKNOWN || sku_id > SKU_MAX)
|
|
||||||
return -1;
|
|
||||||
|
|
||||||
return google_chromeec_cbi_get_fw_config(fw_config);
|
return google_chromeec_cbi_get_fw_config(fw_config);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user