diff options
-rw-r--r-- | src/Kconfig | 8 | ||||
-rw-r--r-- | src/arch/x86/boot/smbios.c | 3 | ||||
-rw-r--r-- | src/drivers/i2c/Kconfig | 1 | ||||
-rw-r--r-- | src/drivers/i2c/at24rf08c/Kconfig | 7 | ||||
-rw-r--r-- | src/drivers/i2c/at24rf08c/lenovo_serials.c | 5 |
5 files changed, 24 insertions, 0 deletions
diff --git a/src/Kconfig b/src/Kconfig index a3a78955b7..b7d2e67b7a 100644 --- a/src/Kconfig +++ b/src/Kconfig @@ -588,9 +588,14 @@ config GENERATE_SMBIOS_TABLES If unsure, say Y. +config SMBIOS_PROVIDED_BY_MOBO + bool + default n + config MAINBOARD_SERIAL_NUMBER string "SMBIOS Serial Number" depends on GENERATE_SMBIOS_TABLES + depends on !SMBIOS_PROVIDED_BY_MOBO default "123456789" help The Serial Number to store in SMBIOS structures. @@ -598,6 +603,7 @@ config MAINBOARD_SERIAL_NUMBER config MAINBOARD_VERSION string "SMBIOS Version Number" depends on GENERATE_SMBIOS_TABLES + depends on !SMBIOS_PROVIDED_BY_MOBO default "1.0" help The Version Number to store in SMBIOS structures. @@ -605,6 +611,7 @@ config MAINBOARD_VERSION config MAINBOARD_SMBIOS_MANUFACTURER string "SMBIOS Manufacturer" depends on GENERATE_SMBIOS_TABLES + depends on !SMBIOS_PROVIDED_BY_MOBO default MAINBOARD_VENDOR help Override the default Manufacturer stored in SMBIOS structures. @@ -612,6 +619,7 @@ config MAINBOARD_SMBIOS_MANUFACTURER config MAINBOARD_SMBIOS_PRODUCT_NAME string "SMBIOS Product name" depends on GENERATE_SMBIOS_TABLES + depends on !SMBIOS_PROVIDED_BY_MOBO default MAINBOARD_PART_NUMBER help Override the default Product name stored in SMBIOS structures. diff --git a/src/arch/x86/boot/smbios.c b/src/arch/x86/boot/smbios.c index 2f1226dd7a..1dbe32dc2d 100644 --- a/src/arch/x86/boot/smbios.c +++ b/src/arch/x86/boot/smbios.c @@ -281,6 +281,8 @@ static int smbios_write_type0(unsigned long *current, int handle) return len; } +#if !CONFIG_SMBIOS_PROVIDED_BY_MOBO + const char *__attribute__((weak)) smbios_mainboard_serial_number(void) { return CONFIG_MAINBOARD_SERIAL_NUMBER; @@ -305,6 +307,7 @@ void __attribute__((weak)) smbios_mainboard_set_uuid(u8 *uuid) { /* leave all zero */ } +#endif #ifdef CONFIG_MAINBOARD_FAMILY const char *smbios_mainboard_family(void) diff --git a/src/drivers/i2c/Kconfig b/src/drivers/i2c/Kconfig index 1949fa6d3b..2831c3fe3a 100644 --- a/src/drivers/i2c/Kconfig +++ b/src/drivers/i2c/Kconfig @@ -1,6 +1,7 @@ source src/drivers/i2c/adm1026/Kconfig source src/drivers/i2c/adm1027/Kconfig source src/drivers/i2c/adt7463/Kconfig +source src/drivers/i2c/at24rf08c/Kconfig source src/drivers/i2c/i2cmux/Kconfig source src/drivers/i2c/i2cmux2/Kconfig source src/drivers/i2c/lm63/Kconfig diff --git a/src/drivers/i2c/at24rf08c/Kconfig b/src/drivers/i2c/at24rf08c/Kconfig new file mode 100644 index 0000000000..e8ee9863e9 --- /dev/null +++ b/src/drivers/i2c/at24rf08c/Kconfig @@ -0,0 +1,7 @@ +if VENDOR_LENOVO + +config SMBIOS_PROVIDED_BY_MOBO + bool + default y + +endif diff --git a/src/drivers/i2c/at24rf08c/lenovo_serials.c b/src/drivers/i2c/at24rf08c/lenovo_serials.c index a5f18897ce..6595dd3c22 100644 --- a/src/drivers/i2c/at24rf08c/lenovo_serials.c +++ b/src/drivers/i2c/at24rf08c/lenovo_serials.c @@ -213,3 +213,8 @@ const char *smbios_mainboard_bios_version(void) s = strconcat("CBET4000 ", coreboot_version); return s; } + +const char *smbios_mainboard_manufacturer(void) +{ + return "LENOVO"; +} |