![]() |
coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
|
Go to the source code of this file.
Data Structures | |
struct | postcar_frame |
Functions | |
void | mainboard_romstage_entry (void) |
int | postcar_frame_init (struct postcar_frame *pcf, size_t stack_size) |
void | postcar_frame_add_mtrr (struct postcar_frame *pcf, uintptr_t addr, size_t size, int type) |
void | postcar_frame_add_romcache (struct postcar_frame *pcf, int type) |
void | fill_postcar_frame (struct postcar_frame *pcf) |
void | prepare_and_run_postcar (struct postcar_frame *pcf) |
void | run_postcar_phase (struct postcar_frame *pcf) |
void | late_car_teardown (void) |
void | postcar_enable_tseg_cache (struct postcar_frame *pcf) |
void fill_postcar_frame | ( | struct postcar_frame * | pcf | ) |
Definition at line 13 of file car.c.
References ALIGN, ALIGN_DOWN, ALIGN_UP, BIOS_DEBUG, CACHE_TMP_RAMTOP, cbmem_get_region(), cbmem_top(), CONFIG, fast_spi_cache_ext_bios_postcar(), MiB, MTRR_TYPE_WRBACK, MTRR_TYPE_WRTHROUGH, northbridge_get_tseg_base(), northbridge_get_tseg_size(), postcar_enable_tseg_cache(), postcar_frame_add_mtrr(), postcar_frame_add_romcache(), printk, postcar_frame::skip_common_mtrr, and top_of_low_usable_memory().
Referenced by prepare_and_run_postcar().
Definition at line 15 of file postcar.c.
References fsp_temp_ram_exit().
Referenced by main().
Definition at line 26 of file car.c.
References ACPI_S3, BIOS_DEBUG, BIOS_ERR, BIOS_SPEW, BOOT_PATH_NORMAL, BOOT_PATH_RESET, BOOT_PATH_RESUME, BOOT_PATH_WARM_RESET, cache_as_ram_stage_main(), cbfs_map(), cbmem_initialize_empty(), cbmem_recovery(), chipset_init(), chipset_prev_sleep_state(), CONFIG, configure_dpr(), console_init(), cse_fw_sync(), cse_get_telemetry_data(), D0F0_DEVEN, D31F0_GEN_PMCON_3, die(), die_with_post_code, disable_rom_shadow(), dmibar_clrbits16, dump_spd_registers, early_pch_init(), early_pch_reset_pmcon(), early_pmc_init(), early_tco_init(), early_thermal_init(), early_usb_init(), elog_boot_notify(), sysinfo::enable_igd, sysinfo::enable_peg, enable_usb_bar(), device::enabled, enter_raminit_or_reset(), fill_power_state(), find_fsp(), fixup_i945gm_errata(), fsp_find_extension_hob_by_guid(), fsp_memory_init(), fsp_version, get_gmch_info(), get_mb_spd_addrmap(), gfx_init(), gm45_early_init(), gm45_early_reset(), gm45_late_init(), gpio_configure_pads(), haswell_early_initialization(), haswell_unhide_peg(), HECI1_BASE_ADDRESS, heci_init(), hob_variable_guid, chipset_power_state::hsio_checksum, chipset_power_state::hsio_version, i82371eb_early_init(), i82801dx_early_init(), i82801gx_early_init(), i82801ix_dmi_poll_vc1(), i82801ix_dmi_setup(), i82801ix_early_init(), i82801jx_early_init(), i945_early_initialization(), i945_late_initialization(), init_iommu(), init_pm(), intel_early_me_status(), intel_me_hsio_version(), intel_me_status(), intel_txt_log_acm_error(), intel_txt_log_spad(), intel_txt_memory_has_secrets(), intel_txt_romstage_init(), ironlake_early_initialization(), IRONLAKE_MOBILE, LPC_DEV, mainboard_config_gpios(), mainboard_early_init(), mainboard_fill_mrc_params(), mainboard_get_spd_map(), mainboard_gpio_map, mainboard_late_rcba_config(), mainboard_lp_gpio_map, mainboard_lpc_decode(), mainboard_machine_check(), mainboard_post_raminit(), mainboard_pre_raminit(), mainboard_pre_raminit_config(), mainboard_rtc_failed(), mainboard_save_dimm_info(), mainboard_usb_ports, mb_get_spd_map(), mb_late_romstage_setup(), mb_pirq_setup(), mb_post_raminit_setup(), mb_pre_raminit_setup(), MCH_DEV, mchbar_read16(), mchbar_read32(), mchbar_write16(), memset(), mrc_cache_stash_data(), MRC_VARIABLE_DATA, northbridge_romstage_finalize(), NULL, pch_early_init(), pch_thermal_configuration(), pci_and_config32(), PCI_DEV, pci_read_config16(), pci_read_config8(), pci_write_config16(), pcidev_on_root(), pcie_init(), perform_raminit(), pineview_early_init(), pmc_fill_power_state(), pmc_get_power_state(), pmc_set_disb(), PMSTS, PMSTS_MCHBAR, PMSTS_WARM_RESET, post_code, POST_INVALID_CBFS, power_state, pre_mem_debug_init(), chipset_power_state::prev_sleep_state, prev_sleep_state(), printk, punit_init(), raminit(), rcba_config(), read32(), report_platform_info(), romstage_handoff_init(), rtc_init(), save_dimm_info(), SD_MMC_DEV, SD_MMC_FUNC, sdram_initialize(), set_max_freq(), setup_pch_gpios(), setup_pch_lp_gpios(), smbus_common_init(), soc_early_romstage_init(), soc_get_rtc_failed(), southbridge_configure_default_intmap(), southbridge_detect_s3_resume(), southbridge_rcba_config(), sysinfo::spd_map, SSKPD, SSKPD_HI, SSKPD_MCHBAR, storage_test(), storage_test_complete(), storage_test_init(), system_reset(), systemagent_early_init(), timestamp_add_now(), TS_CSE_FW_SYNC_END, TS_CSE_FW_SYNC_START, TS_INITRAM_END, TS_INITRAM_START, txt_dump_regions(), TXT_ERROR, unlock_pam_regions(), variant_romstage_entry(), variant_romstage_gpio_table(), x4x_early_init(), and x4x_late_init().
Referenced by car_stage_entry(), and romstage_main().
void postcar_enable_tseg_cache | ( | struct postcar_frame * | pcf | ) |
Definition at line 159 of file postcar_loader.c.
References MTRR_TYPE_WRBACK, postcar_frame_add_mtrr(), and smm_region().
Referenced by car_stage_entry(), and fill_postcar_frame().
void postcar_frame_add_mtrr | ( | struct postcar_frame * | pcf, |
uintptr_t | addr, | ||
size_t | size, | ||
int | type | ||
) |
Definition at line 71 of file postcar_loader.c.
References addr, postcar_frame::ctx, postcar_var_mtrr_set(), type, and var_mtrr_set_with_cb().
Referenced by car_stage_entry(), fast_spi_cache_ext_bios_postcar(), fill_postcar_frame(), postcar_enable_tseg_cache(), postcar_frame_add_romcache(), and recover_postcar_frame().
void postcar_frame_add_romcache | ( | struct postcar_frame * | pcf, |
int | type | ||
) |
Definition at line 77 of file postcar_loader.c.
References CACHE_ROM_BASE, CACHE_ROM_SIZE, CONFIG, postcar_frame_add_mtrr(), and type.
Referenced by car_stage_entry(), fill_postcar_frame(), and postcar_frame_common_mtrrs().
int postcar_frame_init | ( | struct postcar_frame * | pcf, |
size_t | stack_size | ||
) |
Definition at line 30 of file postcar_loader.c.
References BIOS_ERR, cbmem_add(), CBMEM_ID_ROMSTAGE_RAM_STACK, KiB, NULL, postcar_frame_prepare(), printk, and postcar_frame::stack.
Referenced by car_stage_entry(), prepare_and_run_postcar(), and romstage_main().
void prepare_and_run_postcar | ( | struct postcar_frame * | pcf | ) |
Definition at line 95 of file postcar_loader.c.
References die(), fill_postcar_frame(), postcar_frame_common_mtrrs(), postcar_frame_init(), and run_postcar_phase().
Referenced by romstage_main().
void run_postcar_phase | ( | struct postcar_frame * | pcf | ) |
Definition at line 175 of file postcar_loader.c.
References prog::arg, cbmem_top(), console_time_report(), finalize_load(), load_postcar_cbfs(), NULL, postcar_cache_invalid(), postcar_commit_mtrrs(), prog_entry(), PROG_INIT, PROG_POSTCAR, prog_run(), prog_set_arg(), resume_from_stage_cache(), postcar_frame::stack, stage_cache_load_stage(), STAGE_POSTCAR, timestamp_add_now(), and TS_ROMSTAGE_END.
Referenced by car_stage_entry(), prepare_and_run_postcar(), and romstage_main().