CBMEM: Change declarations for initialization hooks

There are efforts to have bootflows that do not follow a traditional
bootblock-romstage-postcar-ramstage model. As part of that CBMEM
initialisation hooks will need to move from romstage to bootblock.

The interface towards platforms and drivers will change to use one of
CBMEM_CREATION_HOOK() or CBMEM_READY_HOOK(). Former will only be called
in the first stage with CBMEM available.

Change-Id: Ie24bf4e818ca69f539196c3a814f3c52d4103d7e
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/63375
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-by: Julius Werner <jwerner@chromium.org>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
This commit is contained in:
Kyösti Mälkki 2022-03-31 07:40:10 +03:00 committed by Arthur Heymans
parent 20a87c0bed
commit fa3bc049f5
26 changed files with 65 additions and 90 deletions

View File

@ -109,7 +109,7 @@ static void save_hob_list(int is_recovery)
*cbmem_loc = (uintptr_t)hob_list; *cbmem_loc = (uintptr_t)hob_list;
} }
ROMSTAGE_CBMEM_INIT_HOOK(save_hob_list); CBMEM_CREATION_HOOK(save_hob_list);
const void *fsp_get_hob_list(void) const void *fsp_get_hob_list(void)
{ {

View File

@ -680,7 +680,7 @@ static void migrate_ehci_debug(int is_recovery)
struct ehci_debug_info *dbg_info_cbmem; struct ehci_debug_info *dbg_info_cbmem;
int rv; int rv;
if (ENV_ROMSTAGE) { if (ENV_CREATES_CBMEM) {
/* Move state from CAR to CBMEM. */ /* Move state from CAR to CBMEM. */
struct ehci_debug_info *dbg_info = dbgp_ehci_info(); struct ehci_debug_info *dbg_info = dbgp_ehci_info();
dbg_info_cbmem = cbmem_add(CBMEM_ID_EHCI_DEBUG, dbg_info_cbmem = cbmem_add(CBMEM_ID_EHCI_DEBUG,
@ -706,9 +706,7 @@ static void migrate_ehci_debug(int is_recovery)
printk(BIOS_DEBUG, "usbdebug: " ENV_STRING " starting...\n"); printk(BIOS_DEBUG, "usbdebug: " ENV_STRING " starting...\n");
} }
ROMSTAGE_CBMEM_INIT_HOOK(migrate_ehci_debug); CBMEM_READY_HOOK(migrate_ehci_debug);
POSTCAR_CBMEM_INIT_HOOK(migrate_ehci_debug);
RAMSTAGE_CBMEM_INIT_HOOK(migrate_ehci_debug);
int dbgp_ep_is_active(struct dbgp_pipe *pipe) int dbgp_ep_is_active(struct dbgp_pipe *pipe)
{ {
@ -728,7 +726,7 @@ struct dbgp_pipe *dbgp_console_input(void)
void usbdebug_init(void) void usbdebug_init(void)
{ {
/* USB console init is done early in romstage, yet delayed to /* USB console init is done early in romstage, yet delayed to
* CBMEM_INIT_HOOKs for postcar and ramstage as we recover state * CBMEM_READY_HOOKs for postcar and ramstage as we recover state
* from CBMEM. * from CBMEM.
*/ */
if (CONFIG(USBDEBUG_IN_PRE_RAM) if (CONFIG(USBDEBUG_IN_PRE_RAM)

View File

@ -295,4 +295,4 @@ bool vpd_get_int(const char *const key, const enum vpd_region region, int *const
return true; return true;
} }
ROMSTAGE_CBMEM_INIT_HOOK(cbmem_add_cros_vpd) CBMEM_CREATION_HOOK(cbmem_add_cros_vpd);

View File

@ -106,49 +106,35 @@ void cbmem_get_region(void **baseptr, size_t *size);
void cbmem_list(void); void cbmem_list(void);
void cbmem_add_records_to_cbtable(struct lb_header *header); void cbmem_add_records_to_cbtable(struct lb_header *header);
#if ENV_RAMSTAGE #define _CBMEM_INIT_HOOK_UNUSED(init_fn_) __attribute__((unused)) \
#define ROMSTAGE_CBMEM_INIT_HOOK(init_fn_) __attribute__((unused)) \ static cbmem_init_hook_t init_fn_ ## _unused_ = init_fn_
static cbmem_init_hook_t init_fn_ ## _unused_rom_ = init_fn_;
#define RAMSTAGE_CBMEM_INIT_HOOK(init_fn_) \ #define _CBMEM_INIT_HOOK(init_fn_) \
static cbmem_init_hook_t init_fn_ ## _ptr_ __attribute__((used, \ static cbmem_init_hook_t init_fn_ ## _ptr_ __attribute__((used, \
section(".rodata.cbmem_init_hooks"))) = init_fn_; section(".rodata.cbmem_init_hooks"))) = init_fn_
#define POSTCAR_CBMEM_INIT_HOOK(init_fn_) __attribute__((unused)) \
static cbmem_init_hook_t init_fn_ ## _unused_pc_ = init_fn_;
#elif ENV_ROMSTAGE
#define ROMSTAGE_CBMEM_INIT_HOOK(init_fn_) \
static cbmem_init_hook_t init_fn_ ## _ptr_ __attribute__((used, \
section(".rodata.cbmem_init_hooks"))) = init_fn_;
#define RAMSTAGE_CBMEM_INIT_HOOK(init_fn_) __attribute__((unused)) \
static cbmem_init_hook_t init_fn_ ## _unused_ram_ = init_fn_;
#define POSTCAR_CBMEM_INIT_HOOK(init_fn_) __attribute__((unused)) \
static cbmem_init_hook_t init_fn_ ## _unused_pc_ = init_fn_;
#elif ENV_POSTCAR
#define ROMSTAGE_CBMEM_INIT_HOOK(init_fn_) __attribute__((unused)) \
static cbmem_init_hook_t init_fn_ ## _unused_rom_ = init_fn_;
#define RAMSTAGE_CBMEM_INIT_HOOK(init_fn_) __attribute__((unused)) \
static cbmem_init_hook_t init_fn_ ## _unused_ram_ = init_fn_;
#define POSTCAR_CBMEM_INIT_HOOK(init_fn_) \
static cbmem_init_hook_t init_fn_ ## _ptr_ __attribute__((used, \
section(".rodata.cbmem_init_hooks"))) = init_fn_;
#else
#define ROMSTAGE_CBMEM_INIT_HOOK(init_fn_) __attribute__((unused)) \
static cbmem_init_hook_t init_fn_ ## _unused_rom_ = init_fn_;
#define RAMSTAGE_CBMEM_INIT_HOOK(init_fn_) __attribute__((unused)) \
static cbmem_init_hook_t init_fn_ ## _unused_ram_ = init_fn_;
#define POSTCAR_CBMEM_INIT_HOOK(init_fn_) __attribute__((unused)) \
static cbmem_init_hook_t init_fn_ ## _unused_pc_ = init_fn_;
#endif /* ENV_RAMSTAGE */
/* Early hooks get executed before other hooks. Use sparingly for hooks that create /* Early hooks get executed before other hooks. Use sparingly for hooks that create
CBMEM regions which need to remain in a constant location across boot modes. */ CBMEM regions which need to remain in a constant location across boot modes. */
#if ENV_ROMSTAGE #define _CBMEM_INIT_HOOK_EARLY(init_fn_) \
#define ROMSTAGE_CBMEM_INIT_HOOK_EARLY(init_fn_) \
static cbmem_init_hook_t init_fn_ ## _ptr_ __attribute__((used, \ static cbmem_init_hook_t init_fn_ ## _ptr_ __attribute__((used, \
section(".rodata.cbmem_init_hooks_early"))) = init_fn_; section(".rodata.cbmem_init_hooks_early"))) = init_fn_
/* Use CBMEM_CREATION_HOOK for code that needs to be run when cbmem is initialized
for the first time. */
#if ENV_CREATES_CBMEM
#define CBMEM_CREATION_HOOK(x) _CBMEM_INIT_HOOK(x)
#else #else
#define ROMSTAGE_CBMEM_INIT_HOOK_EARLY(init_fn_) __attribute__((unused)) \ #define CBMEM_CREATION_HOOK(x) _CBMEM_INIT_HOOK_UNUSED(x)
static cbmem_init_hook_t init_fn_ ## _unused_rom_ = init_fn_; #endif
#endif /* ENV_ROMSTAGE */
/* Use CBMEM_READY_HOOK for code that needs to run in all stages that have cbmem. */
#if ENV_HAS_CBMEM
#define CBMEM_READY_HOOK(x) _CBMEM_INIT_HOOK(x)
#define CBMEM_READY_HOOK_EARLY(x) _CBMEM_INIT_HOOK_EARLY(x)
#else
#define CBMEM_READY_HOOK(x) _CBMEM_INIT_HOOK_UNUSED(x)
#define CBMEM_READY_HOOK_EARLY(x) _CBMEM_INIT_HOOK_UNUSED(x)
#endif
/* /*
* Returns 0 for the stages where we know that cbmem does not come online. * Returns 0 for the stages where we know that cbmem does not come online.

View File

@ -292,6 +292,9 @@
#define ENV_INITIAL_STAGE ENV_BOOTBLOCK #define ENV_INITIAL_STAGE ENV_BOOTBLOCK
#endif #endif
#define ENV_CREATES_CBMEM ENV_ROMSTAGE
#define ENV_HAS_CBMEM (ENV_ROMSTAGE | ENV_POSTCAR | ENV_RAMSTAGE)
#if ENV_X86 #if ENV_X86
#define ENV_HAS_SPINLOCKS !ENV_ROMSTAGE_OR_BEFORE #define ENV_HAS_SPINLOCKS !ENV_ROMSTAGE_OR_BEFORE
#elif ENV_RISCV #elif ENV_RISCV

View File

@ -32,7 +32,7 @@ static void switch_to_postram_cache(int unused)
mem_pool_init(&cbfs_cache, _postram_cbfs_cache, REGION_SIZE(postram_cbfs_cache), mem_pool_init(&cbfs_cache, _postram_cbfs_cache, REGION_SIZE(postram_cbfs_cache),
CONFIG_CBFS_CACHE_ALIGN); CONFIG_CBFS_CACHE_ALIGN);
} }
ROMSTAGE_CBMEM_INIT_HOOK(switch_to_postram_cache); CBMEM_CREATION_HOOK(switch_to_postram_cache);
enum cb_err _cbfs_boot_lookup(const char *name, bool force_ro, enum cb_err _cbfs_boot_lookup(const char *name, bool force_ro,
union cbfs_mdata *mdata, struct region_device *rdev) union cbfs_mdata *mdata, struct region_device *rdev)
@ -693,5 +693,5 @@ static void cbfs_mcache_migrate(int unused)
mcache_to_cbmem(vboot_get_cbfs_boot_device(), CBMEM_ID_CBFS_RW_MCACHE); mcache_to_cbmem(vboot_get_cbfs_boot_device(), CBMEM_ID_CBFS_RW_MCACHE);
mcache_to_cbmem(cbfs_get_boot_device(true), CBMEM_ID_CBFS_RO_MCACHE); mcache_to_cbmem(cbfs_get_boot_device(true), CBMEM_ID_CBFS_RO_MCACHE);
} }
ROMSTAGE_CBMEM_INIT_HOOK(cbfs_mcache_migrate) CBMEM_CREATION_HOOK(cbfs_mcache_migrate);
#endif #endif

View File

@ -167,12 +167,10 @@ static void cbmemc_reinit(int is_recovery)
copy_console_buffer(previous_cons_p); copy_console_buffer(previous_cons_p);
} }
/* Run the romstage hook early so that the console region is one of the earliest created, and /* Run this hook early so that the console region is one of the earliest created, and
therefore more likely to stay in the same place even across different boot modes where some therefore more likely to stay in the same place even across different boot modes where some
other regions may sometimes not get created (e.g. RW_MCACHE in vboot recovery mode). */ other regions may sometimes not get created (e.g. RW_MCACHE in vboot recovery mode). */
ROMSTAGE_CBMEM_INIT_HOOK_EARLY(cbmemc_reinit) CBMEM_READY_HOOK_EARLY(cbmemc_reinit);
RAMSTAGE_CBMEM_INIT_HOOK(cbmemc_reinit)
POSTCAR_CBMEM_INIT_HOOK(cbmemc_reinit)
#if CONFIG(CONSOLE_CBMEM_DUMP_TO_UART) #if CONFIG(CONSOLE_CBMEM_DUMP_TO_UART)
void cbmem_dump_console_to_uart(void) void cbmem_dump_console_to_uart(void)

