Hook up MRC cache update
Requirements: - must be in ramstage (locking flash while executing code from there might not work) - must be after cbmem is reinitialized (so the mrc cache copy of the current run can be found) Change-Id: I8028fb073349ce2b027ef5f8397dc1a1b8b31c02 Signed-off-by: Patrick Georgi <patrick@georgi-clan.de> Reviewed-on: http://review.coreboot.org/1002 Tested-by: build bot (Jenkins) Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
This commit is contained in:
committed by
Stefan Reinauer
parent
1244f4b52f
commit
bb11e60cb2
@ -130,6 +130,11 @@ void hardwaremain(int boot_complete)
|
|||||||
timestamp_add(TS_DEVICE_ENABLE, timestamps[3]);
|
timestamp_add(TS_DEVICE_ENABLE, timestamps[3]);
|
||||||
timestamp_add(TS_DEVICE_INITIALIZE, timestamps[4]);
|
timestamp_add(TS_DEVICE_INITIALIZE, timestamps[4]);
|
||||||
timestamp_add(TS_DEVICE_DONE, timestamps[5]);
|
timestamp_add(TS_DEVICE_DONE, timestamps[5]);
|
||||||
|
timestamp_add_now(TS_CBMEM_POST);
|
||||||
|
|
||||||
|
if (cbmem_post_handling)
|
||||||
|
cbmem_post_handling();
|
||||||
|
|
||||||
timestamp_add_now(TS_WRITE_TABLES);
|
timestamp_add_now(TS_WRITE_TABLES);
|
||||||
|
|
||||||
/* Now that we have collected all of our information
|
/* Now that we have collected all of our information
|
||||||
|
@ -73,6 +73,7 @@ extern struct cbmem_entry *get_cbmem_toc(void);
|
|||||||
|
|
||||||
#ifndef __PRE_RAM__
|
#ifndef __PRE_RAM__
|
||||||
void set_cbmem_toc(struct cbmem_entry *);
|
void set_cbmem_toc(struct cbmem_entry *);
|
||||||
|
void __attribute__((weak)) cbmem_post_handling(void);
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
@ -47,6 +47,7 @@ enum timestamp_id {
|
|||||||
TS_DEVICE_ENABLE = 50,
|
TS_DEVICE_ENABLE = 50,
|
||||||
TS_DEVICE_INITIALIZE = 60,
|
TS_DEVICE_INITIALIZE = 60,
|
||||||
TS_DEVICE_DONE = 70,
|
TS_DEVICE_DONE = 70,
|
||||||
|
TS_CBMEM_POST = 75,
|
||||||
TS_WRITE_TABLES = 80,
|
TS_WRITE_TABLES = 80,
|
||||||
TS_LOAD_PAYLOAD = 90,
|
TS_LOAD_PAYLOAD = 90,
|
||||||
TS_ACPI_WAKE_JUMP = 98,
|
TS_ACPI_WAKE_JUMP = 98,
|
||||||
|
@ -33,6 +33,7 @@
|
|||||||
#include <bitops.h>
|
#include <bitops.h>
|
||||||
#include <cpu/cpu.h>
|
#include <cpu/cpu.h>
|
||||||
#include <boot/tables.h>
|
#include <boot/tables.h>
|
||||||
|
#include <cbmem.h>
|
||||||
#include "chip.h"
|
#include "chip.h"
|
||||||
#include "sandybridge.h"
|
#include "sandybridge.h"
|
||||||
|
|
||||||
@ -77,7 +78,6 @@ int add_northbridge_resources(struct lb_memory *mem)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void cbmem_post_handling(void);
|
|
||||||
void cbmem_post_handling(void)
|
void cbmem_post_handling(void)
|
||||||
{
|
{
|
||||||
update_mrc_cache();
|
update_mrc_cache();
|
||||||
@ -149,10 +149,6 @@ static void add_fixed_resources(struct device *dev, int index)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#if CONFIG_WRITE_HIGH_TABLES
|
|
||||||
#include <cbmem.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static void pci_domain_set_resources(device_t dev)
|
static void pci_domain_set_resources(device_t dev)
|
||||||
{
|
{
|
||||||
uint64_t tom, me_base, touud;
|
uint64_t tom, me_base, touud;
|
||||||
|
Reference in New Issue
Block a user