coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
ec.h File Reference
#include <stddef.h>
#include <stdint.h>
Include dependency graph for ec.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum  wilco_ec_msg_type { WILCO_EC_MSG_RAW , WILCO_EC_MSG_DEFAULT , WILCO_EC_MSG_NO_RESPONSE }
 

Functions

int wilco_ec_mailbox (enum wilco_ec_msg_type type, uint8_t command, const void *request_data, size_t request_size, void *response_data, size_t response_size)
 wilco_ec_mailbox More...
 
static int wilco_ec_send (uint8_t command, uint8_t param)
 wilco_ec_send More...
 
static int wilco_ec_send_noargs (uint8_t command)
 wilco_ec_send_noargs More...
 
static int wilco_ec_sendrecv (uint8_t command, uint8_t param, void *data, size_t size)
 wilco_ec_sendrecv More...
 
static int wilco_ec_sendrecv_noargs (uint8_t command, void *data, size_t size)
 wilco_ec_sendrecv_noargs More...
 

Enumeration Type Documentation

◆ wilco_ec_msg_type

Enumerator
WILCO_EC_MSG_RAW 
WILCO_EC_MSG_DEFAULT 
WILCO_EC_MSG_NO_RESPONSE 

Definition at line 10 of file ec.h.

Function Documentation

◆ wilco_ec_mailbox()

int wilco_ec_mailbox ( enum wilco_ec_msg_type  type,
uint8_t  command,
const void request_data,
size_t  request_size,
void response_data,
size_t  response_size 
)

wilco_ec_mailbox

Send a command request to the EC mailbox and receive the response.

@type: Mailbox message type, see enum above @command: Command to execute @request_data: Request data buffer @request_size: Number of bytes in request data buffer (max 32) @response_data: Response data buffer @response_size: Number of bytes in response data buffer (max 32)

Returns
number of bytes received, negative error code on failure

Definition at line 195 of file mailbox.c.

References BIOS_ERR, wilco_ec_message::command, wilco_ec_message::data, EC_MAILBOX_DATA_SIZE, memcpy(), printk, wilco_ec_message::request_size, wilco_ec_message::response_size, wilco_ec_message::result, type, and wilco_ec_transfer().

Referenced by die_notify(), wilco_ec_change_wake(), wilco_ec_get_board_id(), wilco_ec_power_off(), wilco_ec_radio_control(), wilco_ec_send(), wilco_ec_send_noargs(), wilco_ec_sendrecv(), wilco_ec_sendrecv_noargs(), wilco_ec_set_cpuid(), and wilco_ec_slp_en().

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

◆ wilco_ec_send()

static int wilco_ec_send ( uint8_t  command,
uint8_t  param 
)
inlinestatic

wilco_ec_send

Send a basic EC command with a one byte parameter with no returned data;

@command: Command to execute

Parameters
Command parameter to send
Returns
negative error code on failure

Definition at line 45 of file ec.h.

References NULL, wilco_ec_mailbox(), and WILCO_EC_MSG_DEFAULT.

Referenced by wilco_ec_init(), wilco_ec_post_complete(), wilco_ec_post_logo_displayed(), wilco_ec_post_memory_init(), wilco_ec_post_video_init(), wilco_ec_romstage_init(), and wilco_ec_smi_apmc().

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

◆ wilco_ec_send_noargs()

static int wilco_ec_send_noargs ( uint8_t  command)
inlinestatic

wilco_ec_send_noargs

Send a basic EC command with no parameters and no returned data.

@command: Command to execute

Returns
negative error code on failure

Definition at line 60 of file ec.h.

References NULL, wilco_ec_mailbox(), and WILCO_EC_MSG_DEFAULT.

Referenced by wilco_ec_resume(), and wilco_ec_smi_sleep().

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

◆ wilco_ec_sendrecv()

static int wilco_ec_sendrecv ( uint8_t  command,
uint8_t  param,
void data,
size_t  size 
)
inlinestatic

wilco_ec_sendrecv

Send a basic EC command with a one byte parameter, ignoring the first byte of returned data to match the common behavior. The maximum response size is 31 due to the ignored byte.

@command: Command to execute

Parameters
Command parameter to send @data: Response data buffer @size: Number of bytes in response data buffer (max 31)
Returns
number of bytes received, negative error code on failure

Definition at line 80 of file ec.h.

References wilco_ec_mailbox(), and WILCO_EC_MSG_DEFAULT.

Referenced by wilco_ec_get_info().

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

◆ wilco_ec_sendrecv_noargs()

static int wilco_ec_sendrecv_noargs ( uint8_t  command,
void data,
size_t  size 
)
inlinestatic

wilco_ec_sendrecv_noargs

Send a basic EC command with no parameters, ignoring the first byte of returned data to match the common behavior. The maximum response size is 31 due to the ignored byte.

@command: Command to execute @data: Response data buffer @size: Number of bytes in response data buffer (max 31)

Returns
number of bytes received, negative error code on failure

Definition at line 100 of file ec.h.

References NULL, wilco_ec_mailbox(), and WILCO_EC_MSG_DEFAULT.

Referenced by wilco_ec_get_power_smi(), and wilco_ec_get_power_status().

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