View File

@ -158,6 +158,4 @@ static void stage_cache_setup(int is_recovery)
stage_cache_create_empty(); stage_cache_create_empty();
} }
ROMSTAGE_CBMEM_INIT_HOOK(stage_cache_setup) CBMEM_READY_HOOK(stage_cache_setup);
RAMSTAGE_CBMEM_INIT_HOOK(stage_cache_setup)
POSTCAR_CBMEM_INIT_HOOK(stage_cache_setup)

View File

@ -315,13 +315,11 @@ static void fmap_add_cbmem_cache(void)
static void fmap_setup_cbmem_cache(int unused) static void fmap_setup_cbmem_cache(int unused)
{ {
if (ENV_ROMSTAGE) if (ENV_CREATES_CBMEM)
fmap_add_cbmem_cache(); fmap_add_cbmem_cache();
/* Finally advertise the cache for the current stage */ /* Finally advertise the cache for the current stage */
fmap_register_cbmem_cache(); fmap_register_cbmem_cache();
} }
ROMSTAGE_CBMEM_INIT_HOOK(fmap_setup_cbmem_cache) CBMEM_READY_HOOK(fmap_setup_cbmem_cache);
RAMSTAGE_CBMEM_INIT_HOOK(fmap_setup_cbmem_cache)
POSTCAR_CBMEM_INIT_HOOK(fmap_setup_cbmem_cache)

