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 <
acpi/acpi.h
>
4
#include <
arch/romstage.h
>
5
#include <
cf9_reset.h
>
6
#include <
console/console.h
>
7
#include <
cpu/intel/haswell/haswell.h
>
8
#include <elog.h>
9
#include <
romstage_handoff.h
>
10
#include <soc/me.h>
11
#include <soc/pm.h>
12
#include <soc/romstage.h>
13
#include <
southbridge/intel/lynxpoint/lp_gpio.h
>
14
#include <
stdint.h
>
15
16
__weak
void
mainboard_post_raminit
(
const
int
s3resume)
17
{
18
}
19
20
/* Entry from cpu/intel/car/romstage.c. */
21
void
mainboard_romstage_entry
(
void
)
22
{
23
post_code
(0x30);
24
25
/* System Agent Early Initialization */
26
systemagent_early_init
();
27
28
/* PCH Early Initialization */
29
pch_early_init
();
30
31
/* Get power state */
32
struct
chipset_power_state
*
const
power_state
=
fill_power_state
();
33
34
int
s3resume =
power_state
->
prev_sleep_state
==
ACPI_S3
;
35
36
elog_boot_notify
(s3resume);
37
38
/* Print useful platform information */
39
report_platform_info
();
40
41
/* Set CPU frequency to maximum */
42
set_max_freq
();
43
44
/* Initialize GPIOs */
45
setup_pch_lp_gpios
(
mainboard_lp_gpio_map
);
46
47
/* Print ME state before MRC */
48
intel_me_status
();
49
50
/* Save ME HSIO version */
51
intel_me_hsio_version
(&
power_state
->
hsio_version
,
52
&
power_state
->
hsio_checksum
);
53
54
perform_raminit
(
power_state
);
55
56
romstage_handoff_init
(s3resume);
57
58
mainboard_post_raminit
(s3resume);
59
}
romstage.h
cf9_reset.h
console.h
haswell.h
set_max_freq
void set_max_freq(void)
Definition:
romstage.c:7
acpi.h
ACPI_S3
@ ACPI_S3
Definition:
acpi.h:1383
elog_boot_notify
static void elog_boot_notify(int s3_resume)
Definition:
elog.h:62
setup_pch_lp_gpios
void setup_pch_lp_gpios(const struct pch_lp_gpio_map map[])
Definition:
lp_gpio.c:50
lp_gpio.h
mainboard_romstage_entry
void mainboard_romstage_entry(void)
Definition:
romstage.c:6
mainboard_lp_gpio_map
const struct pch_lp_gpio_map mainboard_lp_gpio_map[]
Definition:
gpio.c:5
report_platform_info
void report_platform_info(void)
Definition:
report_platform.c:92
perform_raminit
void perform_raminit(const int s3resume)
Definition:
raminit.c:342
systemagent_early_init
void systemagent_early_init(void)
Definition:
early_init.c:151
post_code
#define post_code(value)
Definition:
post_code.h:12
romstage_handoff.h
romstage_handoff_init
int romstage_handoff_init(int is_s3_resume)
Definition:
romstage_handoff.c:42
__weak
const struct smm_save_state_ops *legacy_ops __weak
Definition:
save_state.c:8
power_state
static struct chipset_power_state power_state
Definition:
romstage.c:19
fill_power_state
struct chipset_power_state * fill_power_state(void)
Definition:
romstage.c:31
intel_me_status
void intel_me_status(void)
Definition:
me_status.c:194
intel_me_hsio_version
void intel_me_hsio_version(uint16_t *version, uint16_t *checksum)
Definition:
me_status.c:292
pch_early_init
void pch_early_init(void)
Definition:
early_pch.c:67
mainboard_post_raminit
__weak void mainboard_post_raminit(const int s3resume)
Definition:
romstage.c:16
stdint.h
chipset_power_state
Definition:
acpi.h:48
chipset_power_state::hsio_version
uint16_t hsio_version
Definition:
pm.h:109
chipset_power_state::prev_sleep_state
uint32_t prev_sleep_state
Definition:
pm.h:153
chipset_power_state::hsio_checksum
uint16_t hsio_checksum
Definition:
pm.h:110
src
soc
intel
broadwell
romstage.c
Generated by
1.9.1