drivers/intel/fsp: Map FSP debug level to coreboot console level
This patch maps coreboot console level to FSP debug level. This is useful to suppress MRC (FSP-M) debug logs. Callers have to select HAVE_DEBUG_RAM_SETUP config to get verbose MRC debug log, Signed-off-by: Subrata Banik <subratabanik@google.com> Change-Id: I398d576fad68a0d0fc931c175bbc04fcbc2e54ec Reviewed-on: https://review.coreboot.org/c/coreboot/+/60471 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Angel Pons <th3fanbus@gmail.com> Reviewed-by: Nico Huber <nico.h@gmx.de> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
This commit is contained in:
parent
b4a169a1e1
commit
69107c149b
|
@ -1,8 +1,10 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
|
||||
#include <commonlib/helpers.h>
|
||||
#include <console/console.h>
|
||||
#include <console/streams.h>
|
||||
#include <cpu/x86/mtrr.h>
|
||||
#include <fsp/debug.h>
|
||||
#include <fsp/util.h>
|
||||
|
||||
asmlinkage size_t fsp_write_line(uint8_t *buffer, size_t number_of_bytes)
|
||||
|
@ -32,6 +34,41 @@ static void fsp_gpio_config_check(enum fsp_call_phase phase, const char *call_st
|
|||
}
|
||||
}
|
||||
|
||||
enum fsp_log_level fsp_map_console_log_level(void)
|
||||
{
|
||||
enum fsp_log_level fsp_debug_level;
|
||||
|
||||
switch (get_log_level()) {
|
||||
case BIOS_EMERG:
|
||||
case BIOS_ALERT:
|
||||
case BIOS_CRIT:
|
||||
case BIOS_ERR:
|
||||
fsp_debug_level = FSP_LOG_LEVEL_ERR;
|
||||
break;
|
||||
case BIOS_WARNING:
|
||||
fsp_debug_level = FSP_LOG_LEVEL_ERR_WARN;
|
||||
break;
|
||||
case BIOS_NOTICE:
|
||||
fsp_debug_level = FSP_LOG_LEVEL_ERR_WARN_INFO;
|
||||
break;
|
||||
case BIOS_INFO:
|
||||
fsp_debug_level = FSP_LOG_LEVEL_ERR_WARN_INFO_EVENT;
|
||||
break;
|
||||
case BIOS_DEBUG:
|
||||
case BIOS_SPEW:
|
||||
fsp_debug_level = FSP_LOG_LEVEL_VERBOSE;
|
||||
break;
|
||||
default:
|
||||
fsp_debug_level = FSP_LOG_LEVEL_DISABLE;
|
||||
break;
|
||||
}
|
||||
|
||||
if (!CONFIG(DEBUG_RAM_SETUP))
|
||||
fsp_debug_level = MIN(fsp_debug_level, FSP_LOG_LEVEL_ERR_WARN);
|
||||
|
||||
return fsp_debug_level;
|
||||
}
|
||||
|
||||
/*-----------
|
||||
* MemoryInit
|
||||
*-----------
|
||||
|
|
|
@ -5,7 +5,17 @@
|
|||
|
||||
#include <fsp/util.h>
|
||||
|
||||
enum fsp_log_level {
|
||||
FSP_LOG_LEVEL_DISABLE = 0,
|
||||
FSP_LOG_LEVEL_ERR,
|
||||
FSP_LOG_LEVEL_ERR_WARN,
|
||||
FSP_LOG_LEVEL_ERR_WARN_INFO,
|
||||
FSP_LOG_LEVEL_ERR_WARN_INFO_EVENT,
|
||||
FSP_LOG_LEVEL_VERBOSE
|
||||
};
|
||||
|
||||
/* FSP debug API */
|
||||
enum fsp_log_level fsp_map_console_log_level(void);
|
||||
void fsp_debug_before_memory_init(fsp_memory_init_fn memory_init,
|
||||
const FSPM_UPD *fspm_old_upd,
|
||||
const FSPM_UPD *fspm_new_upd);
|
||||
|
|
Loading…
Reference in New Issue