libpayload: Cache physical CMOS option table location

In the presence of self-relocating payloads, it's safer to keep
physical addresses in `libsysinfo`.

Change-Id: I64a37bef263022edb504086c02a3fd22ce068ba4
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/43576
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Julius Werner <jwerner@chromium.org>
This commit is contained in:
Nico Huber
2020-07-18 14:45:23 +02:00
committed by Patrick Georgi
parent 14adb7eaa9
commit b2eafa666c
3 changed files with 4 additions and 4 deletions

View File

@ -170,8 +170,8 @@ static void cb_parse_sku_id(unsigned char *ptr, struct sysinfo_t *info)
#if CONFIG(LP_NVRAM)
static void cb_parse_optiontable(void *ptr, struct sysinfo_t *info)
{
/* ptr points to a coreboot table entry and is already virtual */
info->option_table = ptr;
/* ptr is already virtual, but we want to keep physical addresses */
info->cmos_option_table = virt_to_phys(ptr);
}
static void cb_parse_checksum(void *ptr, struct sysinfo_t *info)