diff options
author | Aaron Durbin <adurbin@chromium.org> | 2016-07-22 14:30:55 -0500 |
---|---|---|
committer | Aaron Durbin <adurbin@chromium.org> | 2016-07-24 00:07:54 +0200 |
commit | 5d208ff3952edf1d9bd9d1edaccd34f4d17e3db0 (patch) | |
tree | e793c9d5803dfb66fc68d0f568b95dbd543f1ba9 /src/drivers | |
parent | e9a9c6a33cfc066b690082e938d84b318f6de32a (diff) | |
download | coreboot-5d208ff3952edf1d9bd9d1edaccd34f4d17e3db0.tar.xz |
drivers/elog: remove elog Kconfig variables
Now that FMAP is a first class citizen in coreboot
there's no reason to have alternate locations for ELOG.
If one wants eventlog support they need to specify the
ELOG entry in the FMAP. The one side effect is that
the code was previously limiting the size to 4KiB
because the default ELOG_AREA_SIZE was 4KiB. However,
that's no longer the case as the FMAP region size is
honored.
Change-Id: I4ce5f15032387155d2f56f0de61f2d85271ba606
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/15814
Tested-by: build bot (Jenkins)
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Diffstat (limited to 'src/drivers')
-rw-r--r-- | src/drivers/elog/Kconfig | 15 | ||||
-rw-r--r-- | src/drivers/elog/elog.c | 27 |
2 files changed, 9 insertions, 33 deletions
diff --git a/src/drivers/elog/Kconfig b/src/drivers/elog/Kconfig index 9df9e12b9d..cb5d3d40cc 100644 --- a/src/drivers/elog/Kconfig +++ b/src/drivers/elog/Kconfig @@ -26,21 +26,6 @@ config ELOG_DEBUG bool "Enable debug output for event logging" default n -config ELOG_FLASH_BASE - hex "Event log offset into flash" - default 0 - help - Offset into the flash chip for the ELOG block. - This should be allocated in the FMAP. - -config ELOG_AREA_SIZE - hex "Size of Event Log area in flash" - default 0x1000 - help - This should be a multiple of flash block size. - - Default is 4K. - config ELOG_CBMEM bool "Store a copy of ELOG in CBMEM" default n diff --git a/src/drivers/elog/elog.c b/src/drivers/elog/elog.c index d05ce48368..95660784aa 100644 --- a/src/drivers/elog/elog.c +++ b/src/drivers/elog/elog.c @@ -35,10 +35,6 @@ #include "elog_internal.h" -#if !IS_ENABLED(CONFIG_CHROMEOS) && CONFIG_ELOG_FLASH_BASE == 0 -#error "CONFIG_ELOG_FLASH_BASE is invalid" -#endif - #if CONFIG_ELOG_DEBUG #define elog_debug(STR...) printk(BIOS_DEBUG, STR) #else @@ -493,24 +489,19 @@ int elog_clear(void) static void elog_find_flash(void) { + struct region r; + elog_debug("elog_find_flash()\n"); - if (IS_ENABLED(CONFIG_CHROMEOS)) { - /* Find the ELOG base and size in FMAP */ - struct region r; - - if (fmap_locate_area("RW_ELOG", &r) < 0) { - printk(BIOS_WARNING, - "ELOG: Unable to find RW_ELOG in FMAP\n"); - flash_base = total_size = 0; - } else { - flash_base = region_offset(&r); - total_size = MIN(region_sz(&r), CONFIG_ELOG_AREA_SIZE); - } + /* Find the ELOG base and size in FMAP */ + if (fmap_locate_area("RW_ELOG", &r) < 0) { + printk(BIOS_WARNING, "ELOG: Unable to find RW_ELOG in FMAP\n"); + flash_base = total_size = 0; } else { - flash_base = CONFIG_ELOG_FLASH_BASE; - total_size = CONFIG_ELOG_AREA_SIZE; + flash_base = region_offset(&r); + total_size = region_sz(&r); } + log_size = total_size - sizeof(struct elog_header); full_threshold = log_size - ELOG_MIN_AVAILABLE_ENTRIES * MAX_EVENT_SIZE; shrink_size = MIN(total_size * ELOG_SHRINK_PERCENTAGE / 100, |