coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
|
#include <device/mmio.h>
#include <cpu/x86/msr.h>
#include <cpu/amd/msr.h>
#include <region_file.h>
#include <console/console.h>
#include <amdblocks/psp.h>
#include <soc/iomap.h>
#include <string.h>
#include "psp_def.h"
Go to the source code of this file.
Macros | |
#define | C2P_BUFFER_MAXSIZE 0xc00 /* Core-to-PSP buffer */ |
#define | P2C_BUFFER_MAXSIZE 0xc00 /* PSP-to-core buffer */ |
Functions | |
static void | set_smm_flag (void) |
static void | clear_smm_flag (void) |
int | psp_notify_smm (void) |
void | psp_notify_sx_info (u8 sleep_type) |
Variables | |
struct { | |
u8 buffer [C2P_BUFFER_MAXSIZE] | |
} | c2p_buffer |
struct { | |
u8 buffer [P2C_BUFFER_MAXSIZE] | |
} | p2c_buffer |
static uint32_t | smm_flag |
Definition at line 32 of file psp_smm.c.
References smm_flag.
Referenced by psp_notify_smm(), and psp_notify_sx_info().
int psp_notify_smm | ( | void | ) |
Definition at line 37 of file psp_smm.c.
References BIOS_DEBUG, buffer, c2p_buffer, clear_smm_flag(), msr_struct::hi, msr_struct::lo, MBOX_BIOS_CMD_SMM_INFO, p2c_buffer, printk, psp_print_cmd_status(), rdmsr(), send_psp_command(), set_smm_flag(), SMM_ADDR_MSR, smm_flag, SMM_MASK_MSR, soc_fill_smm_reg_info(), and soc_fill_smm_trig_info().
Referenced by fch_apmc_smi_handler().
Definition at line 77 of file psp_smm.c.
References BIOS_DEBUG, BIOS_ERR, buffer, c2p_buffer, clear_smm_flag(), MBOX_BIOS_CMD_SX_INFO, MBOX_BIOS_CMD_SX_INFO_SLEEP_TYPE_MAX, memset(), printk, psp_print_cmd_status(), send_psp_command(), set_smm_flag(), and mbox_cmd_sx_info_buffer::sleep_type.
Referenced by fch_slp_typ_handler().
Definition at line 27 of file psp_smm.c.
References smm_flag.
Referenced by psp_notify_smm(), and psp_notify_sx_info().
u8 buffer[P2C_BUFFER_MAXSIZE] |
Definition at line 18 of file psp_smm.c.
Referenced by acpigen_dptc_call_alib(), acpigen_dsm_uuid_enum_functions(), acpigen_write_processor_cnot(), add_fw_config_oem_string(), buffer_from_fifo32(), buffer_to_fifo32(), buffer_to_fifo32_prefix(), bus_path(), cbfs_copy_fill_metadata(), cbfs_dev_read(), cbfs_file_hash_mismatch(), cbfs_load_and_decompress(), cbmemc_copy_in(), console_write_line(), cr50_i2c_read(), cr50_i2c_write(), dev_path(), dptx_check_sinkcap(), dptx_set_trainingstart(), eeprom_write_byte(), elog_debug_dump_buffer(), elog_is_buffer_clear(), flashconsole_init(), fmap_overwrite_area(), fmap_read_area(), free_fn_data(), from_tpm_uint16(), from_tpm_uint32(), fsp_write_line(), gcov_read_counter(), gcov_read_unsigned(), gcov_write_length(), gcov_write_string(), gcov_write_tag(), gcov_write_unsigned(), get_board_id(), get_ec_boardinfo(), get_panel_from_cbfs(), google_chromeec_i2c_xfer(), iic_tpm_read(), iic_tpm_write(), iic_tpm_write_generic(), iic_tpm_write_long(), inb(), inl(), inw(), load_cached_fpf(), mec_io_bytes(), mipi_dsi_dcs_write(), mmc_bus_tuning(), mmc_send_tuning_seq(), mrc_cache_load_current(), nor_write(), pmm_handleInt(), psp_notify_boot_done(), psp_notify_dram(), psp_notify_smm(), psp_notify_sx_info(), psp_set_spl_fuse(), read_bytes(), read_flash(), readSmbusByte(), readSmbusByteData(), readspd(), resource_type(), sch5545_emi_ec_read32_bulk(), sch5545_emi_ec_write32_bulk(), sdhci_transfer_data(), send_psp_command(), set_tpm_command_size(), smbus_block_read(), smbus_block_write(), storage_block_fill_write(), storage_block_read(), storage_block_write(), storage_test(), tis_readresponse(), to_tpm_uint16(), to_tpm_uint32(), tpm_command_code(), tpm_command_size(), tpm_return_code(), trace_dump(), trim_trailing_whitespace(), twsi_read_data(), twsi_write_data(), vboot_extend_pcr(), vpd_gets(), wr_mbox_buffer_ptr(), wr_mbox_cmd_resp(), write_bytes(), and write_flash().
struct { ... } c2p_buffer |
Referenced by psp_notify_smm(), and psp_notify_sx_info().
struct { ... } p2c_buffer |
Referenced by psp_notify_smm().
|
static |
Definition at line 25 of file psp_smm.c.
Referenced by clear_smm_flag(), psp_notify_smm(), and set_smm_flag().