View File

@ -17,7 +17,7 @@ static struct imd imd;
void *cbmem_top(void) void *cbmem_top(void)
{ {
if (ENV_ROMSTAGE) { if (ENV_CREATES_CBMEM) {
static void *top; static void *top;
if (top) if (top)
return top; return top;
@ -49,9 +49,8 @@ void cbmem_initialize_empty(void)
static void cbmem_top_init_once(void) static void cbmem_top_init_once(void)
{ {
/* Call one-time hook on expected cbmem init during boot. This sequence /* Call one-time hook on expected cbmem init during boot. */
assumes first init call is in romstage. */ if (!ENV_CREATES_CBMEM)
if (!ENV_ROMSTAGE)
return; return;
/* The test is only effective on X86 and when address hits UC memory. */ /* The test is only effective on X86 and when address hits UC memory. */
@ -106,7 +105,7 @@ int cbmem_initialize_id_size(u32 id, u64 size)
* if the imd area was recovered in romstage then S3 resume path * if the imd area was recovered in romstage then S3 resume path
* is being taken. * is being taken.
*/ */
if (ENV_ROMSTAGE) if (ENV_CREATES_CBMEM)
imd_lockdown(&imd); imd_lockdown(&imd);
/* Add the specified range first */ /* Add the specified range first */
@ -206,8 +205,7 @@ void cbmem_get_region(void **baseptr, size_t *size)
imd_region_used(&imd, baseptr, size); imd_region_used(&imd, baseptr, size);
} }
#if ENV_PAYLOAD_LOADER || (CONFIG(EARLY_CBMEM_LIST) \ #if ENV_PAYLOAD_LOADER || (CONFIG(EARLY_CBMEM_LIST) && ENV_HAS_CBMEM)
&& (ENV_POSTCAR || ENV_ROMSTAGE))
/* /*
* -fdata-sections doesn't work so well on read only strings. They all * -fdata-sections doesn't work so well on read only strings. They all
* get put in the same section even though those strings may never be * get put in the same section even though those strings may never be

View File

@ -24,7 +24,7 @@
*(.text); *(.text);
*(.text.*); *(.text.*);
#if ENV_RAMSTAGE || ENV_ROMSTAGE || ENV_POSTCAR #if ENV_HAS_CBMEM
. = ALIGN(ARCH_POINTER_ALIGN_SIZE); . = ALIGN(ARCH_POINTER_ALIGN_SIZE);
_cbmem_init_hooks = .; _cbmem_init_hooks = .;
KEEP(*(.rodata.cbmem_init_hooks_early)); KEEP(*(.rodata.cbmem_init_hooks_early));

View File

@ -215,7 +215,7 @@ static void timestamp_reinit(int is_recovery)
/* First time into romstage we make a clean new table. For platforms that travel /* First time into romstage we make a clean new table. For platforms that travel
through this path on resume, ARCH_X86 S3, timestamps are also reset. */ through this path on resume, ARCH_X86 S3, timestamps are also reset. */
if (ENV_ROMSTAGE) { if (ENV_CREATES_CBMEM) {
ts_cbmem_table = timestamp_alloc_cbmem_table(); ts_cbmem_table = timestamp_alloc_cbmem_table();
} else { } else {
/* Find existing table in cbmem. */ /* Find existing table in cbmem. */
@ -228,7 +228,7 @@ static void timestamp_reinit(int is_recovery)
return; return;
} }
if (ENV_ROMSTAGE) if (ENV_CREATES_CBMEM)
timestamp_sync_cache_to_cbmem(ts_cbmem_table); timestamp_sync_cache_to_cbmem(ts_cbmem_table);
/* Seed the timestamp tick frequency in ENV_PAYLOAD_LOADER. */ /* Seed the timestamp tick frequency in ENV_PAYLOAD_LOADER. */
@ -279,9 +279,7 @@ uint32_t get_us_since_boot(void)
return (timestamp_get() - ts->base_time) / ts->tick_freq_mhz; return (timestamp_get() - ts->base_time) / ts->tick_freq_mhz;
} }
ROMSTAGE_CBMEM_INIT_HOOK(timestamp_reinit) CBMEM_READY_HOOK(timestamp_reinit);
POSTCAR_CBMEM_INIT_HOOK(timestamp_reinit)
RAMSTAGE_CBMEM_INIT_HOOK(timestamp_reinit)
/* Provide default timestamp implementation using monotonic timer. */ /* Provide default timestamp implementation using monotonic timer. */
uint64_t __weak timestamp_get(void) uint64_t __weak timestamp_get(void)

View File

@ -28,7 +28,7 @@ void setup_dram_mappings(enum dram_state dram)
/* Map DMA memory */ /* Map DMA memory */
mmu_config_range(DMA_START, DMA_SIZE, DCACHE_OFF); mmu_config_range(DMA_START, DMA_SIZE, DCACHE_OFF);
/* Mark cbmem backing store as ready. */ /* Mark cbmem backing store as ready. */
if (ENV_ROMSTAGE) if (ENV_CREATES_CBMEM)
ipq_cbmem_backing_store_ready(); ipq_cbmem_backing_store_ready();
} else { } else {
mmu_disable_range(DRAM_START, DRAM_SIZE); mmu_disable_range(DRAM_START, DRAM_SIZE);

View File

@ -25,7 +25,7 @@ void setup_dram_mappings(enum dram_state dram)
mmu_config_range(DRAM_START, DRAM_SIZE, DCACHE_WRITEBACK); mmu_config_range(DRAM_START, DRAM_SIZE, DCACHE_WRITEBACK);
/* Map DMA memory */ /* Map DMA memory */
mmu_config_range(DMA_START, DMA_SIZE, DCACHE_OFF); mmu_config_range(DMA_START, DMA_SIZE, DCACHE_OFF);
if (ENV_ROMSTAGE) if (ENV_CREATES_CBMEM)
/* Mark cbmem backing store as ready. */ /* Mark cbmem backing store as ready. */
ipq_cbmem_backing_store_ready(); ipq_cbmem_backing_store_ready();
} else { } else {

View File

@ -39,8 +39,8 @@ struct tcpa_table *tcpa_log_init(void)
if (!cbmem_possibly_online() && if (!cbmem_possibly_online() &&
!CONFIG(VBOOT_RETURN_FROM_VERSTAGE)) !CONFIG(VBOOT_RETURN_FROM_VERSTAGE))
return (struct tcpa_table *)_tpm_tcpa_log; return (struct tcpa_table *)_tpm_tcpa_log;
else if (ENV_ROMSTAGE && else if (ENV_CREATES_CBMEM
!CONFIG(VBOOT_RETURN_FROM_VERSTAGE)) { && !CONFIG(VBOOT_RETURN_FROM_VERSTAGE)) {
tclt = tcpa_cbmem_init(); tclt = tcpa_cbmem_init();
if (!tclt) if (!tclt)
return (struct tcpa_table *)_tpm_tcpa_log; return (struct tcpa_table *)_tpm_tcpa_log;
@ -154,7 +154,7 @@ static void recover_tcpa_log(int is_recovery)
memcpy(tce->digest, preram_log->entries[i].digest, tce->digest_length); memcpy(tce->digest, preram_log->entries[i].digest, tce->digest_length);
} }
} }
ROMSTAGE_CBMEM_INIT_HOOK(recover_tcpa_log); CBMEM_CREATION_HOOK(recover_tcpa_log);
#endif #endif
BOOT_STATE_INIT_ENTRY(BS_PAYLOAD_BOOT, BS_ON_ENTRY, tcpa_log_dump, NULL); BOOT_STATE_INIT_ENTRY(BS_PAYLOAD_BOOT, BS_ON_ENTRY, tcpa_log_dump, NULL);

