Ricardo Quesada has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/57394 )
Change subject: elog: move MAX_EVENT_SIZE to commonlib/bsd/include ......................................................................
elog: move MAX_EVENT_SIZE to commonlib/bsd/include
Moves MAX_EVENT_SIZE to commonlib/bsd/include, and renames it ELOG_MAX_EVENT_SIZE to give it an "scoped" name.
The moving is needed because this defined will be used from util/cbfstool (see next CL in the chain).
BUG=b:172210863 TEST=compiles Ok
Change-Id: I86b06d257dda5b325a8478a044045b2a63fb1a84 Signed-off-by: Ricardo Quesada ricardoq@google.com --- M src/commonlib/bsd/include/commonlib/bsd/elog.h M src/drivers/elog/elog.c M src/include/elog.h 3 files changed, 6 insertions(+), 5 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/94/57394/1
diff --git a/src/commonlib/bsd/include/commonlib/bsd/elog.h b/src/commonlib/bsd/include/commonlib/bsd/elog.h index d428b5d..ab3fa4b 100644 --- a/src/commonlib/bsd/include/commonlib/bsd/elog.h +++ b/src/commonlib/bsd/include/commonlib/bsd/elog.h @@ -311,6 +311,9 @@ } __packed;
+/* Only the 7-LSB are used for size */ +#define ELOG_MAX_EVENT_SIZE 0x7F + enum cb_err elog_verify_header(const struct elog_header *header); const struct event_header *elog_get_next_event(const struct event_header *event); const void *event_get_data(const struct event_header *event); diff --git a/src/drivers/elog/elog.c b/src/drivers/elog/elog.c index 69567c0..ca2ec6e 100644 --- a/src/drivers/elog/elog.c +++ b/src/drivers/elog/elog.c @@ -246,7 +246,7 @@ if (len < (sizeof(*event) + sizeof(checksum))) return 0;
- if (len > MAX_EVENT_SIZE) + if (len > ELOG_MAX_EVENT_SIZE) return 0;
event = elog_get_event_buffer(offset, len); @@ -613,7 +613,7 @@ static int elog_find_flash(void) { size_t total_size; - size_t reserved_space = ELOG_MIN_AVAILABLE_ENTRIES * MAX_EVENT_SIZE; + size_t reserved_space = ELOG_MIN_AVAILABLE_ENTRIES * ELOG_MAX_EVENT_SIZE; struct region_device *rdev = &elog_state.nv_dev;
elog_debug("%s()\n", __func__); @@ -801,7 +801,7 @@
/* Header + Data + Checksum */ event_size = sizeof(*event) + data_size + 1; - if (event_size > MAX_EVENT_SIZE) { + if (event_size > ELOG_MAX_EVENT_SIZE) { printk(BIOS_ERR, "ELOG: Event(%X) data size too " "big (%d)\n", event_type, event_size); return -1; diff --git a/src/include/elog.h b/src/include/elog.h index 206018d..29904cd 100644 --- a/src/include/elog.h +++ b/src/include/elog.h @@ -6,8 +6,6 @@ #include <commonlib/bsd/elog.h> #include <stdint.h>
-#define MAX_EVENT_SIZE 0x7F - #if CONFIG(ELOG) /* Eventlog backing storage must be initialized before calling elog_init(). */ extern int elog_init(void);