coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
finalize.c File Reference
#include <bootstate.h>
#include <commonlib/console/post_codes.h>
#include <console/console.h>
#include <cpu/x86/mp.h>
#include <cpu/x86/smm.h>
#include <device/mmio.h>
#include <device/pci.h>
#include <device/pci_ops.h>
#include <intelblocks/cpulib.h>
#include <intelblocks/cse.h>
#include <intelblocks/lpc_lib.h>
#include <intelblocks/p2sb.h>
#include <intelblocks/pcr.h>
#include <intelblocks/pmclib.h>
#include <intelblocks/tco.h>
#include <intelblocks/thermal.h>
#include <soc/me.h>
#include <soc/p2sb.h>
#include <soc/pci_devs.h>
#include <soc/pcr_ids.h>
#include <soc/pm.h>
#include <soc/smbus.h>
#include <soc/systemagent.h>
#include <spi-generic.h>
#include "chip.h"
Include dependency graph for finalize.c:

Go to the source code of this file.

Macros

#define PSF_BASE_ADDRESS   0xA00
 
#define PCR_PSFX_T0_SHDW_PCIEN   0x1C
 
#define PCR_PSFX_T0_SHDW_PCIEN_FUNDIS   (1 << 8)
 

Functions

void soc_disable_heci1_using_pcr (void)
 
static void pch_finalize_script (struct device *dev)
 
static void soc_lockdown (struct device *dev)
 
static void soc_finalize (void *unused)
 
 BOOT_STATE_INIT_ENTRY (BS_OS_RESUME, BS_ON_ENTRY, soc_finalize, NULL)
 
 BOOT_STATE_INIT_ENTRY (BS_PAYLOAD_LOAD, BS_ON_EXIT, soc_finalize, NULL)
 

Macro Definition Documentation

◆ PCR_PSFX_T0_SHDW_PCIEN

#define PCR_PSFX_T0_SHDW_PCIEN   0x1C

Definition at line 31 of file finalize.c.

◆ PCR_PSFX_T0_SHDW_PCIEN_FUNDIS

#define PCR_PSFX_T0_SHDW_PCIEN_FUNDIS   (1 << 8)

Definition at line 32 of file finalize.c.

◆ PSF_BASE_ADDRESS

#define PSF_BASE_ADDRESS   0xA00

Definition at line 30 of file finalize.c.

Function Documentation

◆ BOOT_STATE_INIT_ENTRY() [1/2]

BOOT_STATE_INIT_ENTRY ( BS_OS_RESUME  ,
BS_ON_ENTRY  ,
soc_finalize  ,
NULL   
)

◆ BOOT_STATE_INIT_ENTRY() [2/2]

BOOT_STATE_INIT_ENTRY ( BS_PAYLOAD_LOAD  ,
BS_ON_EXIT  ,
soc_finalize  ,
NULL   
)

◆ pch_finalize_script()

static void pch_finalize_script ( struct device dev)
static

Definition at line 46 of file finalize.c.

References CONFIG, heci1_disable(), intel_me_status(), p2sb_hide(), pch_thermal_configuration(), pmc_clear_pmcon_sts(), and tco_lockdown().

Referenced by soc_finalize().

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

◆ soc_disable_heci1_using_pcr()

void soc_disable_heci1_using_pcr ( void  )

Definition at line 34 of file finalize.c.

References p2sb_disable_sideband_access(), p2sb_unhide(), pcr_or32(), PCR_PSFX_T0_SHDW_PCIEN, PCR_PSFX_T0_SHDW_PCIEN_FUNDIS, PID_PSF1, and PSF_BASE_ADDRESS.

Here is the call graph for this function:

◆ soc_finalize()

static void soc_finalize ( void unused)
static

Definition at line 94 of file finalize.c.

References APM_CNT_FINALIZE, apm_control(), BIOS_DEBUG, NULL, PCH_DEV_PMC, pch_finalize_script(), post_code, POST_OS_BOOT, printk, and soc_lockdown().

Here is the call graph for this function:

◆ soc_lockdown()

static void soc_lockdown ( struct device dev)
static

Definition at line 72 of file finalize.c.

References config, CONFIG, config_of(), cpu_lt_lock_memory(), GEN_PMCON_A, pci_read_config8(), pci_write_config8(), and SMI_LOCK.

Referenced by soc_finalize().

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