View File

@ -96,4 +96,4 @@ static void vboot_setup_cbmem(int unused)
assert(rv == VB2_SUCCESS); assert(rv == VB2_SUCCESS);
} }
ROMSTAGE_CBMEM_INIT_HOOK(vboot_setup_cbmem) CBMEM_CREATION_HOOK(vboot_setup_cbmem);

View File

@ -31,4 +31,4 @@ static void add_chipset_state_cbmem(int unused)
memcpy(state, &chipset_state, sizeof(*state)); memcpy(state, &chipset_state, sizeof(*state));
} }
ROMSTAGE_CBMEM_INIT_HOOK(add_chipset_state_cbmem); CBMEM_CREATION_HOOK(add_chipset_state_cbmem);

View File

@ -127,7 +127,7 @@ static void ConcatenateNodes(BIOS_BUFFER_NODE *FirstNodePtr,
memset(SecondNodePtr, 0, sizeof(BIOS_BUFFER_NODE)); memset(SecondNodePtr, 0, sizeof(BIOS_BUFFER_NODE));
} }
ROMSTAGE_CBMEM_INIT_HOOK(EmptyHeap) CBMEM_CREATION_HOOK(EmptyHeap);
AGESA_STATUS agesa_AllocateBuffer(uint32_t Func, uintptr_t Data, AGESA_STATUS agesa_AllocateBuffer(uint32_t Func, uintptr_t Data,
void *ConfigPtr) void *ConfigPtr)

