arch/x86: Refactor CAR_GLOBAL quirk for FSP1.0
These platforms return to romstage from FSP only after already having torn CAR down. A copy of the entire CAR region is available and discoverable via HOB. Previously, CBMEM console detected on-the-fly that CAR migration had happened and relocated cbmem_console_p accoringlin with car_sync_var(). However, if the CAR_GLOBAL pointing to another object inside CAR is a relative offset instead, we have a more generic solution that can be used with timestamps code as well. Change-Id: Ica877b47e68d56189e9d998b5630019d4328a419 Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/35140 Reviewed-by: Aaron Durbin <adurbin@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
committed by
Martin Roth
parent
03026a2a7d
commit
6fdb223859
@ -73,12 +73,12 @@ static u8 static_console[STATIC_CONSOLE_SIZE];
|
||||
|
||||
static struct cbmem_console *current_console(void)
|
||||
{
|
||||
return car_sync_var(cbmem_console_p);
|
||||
return car_get_ptr(cbmem_console_p);
|
||||
}
|
||||
|
||||
static void current_console_set(struct cbmem_console *new_console_p)
|
||||
{
|
||||
car_set_var(cbmem_console_p, new_console_p);
|
||||
car_set_ptr(cbmem_console_p, new_console_p);
|
||||
}
|
||||
|
||||
static int buffer_valid(struct cbmem_console *cbm_cons_p, u32 total_space)
|
||||
|
Reference in New Issue
Block a user