summaryrefslogtreecommitdiff
path: root/src/mainboard
diff options
context:
space:
mode:
authorEdward O'Callaghan <quasisec@google.com>2020-02-20 13:46:38 +1100
committerEdward O'Callaghan <quasisec@chromium.org>2020-02-28 00:03:59 +0000
commitd51665600e0ddbd4e1ae7144e29d179287ec285f (patch)
treee09f0c1b62a993d1fe091eb9450eac1e20c43068 /src/mainboard
parent9ed10bff317097c42b1545279f88af95ca796ab0 (diff)
mainboard/google/hatch: Migrate onto SKU ID helpers
Leverage the common sku id space helper encoders. BUG=b:149348474 BRANCH=none TEST=tested on hatch Change-Id: I96e10010fd375b127f1e10387d6f7a839bc35fdd Signed-off-by: Edward O'Callaghan <quasisec@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/39019 Reviewed-by: Furquan Shaikh <furquan@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/mainboard')
-rw-r--r--src/mainboard/google/hatch/Kconfig1
-rw-r--r--src/mainboard/google/hatch/mainboard.c29
-rw-r--r--src/mainboard/google/hatch/variants/akemi/gpio.c3
-rw-r--r--src/mainboard/google/hatch/variants/akemi/variant.c2
-rw-r--r--src/mainboard/google/hatch/variants/baseboard/include/baseboard/variants.h3
-rw-r--r--src/mainboard/google/hatch/variants/dratini/variant.c3
-rw-r--r--src/mainboard/google/hatch/variants/kindred/gpio.c3
-rw-r--r--src/mainboard/google/hatch/variants/kindred/variant.c2
8 files changed, 10 insertions, 36 deletions
diff --git a/src/mainboard/google/hatch/Kconfig b/src/mainboard/google/hatch/Kconfig
index 783ec735ed..92d94db68c 100644
--- a/src/mainboard/google/hatch/Kconfig
+++ b/src/mainboard/google/hatch/Kconfig
@@ -11,6 +11,7 @@ config BOARD_GOOGLE_BASEBOARD_HATCH
select DRIVERS_USB_ACPI
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_BOARDID
+ select EC_GOOGLE_CHROMEEC_SKUID
select EC_GOOGLE_CHROMEEC_ESPI
select GOOGLE_SMBIOS_MAINBOARD_VERSION
select HAVE_ACPI_RESUME
diff --git a/src/mainboard/google/hatch/mainboard.c b/src/mainboard/google/hatch/mainboard.c
index 5761b085dd..888acf720f 100644
--- a/src/mainboard/google/hatch/mainboard.c
+++ b/src/mainboard/google/hatch/mainboard.c
@@ -21,36 +21,9 @@
#include <string.h>
#include <stdint.h>
-#define SKU_UNKNOWN 0xFFFFFFFF
-#define SKU_MAX 255
-
-uint32_t get_board_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)
{
- static char sku_str[7]; /* sku{0..255} */
- uint32_t sku_id = get_board_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;
+ return google_chromeec_smbios_system_sku();
}
const char *smbios_mainboard_manufacturer(void)
diff --git a/src/mainboard/google/hatch/variants/akemi/gpio.c b/src/mainboard/google/hatch/variants/akemi/gpio.c
index cfc185e9a5..b141f02ef3 100644
--- a/src/mainboard/google/hatch/variants/akemi/gpio.c
+++ b/src/mainboard/google/hatch/variants/akemi/gpio.c
@@ -17,6 +17,7 @@
#include <baseboard/gpio.h>
#include <baseboard/variants.h>
#include <commonlib/helpers.h>
+#include <ec/google/chromeec/ec.h>
static const struct pad_config ssd_sku_gpio_table[] = {
/* A18 : NC */
@@ -136,7 +137,7 @@ static const struct pad_config gpio_table[] = {
const struct pad_config *override_gpio_table(size_t *num)
{
- uint32_t sku_id = get_board_sku();
+ uint32_t sku_id = google_chromeec_get_board_sku();
/* For SSD SKU */
if ((sku_id == 2) || (sku_id == 4)) {
*num = ARRAY_SIZE(ssd_sku_gpio_table);
diff --git a/src/mainboard/google/hatch/variants/akemi/variant.c b/src/mainboard/google/hatch/variants/akemi/variant.c
index 8440b5c2d3..2965659dd8 100644
--- a/src/mainboard/google/hatch/variants/akemi/variant.c
+++ b/src/mainboard/google/hatch/variants/akemi/variant.c
@@ -28,7 +28,7 @@ void variant_devtree_update(void)
ssd_host = pcidev_path_on_root(PCH_DEVFN_SATA);
/* SKU ID 2 and 4 do not have eMMC, hence disable it. */
- sku_id = get_board_sku();
+ sku_id = google_chromeec_get_board_sku();
if ((sku_id == 2) || (sku_id == 4)) {
if (emmc_host == NULL)
return;
diff --git a/src/mainboard/google/hatch/variants/baseboard/include/baseboard/variants.h b/src/mainboard/google/hatch/variants/baseboard/include/baseboard/variants.h
index 9d1b91e0c7..c780b973ff 100644
--- a/src/mainboard/google/hatch/variants/baseboard/include/baseboard/variants.h
+++ b/src/mainboard/google/hatch/variants/baseboard/include/baseboard/variants.h
@@ -44,9 +44,6 @@ const struct pad_config *variant_early_gpio_table(size_t *num);
/* Return ChromeOS gpio table and fill in number of entries. */
const struct cros_gpio *variant_cros_gpios(size_t *num);
-/* Return board SKU */
-uint32_t get_board_sku(void);
-
/* Modify devictree settings during ramstage. */
void variant_devtree_update(void);
diff --git a/src/mainboard/google/hatch/variants/dratini/variant.c b/src/mainboard/google/hatch/variants/dratini/variant.c
index 3a51a55bd4..bda30dfb2a 100644
--- a/src/mainboard/google/hatch/variants/dratini/variant.c
+++ b/src/mainboard/google/hatch/variants/dratini/variant.c
@@ -16,11 +16,12 @@
#include <baseboard/variants.h>
#include <variant/sku.h>
#include <sar.h>
+#include <ec/google/chromeec/ec.h>
const char *get_wifi_sar_cbfs_filename(void)
{
const char *filename = NULL;
- uint32_t sku_id = get_board_sku();
+ uint32_t sku_id = google_chromeec_get_board_sku();
switch (sku_id) {
case SKU_21_DRAGONAIR:
diff --git a/src/mainboard/google/hatch/variants/kindred/gpio.c b/src/mainboard/google/hatch/variants/kindred/gpio.c
index fbb47f95de..f53b91be2b 100644
--- a/src/mainboard/google/hatch/variants/kindred/gpio.c
+++ b/src/mainboard/google/hatch/variants/kindred/gpio.c
@@ -17,6 +17,7 @@
#include <baseboard/gpio.h>
#include <baseboard/variants.h>
#include <commonlib/helpers.h>
+#include <ec/google/chromeec/ec.h>
static const struct pad_config ssd_sku_gpio_table[] = {
/* A0 : SAR0_INT_ODL */
@@ -191,7 +192,7 @@ static const struct pad_config gpio_table[] = {
const struct pad_config *override_gpio_table(size_t *num)
{
- uint32_t sku_id = get_board_sku();
+ uint32_t sku_id = google_chromeec_get_board_sku();
/* For SSD SKU */
if (sku_id == 1 || sku_id == 3 || sku_id == 23 || sku_id == 24) {
*num = ARRAY_SIZE(ssd_sku_gpio_table);
diff --git a/src/mainboard/google/hatch/variants/kindred/variant.c b/src/mainboard/google/hatch/variants/kindred/variant.c
index 1e1d083c25..f26486844c 100644
--- a/src/mainboard/google/hatch/variants/kindred/variant.c
+++ b/src/mainboard/google/hatch/variants/kindred/variant.c
@@ -28,7 +28,7 @@ void variant_devtree_update(void)
ssd_host = pcidev_path_on_root(PCH_DEVFN_SATA);
/* SKU ID 1/3/23/24 doesn't have a eMMC device, hence disable it. */
- sku_id = get_board_sku();
+ sku_id = google_chromeec_get_board_sku();
if (sku_id == 1 || sku_id == 3 || sku_id == 23 || sku_id == 24) {
if (emmc_host == NULL)
return;