View File

@ -202,4 +202,4 @@ static void migrate_power_state(int is_recovery)
acpi_pm_gpe_add_events_print_events(); acpi_pm_gpe_add_events_print_events();
} }
} }
ROMSTAGE_CBMEM_INIT_HOOK(migrate_power_state) CBMEM_CREATION_HOOK(migrate_power_state);

View File

@ -32,7 +32,7 @@ static void migrate_power_state(int is_recovery)
} }
memcpy(ps_cbmem, ps_car, sizeof(*ps_cbmem)); memcpy(ps_cbmem, ps_car, sizeof(*ps_cbmem));
} }
ROMSTAGE_CBMEM_INIT_HOOK(migrate_power_state) CBMEM_CREATION_HOOK(migrate_power_state);
static struct chipset_power_state *fill_power_state(void) static struct chipset_power_state *fill_power_state(void)
{ {

View File

@ -26,7 +26,7 @@ static void migrate_power_state(int is_recovery)
} }
memcpy(ps_cbmem, &power_state, sizeof(*ps_cbmem)); memcpy(ps_cbmem, &power_state, sizeof(*ps_cbmem));
} }
ROMSTAGE_CBMEM_INIT_HOOK(migrate_power_state); CBMEM_CREATION_HOOK(migrate_power_state);
struct chipset_power_state *fill_power_state(void) struct chipset_power_state *fill_power_state(void)
{ {

View File

@ -30,7 +30,7 @@ static void migrate_power_state(int is_recovery)
} }
memcpy(ps_cbmem, ps_car, sizeof(*ps_cbmem)); memcpy(ps_cbmem, ps_car, sizeof(*ps_cbmem));
} }
ROMSTAGE_CBMEM_INIT_HOOK(migrate_power_state) CBMEM_CREATION_HOOK(migrate_power_state);
/* Return 0, 3, or 5 to indicate the previous sleep state. */ /* Return 0, 3, or 5 to indicate the previous sleep state. */
static int prev_sleep_state(const struct chipset_power_state *ps) static int prev_sleep_state(const struct chipset_power_state *ps)

