coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
smi.c File Reference
#include <console/console.h>
#include <commonlib/region.h>
#include <cpu/x86/smm.h>
#include <smmstore.h>
#include <stddef.h>
#include <stdint.h>
Include dependency graph for smi.c:

Go to the source code of this file.

Functions

static int range_check (void *start, size_t size)
 
static uint32_t smmstorev1_exec (uint8_t command, void *param)
 
static uint32_t smmstorev2_exec (uint8_t command, void *param)
 
uint32_t smmstore_exec (uint8_t command, void *param)
 

Function Documentation

◆ range_check()

static int range_check ( void start,
size_t  size 
)
static

Definition at line 18 of file smi.c.

References smm_points_to_smram().

Referenced by smmstorev1_exec(), and smmstorev2_exec().

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

◆ smmstore_exec()

uint32_t smmstore_exec ( uint8_t  command,
void param 
)

Definition at line 144 of file smi.c.

References CONFIG, SMMSTORE_CMD_CLEAR, SMMSTORE_RET_FAILURE, smmstorev1_exec(), and smmstorev2_exec().

Referenced by handle_smi_store(), and southbridge_smi_store().

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

◆ smmstorev1_exec()

static uint32_t smmstorev1_exec ( uint8_t  command,
void param 
)
static

Definition at line 26 of file smi.c.

References BIOS_DEBUG, params, printk, range_check(), smmstore_append_data(), smmstore_clear_region(), SMMSTORE_CMD_APPEND, SMMSTORE_CMD_CLEAR, SMMSTORE_CMD_READ, smmstore_read_region(), SMMSTORE_RET_FAILURE, SMMSTORE_RET_SUCCESS, and SMMSTORE_RET_UNSUPPORTED.

Referenced by smmstore_exec().

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

◆ smmstorev2_exec()

static uint32_t smmstorev2_exec ( uint8_t  command,
void param 
)
static