aboutsummaryrefslogtreecommitdiff
path: root/src/mainboard/ocp/deltalake/loglevel_vpd.c
diff options
context:
space:
mode:
authorJohnny Lin <johnny_lin@wiwynn.com>2020-09-12 23:13:50 +0800
committerPatrick Georgi <pgeorgi@google.com>2020-10-26 06:53:06 +0000
commite61391738ff55243e14d1692dd4746d4345e63ce (patch)
tree209e2c08f565793bb0ae9a41a1be6e59d8f00325 /src/mainboard/ocp/deltalake/loglevel_vpd.c
parente874b1c1794406aa9adcd00a06cdb713b50b88ff (diff)
mb/ocp/deltalake: Override coreboot log level via VPD
Tested=On OCP Delta Lake, log level can be changed via VPD. Change-Id: I36d4b01b6fb6acc726749641df089cb3f9a4dc3e Signed-off-by: Johnny Lin <johnny_lin@wiwynn.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/45326 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Jonathan Zhang <jonzhang@fb.com>
Diffstat (limited to 'src/mainboard/ocp/deltalake/loglevel_vpd.c')
-rw-r--r--src/mainboard/ocp/deltalake/loglevel_vpd.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/mainboard/ocp/deltalake/loglevel_vpd.c b/src/mainboard/ocp/deltalake/loglevel_vpd.c
new file mode 100644
index 0000000000..3faf37a0ea
--- /dev/null
+++ b/src/mainboard/ocp/deltalake/loglevel_vpd.c
@@ -0,0 +1,20 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+
+#include <console/console.h>
+#include <drivers/vpd/vpd.h>
+#include <string.h>
+
+#include "vpd.h"
+
+int get_console_loglevel(void)
+{
+ int log_level = COREBOOT_LOG_LEVEL_DEFAULT;
+ char val_str[VPD_LEN];
+
+ if (vpd_gets(COREBOOT_LOG_LEVEL, val_str, VPD_LEN, VPD_RW_THEN_RO)) {
+ log_level = (int)atol(val_str);
+ if (log_level < 0 || log_level >= BIOS_NEVER)
+ log_level = COREBOOT_LOG_LEVEL_DEFAULT;
+ }
+ return log_level;
+}