summaryrefslogtreecommitdiff
path: root/src/mainboard/google
diff options
context:
space:
mode:
authorZhuohao Lee <zhuohao@chromium.org>2018-03-17 05:00:49 +0800
committerMartin Roth <martinroth@google.com>2018-03-21 16:02:26 +0000
commitf7b5955b363034c7235ea6a5fcc399eaf53120ce (patch)
tree177ccb79154c10603c698ac0ecc24b2aeef23b46 /src/mainboard/google
parentc293496f41f8a10929d9704427dc237747e2857c (diff)
downloadcoreboot-f7b5955b363034c7235ea6a5fcc399eaf53120ce.tar.xz
mb/google/poppy/variants/nami: change type of board_sku_id() to uint32_t
Tools/scripts, like mosys/arc-setup, use int (4 bytes) to read the sku id. In order to support "-1", we need to use uint32_t (4 bytes) instead of using uint16_t (2 bytes) data type. Otherwise, tools/scripts will read 65535 instead of -1. Another reason to change this is that sku_id can be supported by ec up to 4 bytes. BUG=b:73792190 TEST=mosys output "Platform not supported" for -1 sku id arc-setup read -1 sku id Change-Id: Ib3baa8419f138abeb412ac09c2e7dc608e3b758b Signed-off-by: Zhuohao Lee <zhuohao@chromium.org> Reviewed-on: https://review.coreboot.org/25252 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Furquan Shaikh <furquan@google.com>
Diffstat (limited to 'src/mainboard/google')
-rw-r--r--src/mainboard/google/poppy/variants/baseboard/include/baseboard/variants.h2
-rw-r--r--src/mainboard/google/poppy/variants/nami/gpio.c2
-rw-r--r--src/mainboard/google/poppy/variants/nami/include/variant/sku.h2
-rw-r--r--src/mainboard/google/poppy/variants/nami/mainboard.c14
4 files changed, 11 insertions, 9 deletions
diff --git a/src/mainboard/google/poppy/variants/baseboard/include/baseboard/variants.h b/src/mainboard/google/poppy/variants/baseboard/include/baseboard/variants.h
index e8a9b47ad1..97cb0fef2e 100644
--- a/src/mainboard/google/poppy/variants/baseboard/include/baseboard/variants.h
+++ b/src/mainboard/google/poppy/variants/baseboard/include/baseboard/variants.h
@@ -53,7 +53,7 @@ struct memory_params {
void variant_memory_params(struct memory_params *p);
int variant_memory_sku(void);
void variant_devtree_update(void);
-uint16_t variant_board_sku(void);
+uint32_t variant_board_sku(void);
struct nhlt;
void variant_nhlt_init(struct nhlt *nhlt);
diff --git a/src/mainboard/google/poppy/variants/nami/gpio.c b/src/mainboard/google/poppy/variants/nami/gpio.c
index 061c3115c3..37a9420ba7 100644
--- a/src/mainboard/google/poppy/variants/nami/gpio.c
+++ b/src/mainboard/google/poppy/variants/nami/gpio.c
@@ -398,7 +398,7 @@ static const struct pad_config vayne_sku_gpio_table[] = {
const struct pad_config *variant_sku_gpio_table(size_t *num)
{
- uint16_t sku_id = variant_board_sku();
+ uint32_t sku_id = variant_board_sku();
const struct pad_config *board_gpio_tables;
switch (sku_id) {
case SKU_1_VAYNE:
diff --git a/src/mainboard/google/poppy/variants/nami/include/variant/sku.h b/src/mainboard/google/poppy/variants/nami/include/variant/sku.h
index b72f3497fe..3b67b56ad7 100644
--- a/src/mainboard/google/poppy/variants/nami/include/variant/sku.h
+++ b/src/mainboard/google/poppy/variants/nami/include/variant/sku.h
@@ -16,7 +16,7 @@
#ifndef __MAINBOARD_SKU_H__
#define __MAINBOARD_SKU_H__
-#define SKU_UNKNOWN 0xFFFF
+#define SKU_UNKNOWN 0xFFFFFFFF
#define SKU_0_NAMI 0x3A7B
#define SKU_1_VAYNE 0x3A63
#define SKU_2_VAYNE 0x3A7F
diff --git a/src/mainboard/google/poppy/variants/nami/mainboard.c b/src/mainboard/google/poppy/variants/nami/mainboard.c
index f166088a8e..4fc3d885cf 100644
--- a/src/mainboard/google/poppy/variants/nami/mainboard.c
+++ b/src/mainboard/google/poppy/variants/nami/mainboard.c
@@ -24,22 +24,24 @@
#include <string.h>
#include <variant/sku.h>
-uint16_t variant_board_sku(void)
+uint32_t variant_board_sku(void)
{
- static int sku_id = -1;
+ static uint32_t sku_id = SKU_UNKNOWN;
uint32_t id;
- if (sku_id >= 0)
+
+ if (sku_id != SKU_UNKNOWN)
return sku_id;
if (google_chromeec_cbi_get_sku_id(&id))
return SKU_UNKNOWN;
sku_id = id;
+
return sku_id;
}
void variant_devtree_update(void)
{
/* Override dev tree settings per board */
- uint16_t sku_id = variant_board_sku();
+ uint32_t sku_id = variant_board_sku();
device_t root = SA_DEV_ROOT;
config_t *cfg = root->chip_info;
switch (sku_id) {
@@ -53,9 +55,9 @@ void variant_devtree_update(void)
const char *smbios_mainboard_sku(void)
{
- static char sku_str[9]; /* sku{0..65535} (basically up to FFFF) */
+ static char sku_str[14]; /* sku{0..4294967295} */
- snprintf(sku_str, sizeof(sku_str), "sku%d", variant_board_sku());
+ snprintf(sku_str, sizeof(sku_str), "sku%u", variant_board_sku());
return sku_str;
}