coreboot/src/cpu/x86
Arthur Heymans 3134a81525 cpu/x86/cache: CLFLUSH programs to memory before running
When cbmem is initialized in romstage and postcar placed in the stage
cache + cbmem where it is run, the assumption is made that these are
all in UC memory such that calling INVD in postcar is OK.

For performance reasons (e.g. postcar decompression) it is desirable
to cache cbmem and the stage cache during romstage.

Another reason is that AGESA sets up MTRR during romstage to cache all
dram, which is currently worked around by using additional MTRR's to
make that UC.

TESTED on asus/p5ql-em, up/squared on both regular and S3 resume
       bootpath. Sometimes there are minimal performance improvements
       when cbmem is cached (few ms).

Change-Id: I7ff2a57aee620908b71829457ea0f5a0c410ec5b
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/37196
Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-03-13 13:42:32 +00:00
..
64bit cpu/x86/64bit: Fix building with -jx 2022-10-12 12:04:00 +00:00
cache cpu/x86/cache: CLFLUSH programs to memory before running 2023-03-13 13:42:32 +00:00
lapic cpu/x86: Drop LEGACY_SMP_INIT 2022-11-07 13:59:35 +00:00
mtrr cpu/x86/mtrr: rename local cpu_idx variable and make it const 2022-12-16 00:30:12 +00:00
name cpu: Include <cpu/cpu.h> instead of <arch/cpu.h> 2022-11-08 14:38:28 +00:00
pae cpu: Include <cpu/cpu.h> instead of <arch/cpu.h> 2022-11-08 14:38:28 +00:00
smm cpu/x86/smm: Add PCI resource store functionality 2023-03-05 15:31:07 +00:00
tsc cpu: Include <cpu/cpu.h> instead of <arch/cpu.h> 2022-11-08 14:38:28 +00:00
backup_default_smm.c cpu/x86: Clean up includes 2022-10-26 16:37:34 +00:00
early_reset.S
entry16.S
entry32.S
Kconfig cpu/x86/cache: CLFLUSH programs to memory before running 2023-03-13 13:42:32 +00:00
Kconfig.debug_cpu cpu/x86/Kconfig.debug_cpu: Drop unused symbol 2022-11-10 00:20:38 +00:00
Makefile.inc cpu/x86/cache: CLFLUSH programs to memory before running 2023-03-13 13:42:32 +00:00
mp_init.c mp_init: Wait longer for APs to check in 2023-03-10 20:01:22 +00:00
reset16.S
sipi_vector.S cpu/x86: Set thread local storage in C code 2022-11-12 14:23:51 +00:00
smi_trigger.c cpu/x86: Clean up includes 2022-10-26 16:37:34 +00:00
sse_enable.inc