![]() |
coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
|
#include <acpi/acpi.h>
#include <console/console.h>
#include <device/device.h>
#include <device/mmio.h>
#include <device/pci.h>
#include <device/pci_def.h>
#include <device/pci_ids.h>
#include <device/pci_ops.h>
#include <string.h>
#include <delay.h>
#include <elog.h>
#include "me.h"
#include "pch.h"
Go to the source code of this file.
Functions | |
static void | mei_dump (void *ptr, int dword, int offset, const char *type) |
static void | mei_read_dword_ptr (void *ptr, int offset) |
static void | mei_write_dword_ptr (void *ptr, int offset) |
static void | pci_read_dword_ptr (struct device *dev, void *ptr, int offset) |
static void | read_host_csr (struct mei_csr *csr) |
static void | write_host_csr (struct mei_csr *csr) |
static void | read_me_csr (struct mei_csr *csr) |
static void | write_cb (u32 dword) |
static u32 | read_cb (void) |
static int | mei_wait_for_me_ready (void) |
static void | mei_reset (void) |
static int | mei_send_msg (struct mei_header *mei, struct mkhi_header *mkhi, void *req_data) |
static int | mei_recv_msg (struct mei_header *mei, struct mkhi_header *mkhi, void *rsp_data, int rsp_bytes) |
static int | mei_sendrecv (struct mei_header *mei, struct mkhi_header *mkhi, void *req_data, void *rsp_data, int rsp_bytes) |
static me_bios_path | intel_me_path (struct device *dev) |
static int | intel_mei_setup (struct device *dev) |
static int | intel_me_extend_valid (struct device *dev) |
static void | intel_me_hide (struct device *dev) |
static void | intel_me_init (struct device *dev) |
Variables | |
static const char *me_bios_path_values[] | __unused |
static u32 * | mei_base_address |
static struct device_operations | device_ops |
static const unsigned short | pci_device_ids [] |
static const struct pci_driver intel_me | __pci_driver |
|
static |
Definition at line 421 of file me.c.
References BIOS_DEBUG, BIOS_ERR, count, me_heres::extend_feature_present, me_heres::extend_reg_algorithm, me_heres::extend_reg_valid, PCI_ME_EXT_SHA1, PCI_ME_EXT_SHA256, PCI_ME_HER, PCI_ME_HERES, pci_read_config32(), pci_read_dword_ptr(), and printk.
Definition at line 463 of file me.c.
References device::enabled, and pch_enable().
|
static |
Definition at line 326 of file me.c.
References acpi_is_wakeup_s3(), CONFIG, me_gmes::current_pmevent, me_gmes::current_state, elog_event_data_me_extended::current_working_state, elog_add_event_byte(), elog_add_event_raw(), ELOG_TYPE_MANAGEMENT_ENGINE, ELOG_TYPE_MANAGEMENT_ENGINE_EXT, me_hfs::error_code, me_hfs::fpt_bad, intel_me_status(), ME_DISABLE_BIOS_PATH, ME_ERROR_BIOS_PATH, ME_HFS_CWS_NORMAL, ME_HFS_CWS_REC, ME_HFS_MODE_DEBUG, ME_HFS_MODE_DIS, ME_HFS_MODE_NORMAL, ME_HFS_MODE_OVER_JMPR, ME_HFS_MODE_OVER_MEI, ME_NORMAL_BIOS_PATH, ME_RECOVERY_BIOS_PATH, ME_S3WAKE_BIOS_PATH, me_hfs::operation_mode, me_hfs::operation_state, PCI_ME_GMES, PCI_ME_HFS, pci_read_dword_ptr(), me_gmes::progress_code, and me_hfs::working_state.
|
static |
Definition at line 391 of file me.c.
References resource::base, BIOS_DEBUG, mei_csr::interrupt_generate, mei_base_address, PCI_BASE_ADDRESS_0, PCI_COMMAND, PCI_COMMAND_MASTER, PCI_COMMAND_MEMORY, pci_read_config16(), pci_write_config16(), printk, probe_resource(), read_host_csr(), mei_csr::ready, mei_csr::reset, resource::size, and write_host_csr().
Definition at line 39 of file me.c.
References BIOS_SPEW, mei_csr::buffer_depth, mei_csr::buffer_read_ptr, mei_csr::buffer_write_ptr, CONFIG, mei_csr::interrupt_enable, mei_csr::interrupt_generate, mei_csr::interrupt_status, MEI_H_CB_WW, MEI_H_CSR, MEI_ME_CB_RW, MEI_ME_CSR_HA, offset, printk, mei_csr::ready, mei_csr::reset, and type.
Referenced by mei_read_dword_ptr(), mei_write_dword_ptr(), pci_read_dword_ptr(), read_cb(), and write_cb().
Definition at line 76 of file me.c.
References mei_base_address, mei_dump(), memcpy(), offset, and read32().
Referenced by mei_recv_msg(), read_host_csr(), and read_me_csr().
|
static |
Definition at line 233 of file me.c.
References BIOS_ERR, mei_csr::buffer_read_ptr, mei_csr::buffer_write_ptr, mkhi_header::command, mkhi_header::group_id, mei_csr::interrupt_generate, mei_csr::interrupt_status, mei_header::is_complete, mkhi_header::is_response, mei_header::length, ME_DELAY, ME_RETRY, MEI_ME_CB_RW, mei_read_dword_ptr(), mei_wait_for_me_ready(), printk, read_cb(), read_host_csr(), read_me_csr(), udelay(), and write_host_csr().
Referenced by mei_sendrecv().
Definition at line 146 of file me.c.
References mei_csr::interrupt_generate, mei_wait_for_me_ready(), read_host_csr(), mei_csr::ready, mei_csr::reset, and write_host_csr().
Referenced by mei_send_msg().
|
static |
Definition at line 170 of file me.c.
References BIOS_DEBUG, BIOS_ERR, mei_csr::buffer_depth, mei_csr::buffer_write_ptr, mei_csr::interrupt_generate, mei_header::length, MEI_H_CB_WW, mei_reset(), mei_wait_for_me_ready(), mei_write_dword_ptr(), printk, read_host_csr(), write_cb(), and write_host_csr().
Referenced by mei_sendrecv().
|
inlinestatic |
Definition at line 315 of file me.c.
References mei_recv_msg(), and mei_send_msg().
Referenced by mkhi_get_fw_version(), and mkhi_get_fwcaps().
|
static |
Definition at line 130 of file me.c.
References BIOS_ERR, ME_DELAY, ME_RETRY, printk, read_me_csr(), mei_csr::ready, and udelay().
Referenced by mei_recv_msg(), mei_reset(), and mei_send_msg().
Definition at line 83 of file me.c.
References mei_base_address, mei_dump(), memcpy(), offset, and write32().
Referenced by mei_send_msg(), and write_host_csr().
Definition at line 92 of file me.c.
References mei_dump(), memcpy(), offset, and pci_read_config32().
Referenced by intel_me_extend_valid(), and intel_me_path().
Definition at line 122 of file me.c.
References mei_base_address, mei_dump(), MEI_ME_CB_RW, NULL, and read32().
Referenced by mei_recv_msg().
Definition at line 101 of file me.c.
References MEI_H_CSR, and mei_read_dword_ptr().
Referenced by intel_mei_setup(), mei_recv_msg(), mei_reset(), and mei_send_msg().
Definition at line 111 of file me.c.
References MEI_ME_CSR_HA, and mei_read_dword_ptr().
Referenced by mei_recv_msg(), and mei_wait_for_me_ready().
Definition at line 116 of file me.c.
References mei_base_address, mei_dump(), MEI_H_CB_WW, NULL, and write32().
Referenced by mei_send_msg().
Definition at line 106 of file me.c.
References MEI_H_CSR, and mei_write_dword_ptr().
Referenced by intel_mei_setup(), mei_recv_msg(), mei_reset(), and mei_send_msg().
|
static |
|
static |
|
static |
|
static |
Definition at line 37 of file me.c.
Referenced by intel_mei_setup(), mei_read_dword_ptr(), mei_write_dword_ptr(), read_cb(), and write_cb().
|
static |