coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
notify.c File Reference
#include <bootstate.h>
#include <console/console.h>
#include <cpu/x86/mtrr.h>
#include <fsp/util.h>
#include <mode_switch.h>
#include <timestamp.h>
#include <types.h>
Include dependency graph for notify.c:

Go to the source code of this file.

Data Structures

struct  fsp_notify_phase_data
 

Functions

static const struct fsp_notify_phase_dataget_notify_phase_data (enum fsp_notify_phase phase)
 
static void fsp_notify (enum fsp_notify_phase phase)
 
static void fsp_notify_dummy (void *arg)
 
 BOOT_STATE_INIT_ENTRY (BS_DEV_ENABLE, BS_ON_ENTRY, fsp_notify_dummy,(void *) AFTER_PCI_ENUM)
 
 BOOT_STATE_INIT_ENTRY (BS_PAYLOAD_LOAD, BS_ON_EXIT, fsp_notify_dummy,(void *) READY_TO_BOOT)
 
 BOOT_STATE_INIT_ENTRY (BS_OS_RESUME, BS_ON_ENTRY, fsp_notify_dummy,(void *) READY_TO_BOOT)
 
__weak void platform_fsp_notify_status (enum fsp_notify_phase phase)
 

Variables

static const struct fsp_notify_phase_data notify_data []
 

Function Documentation

◆ BOOT_STATE_INIT_ENTRY() [1/3]

BOOT_STATE_INIT_ENTRY ( BS_DEV_ENABLE  ,
BS_ON_ENTRY  ,
fsp_notify_dummy  ,
(void *)  AFTER_PCI_ENUM 
)

◆ BOOT_STATE_INIT_ENTRY() [2/3]

BOOT_STATE_INIT_ENTRY ( BS_OS_RESUME  ,
BS_ON_ENTRY  ,
fsp_notify_dummy  ,
(void *)  READY_TO_BOOT 
)

◆ BOOT_STATE_INIT_ENTRY() [3/3]

BOOT_STATE_INIT_ENTRY ( BS_PAYLOAD_LOAD  ,
BS_ON_EXIT  ,
fsp_notify_dummy  ,
(void *)  READY_TO_BOOT 
)

◆ fsp_notify()

◆ fsp_notify_dummy()

static void fsp_notify_dummy ( void arg)
static

Definition at line 97 of file notify.c.

References arg, display_mtrrs(), END_OF_FIRMWARE, fsp_notify(), fsp_notify_params::phase, and READY_TO_BOOT.

Here is the call graph for this function:

◆ get_notify_phase_data()

static const struct fsp_notify_phase_data* get_notify_phase_data ( enum fsp_notify_phase  phase)
static

Definition at line 47 of file notify.c.

References ARRAY_SIZE, die(), notify_data, and fsp_notify_phase_data::notify_phase.

Referenced by fsp_notify().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ platform_fsp_notify_status()

__weak void platform_fsp_notify_status ( enum fsp_notify_phase  phase)

Definition at line 112 of file notify.c.

Referenced by fsp_notify().

Here is the caller graph for this function:

Variable Documentation

◆ notify_data

const struct fsp_notify_phase_data notify_data[]
static
Initial value:
= {
{
.notify_phase = AFTER_PCI_ENUM,
.skip = !CONFIG(USE_FSP_NOTIFY_PHASE_POST_PCI_ENUM),
.post_code_before = POST_FSP_NOTIFY_BEFORE_ENUMERATE,
.post_code_after = POST_FSP_NOTIFY_AFTER_ENUMERATE,
.timestamp_before = TS_FSP_ENUMERATE_START,
.timestamp_after = TS_FSP_ENUMERATE_END,
},
{
.notify_phase = READY_TO_BOOT,
.skip = !CONFIG(USE_FSP_NOTIFY_PHASE_READY_TO_BOOT),
.post_code_before = POST_FSP_NOTIFY_BEFORE_FINALIZE,
.post_code_after = POST_FSP_NOTIFY_AFTER_FINALIZE,
.timestamp_before = TS_FSP_FINALIZE_START,
.timestamp_after = TS_FSP_FINALIZE_END,
},
{
.notify_phase = END_OF_FIRMWARE,
.skip = !CONFIG(USE_FSP_NOTIFY_PHASE_END_OF_FIRMWARE),
.timestamp_before = TS_FSP_END_OF_FIRMWARE_START,
.timestamp_after = TS_FSP_END_OF_FIRMWARE_END,
},
}
@ CONFIG
Definition: dsi_common.h:201
@ END_OF_FIRMWARE
Definition: api.h:31
@ AFTER_PCI_ENUM
Definition: api.h:29
@ READY_TO_BOOT
Definition: api.h:30
#define POST_FSP_NOTIFY_BEFORE_FINALIZE
Before calling FSP Notify (ready to boot)
Definition: post_codes.h:260
#define POST_FSP_NOTIFY_BEFORE_ENUMERATE
Before calling FSP Notify (after PCI enumeration)
Definition: post_codes.h:253
#define POST_FSP_NOTIFY_AFTER_END_OF_FIRMWARE
After calling FSP Notify (end of firmware)
Definition: post_codes.h:218
#define POST_FSP_NOTIFY_AFTER_ENUMERATE
After calling FSP Notify (after PCI enumeration)
Definition: post_codes.h:309
#define POST_FSP_NOTIFY_BEFORE_END_OF_FIRMWARE
Before calling FSP Notify (end of firmware)
Definition: post_codes.h:211
#define POST_FSP_NOTIFY_AFTER_FINALIZE
After calling FSP Notify (ready to boot)
Definition: post_codes.h:316
@ TS_FSP_FINALIZE_END
@ TS_FSP_END_OF_FIRMWARE_END
@ TS_FSP_FINALIZE_START
@ TS_FSP_ENUMERATE_END
@ TS_FSP_END_OF_FIRMWARE_START
@ TS_FSP_ENUMERATE_START

Definition at line 1 of file notify.c.

Referenced by get_notify_phase_data().