coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
romstage.c
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #include <arch/exception.h>
4 #include <cbmem.h>
5 #include <soc/sdram.h>
6 #include <soc/timer.h>
7 #include <soc/mmu.h>
8 #include <console/console.h>
9 #include <program_loading.h>
10 #include <libbdk-hal/bdk-config.h>
11 #include <arch/stages.h>
12 
13 extern const struct bdk_devicetree_key_value devtree[];
14 
16 {
17  watchdog_poke(0);
18 
19  console_init();
21 
22  bdk_config_set_fdt(devtree);
23 
24  sdram_init();
25  soc_mmu_init();
26 
27  watchdog_poke(0);
28 
30  run_ramstage();
31 }
__weak void platform_romstage_main(void)
Definition: romstage.c:10
void exception_init(void)
Definition: exception.c:120
void sdram_init(void)
Definition: sdram.c:16
void cbmem_initialize_empty(void)
Definition: imd_cbmem.c:45
void console_init(void)
Definition: init.c:49
const struct bdk_devicetree_key_value devtree[]
Definition: bdk_devicetree.c:8
void run_ramstage(void)
Definition: prog_loaders.c:85
void soc_mmu_init(void)
Definition: mmu.c:9
void watchdog_poke(const size_t index)
Signal the watchdog that we are still running.
Definition: timer.c:174