Julius Werner has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/37478 )
Change subject: libpayload: Cache physical cbmem console address ......................................................................
Patch Set 1:
(1 comment)
https://review.coreboot.org/c/coreboot/+/37478/1/payloads/libpayload/drivers... File payloads/libpayload/drivers/cbmem_console.c:
https://review.coreboot.org/c/coreboot/+/37478/1/payloads/libpayload/drivers... PS1, Line 60: just keep the physical address which won't break on relocation. */ So if this is a thing that happens, then why do we call phys_to_virt() in get_cbmem_ptr() from the coreboot table parsing code, put the result of that in lib_sysinfo, then have all these individual drivers virt_to_phys() that again, and then phys_to_virt() it again on every use? Wouldn't it make much more sense to change lib_sysinfo to only store physical uintptr_ts?