View File

@ -85,7 +85,7 @@ static void migrate_power_state(int is_recovery)
} }
memcpy(ps_cbmem, &power_state, sizeof(*ps_cbmem)); memcpy(ps_cbmem, &power_state, sizeof(*ps_cbmem));
} }
ROMSTAGE_CBMEM_INIT_HOOK(migrate_power_state) CBMEM_CREATION_HOOK(migrate_power_state);
static void print_num_status_bits(int num_bits, uint32_t status, static void print_num_status_bits(int num_bits, uint32_t status,
const char *const bit_names[]) const char *const bit_names[])

View File

@ -159,7 +159,7 @@ void storage_test(uint32_t bar, int full_initialization)
/* Get the structure addresses */ /* Get the structure addresses */
media = NULL; media = NULL;
if (ENV_ROMSTAGE) if (ENV_CREATES_CBMEM)
media = (struct storage_media *)drivers_storage; media = (struct storage_media *)drivers_storage;
else else
media = cbmem_find(CBMEM_ID_STORAGE_DATA); media = cbmem_find(CBMEM_ID_STORAGE_DATA);
@ -225,7 +225,6 @@ void storage_test(uint32_t bar, int full_initialization)
} }
#endif #endif
#if ENV_ROMSTAGE
static void copy_storage_structures(int is_recovery) static void copy_storage_structures(int is_recovery)
{ {
struct storage_media *media; struct storage_media *media;
@ -242,5 +241,4 @@ static void copy_storage_structures(int is_recovery)
media->ctrlr = &sdhci_ctrlr->sd_mmc_ctrlr; media->ctrlr = &sdhci_ctrlr->sd_mmc_ctrlr;
} }
ROMSTAGE_CBMEM_INIT_HOOK(copy_storage_structures); CBMEM_CREATION_HOOK(copy_storage_structures);
#endif

