coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
smm.c File Reference
#include <arch/io.h>
#include <device/mmio.h>
#include <console/console.h>
#include <cpu/x86/smm.h>
#include <cpu/intel/smm_reloc.h>
#include <device/device.h>
#include <device/pci.h>
#include <soc/iomap.h>
#include <soc/pm.h>
#include <soc/smm.h>
Include dependency graph for smm.c:

Go to the source code of this file.

Functions

void smm_southcluster_save_param (int param, uint32_t data)
 
void smm_southbridge_clear_state (void)
 
static void smm_southcluster_route_gpios (void)
 
static void smm_southbridge_enable (uint16_t pm1_events)
 
void global_smi_enable (void)
 Set the EOS bit and enable SMI generation from southbridge. More...
 

Variables

static uint32_t smm_save_params [SMM_SAVE_PARAM_COUNT]
 

Function Documentation

◆ global_smi_enable()

void global_smi_enable ( void  )

Set the EOS bit and enable SMI generation from southbridge.

Definition at line 98 of file smm.c.

References GBL_EN, PWRBTN_EN, and smm_southbridge_enable().

Here is the call graph for this function:

◆ smm_southbridge_clear_state()

void smm_southbridge_clear_state ( void  )

Definition at line 22 of file smm.c.

◆ smm_southbridge_enable()

static void smm_southbridge_enable ( uint16_t  pm1_events)
static

Definition at line 73 of file smm.c.

References APMC_EN, BIOS_DEBUG, disable_gpe(), enable_pm1(), enable_smi(), EOS, GBL_SMI_EN, PCIEXPWAK_DIS, PME_B0_EN, printk, SLP_SMI_EN, SMM_SAVE_PARAM_PCIE_WAKE_ENABLE, smm_save_params, and smm_southcluster_route_gpios().

Referenced by global_smi_enable().

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

◆ smm_southcluster_route_gpios()

static void smm_southcluster_route_gpios ( void  )
static

Definition at line 48 of file smm.c.

References ACPI_BASE_ADDRESS, ALT_GPIO_SMI, BIOS_DEBUG, GPIO_ROUT, outl(), PMC_BASE_ADDRESS, printk, ROUTE_MASK, ROUTE_SMI, SMM_SAVE_PARAM_GPIO_ROUTE, smm_save_params, and write32().

Referenced by smm_southbridge_enable().

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

◆ smm_southcluster_save_param()

void smm_southcluster_save_param ( int  param,
uint32_t  data 
)

Definition at line 17 of file smm.c.

Variable Documentation

◆ smm_save_params

uint32_t smm_save_params[SMM_SAVE_PARAM_COUNT]
static