![]() |
coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
|
#include <device/mmio.h>
#include <device/device.h>
#include <device/pci.h>
#include <device/pci_ops.h>
#include <console/console.h>
#include <device/pci_ids.h>
#include <device/pci_def.h>
#include <string.h>
#include <delay.h>
#include <halt.h>
#include <timer.h>
#include "me.h"
#include "pch.h"
#include <vendorcode/google/chromeos/chromeos.h>
Go to the source code of this file.
Variables | |
static const char *const | me_bios_path_values [] |
static u32 * | mei_base_address |
Definition at line 411 of file me_common.c.
References BIOS_WARNING, mkhi_header::group_id, mei_header::is_complete, MEI_ADDRESS_MKHI, MEI_HOST_ADDRESS, mei_sendrecv(), MKHI_DISABLE_RULE_ID, MKHI_FWCAPS_SET_RULE, MKHI_GROUP_ID_FWCAPS, printk, and me_disable::rule_id.
Definition at line 439 of file me_common.c.
References mdelay().
Definition at line 454 of file me_common.c.
References PCI_ME_H_GS, and pci_write_config32().
Wait for fw_init_complete. Check every 50 ms, give up after 20 sec. This is what vendor BIOS does. Usually it takes 1.5 seconds or so.
Definition at line 460 of file me_common.c.
References BIOS_ERR, BIOS_NOTICE, me_hfs::fw_init_complete, mdelay(), ME_ENABLE_TIMEOUT, PCI_ME_HFS, pci_read_config32(), printk, me_hfs::raw, stopwatch_duration_msecs(), stopwatch_expired(), and stopwatch_init_msecs_expire().
int intel_me_extend_valid | ( | struct device * | dev | ) |
Definition at line 359 of file me_common.c.
References BIOS_DEBUG, BIOS_ERR, CONFIG, 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(), printk, and me_heres::raw.
Definition at line 405 of file me_common.c.
References device::enabled, and pch_enable().
int intel_mei_setup | ( | struct device * | dev | ) |
Definition at line 332 of file me_common.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_or_config16(), printk, probe_resource(), read_host_csr(), mei_csr::ready, mei_csr::reset, resource::size, and write_host_csr().
const char* const me_get_bios_path_string | ( | int | path | ) |
Definition at line 30 of file me_common.c.
References me_bios_path_values.
Definition at line 38 of file me_common.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(), read_cb(), and write_cb().
Definition at line 75 of file me_common.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 222 of file me_common.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 135 of file me_common.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 159 of file me_common.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().
int mei_sendrecv | ( | struct mei_header * | mei, |
struct mkhi_header * | mkhi, | ||
void * | req_data, | ||
void * | rsp_data, | ||
int | rsp_bytes | ||
) |
Definition at line 306 of file me_common.c.
References mei_recv_msg(), and mei_send_msg().
Referenced by enter_soft_temp_disable(), me7_mkhi_end_of_post(), me8_mkhi_end_of_post(), and mkhi_get_fwcaps().
|
static |
Definition at line 119 of file me_common.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 82 of file me_common.c.
References mei_base_address, mei_dump(), memcpy(), offset, and write32().
Referenced by mei_send_msg(), and write_host_csr().
Definition at line 111 of file me_common.c.
References mei_base_address, mei_dump(), MEI_ME_CB_RW, NULL, and read32().
Referenced by mei_recv_msg().
Definition at line 90 of file me_common.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 100 of file me_common.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 105 of file me_common.c.
References mei_base_address, mei_dump(), MEI_H_CB_WW, NULL, and write32().
Referenced by mei_send_msg().
Definition at line 95 of file me_common.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 |
Definition at line 21 of file me_common.c.
Referenced by me_get_bios_path_string().
|
static |
Definition at line 36 of file me_common.c.
Referenced by intel_mei_setup(), mei_read_dword_ptr(), mei_write_dword_ptr(), read_cb(), and write_cb().