View File

@ -146,7 +146,7 @@ static void add_mem_chip_info(int unused)
fill_dram_info(mc, curr_ddr_info); fill_dram_info(mc, curr_ddr_info);
} }
ROMSTAGE_CBMEM_INIT_HOOK(add_mem_chip_info); CBMEM_CREATION_HOOK(add_mem_chip_info);
static int run_dram_blob(struct dramc_param *dparam) static int run_dram_blob(struct dramc_param *dparam)
{ {

View File

@ -19,7 +19,7 @@
#define QCLIB_VERSION 0 #define QCLIB_VERSION 0
/* store QcLib return data until ROMSTAGE_CBMEM_INIT_HOOK runs */ /* store QcLib return data until CBMEM_CREATION_HOOK runs */
static void *mem_chip_addr; static void *mem_chip_addr;
static void write_mem_chip_information(struct qclib_cb_if_table_entry *te) static void write_mem_chip_information(struct qclib_cb_if_table_entry *te)
@ -51,7 +51,7 @@ static void add_mem_chip_info(int unused)
memcpy(mem_region_base, mem_chip_addr, size); memcpy(mem_region_base, mem_chip_addr, size);
} }
ROMSTAGE_CBMEM_INIT_HOOK(add_mem_chip_info); CBMEM_CREATION_HOOK(add_mem_chip_info);
struct qclib_cb_if_table qclib_cb_if_table = { struct qclib_cb_if_table qclib_cb_if_table = {
.magic = QCLIB_MAGIC_NUMBER, .magic = QCLIB_MAGIC_NUMBER,