diff options
Diffstat (limited to 'src/vendorcode/google')
-rw-r--r-- | src/vendorcode/google/Kconfig | 8 | ||||
-rw-r--r-- | src/vendorcode/google/Makefile.inc | 2 | ||||
-rw-r--r-- | src/vendorcode/google/smbios.c | 27 |
3 files changed, 37 insertions, 0 deletions
diff --git a/src/vendorcode/google/Kconfig b/src/vendorcode/google/Kconfig index f275e6ca35..fcb28dfc97 100644 --- a/src/vendorcode/google/Kconfig +++ b/src/vendorcode/google/Kconfig @@ -13,3 +13,11 @@ ## source src/vendorcode/google/chromeos/Kconfig + +config GOOGLE_SMBIOS_MAINBOARD_VERSION + bool + default n + depends on GENERATE_SMBIOS_TABLES + help + Provide a common implementation for mainboard version, + which returns a formatted 'rev%d' board_id() string. diff --git a/src/vendorcode/google/Makefile.inc b/src/vendorcode/google/Makefile.inc index 6e950a1ebf..60ff84d01e 100644 --- a/src/vendorcode/google/Makefile.inc +++ b/src/vendorcode/google/Makefile.inc @@ -14,3 +14,5 @@ ## subdirs-$(CONFIG_CHROMEOS) += chromeos + +ramstage-$(CONFIG_GOOGLE_SMBIOS_MAINBOARD_VERSION) += smbios.c diff --git a/src/vendorcode/google/smbios.c b/src/vendorcode/google/smbios.c new file mode 100644 index 0000000000..7b147cdfe4 --- /dev/null +++ b/src/vendorcode/google/smbios.c @@ -0,0 +1,27 @@ +/* + * This file is part of the coreboot project. + * + * Copyright 2016 Google Inc. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include <boardid.h> +#include <smbios.h> +#include <string.h> + +const char *smbios_mainboard_version(void) +{ + static char str[8]; + + snprintf(str, sizeof(str), "rev%d", board_id()); + + return str; +} |