| 
    Zephyr Project API
    3.4.0
    
   A Scalable Open Source RTOS 
   | 
 
Public APIs for eSPI driver. More...
#include <errno.h>#include <zephyr/sys/__assert.h>#include <zephyr/types.h>#include <zephyr/device.h>#include <zephyr/sys/slist.h>#include <syscalls/espi.h>Go to the source code of this file.
Data Structures | |
| struct | espi_evt_data_kbc | 
| Bit field definition of evt_data in struct espi_event for KBC.  More... | |
| struct | espi_evt_data_acpi | 
| Bit field definition of evt_data in struct espi_event for ACPI.  More... | |
| struct | espi_event | 
| eSPI event  More... | |
| struct | espi_cfg | 
| eSPI bus configuration parameters  More... | |
| struct | espi_request_packet | 
| eSPI peripheral request packet format  More... | |
| struct | espi_oob_packet | 
| eSPI out-of-band transaction packet format  More... | |
| struct | espi_flash_packet | 
| eSPI flash transactions packet format  More... | |
Macros | |
| #define | ESPI_VWIRE_SIGNAL_OCB_0 ESPI_VWIRE_SIGNAL_SLV_GPIO_0 | 
| #define | ESPI_VWIRE_SIGNAL_OCB_1 ESPI_VWIRE_SIGNAL_SLV_GPIO_1 | 
| #define | ESPI_VWIRE_SIGNAL_OCB_2 ESPI_VWIRE_SIGNAL_SLV_GPIO_2 | 
| #define | ESPI_VWIRE_SIGNAL_OCB_3 ESPI_VWIRE_SIGNAL_SLV_GPIO_3 | 
| #define | HOST_KBC_EVT_IBF BIT(0) | 
| #define | HOST_KBC_EVT_OBE BIT(1) | 
Typedefs | |
| typedef void(* | espi_callback_handler_t) (const struct device *dev, struct espi_callback *cb, struct espi_event espi_evt) | 
| Define the application callback handler function signature.  More... | |
Functions | |
| int | espi_config (const struct device *dev, struct espi_cfg *cfg) | 
| Configure operation of a eSPI controller.  More... | |
| bool | espi_get_channel_status (const struct device *dev, enum espi_channel ch) | 
| Query to see if it a channel is ready.  More... | |
| int | espi_read_request (const struct device *dev, struct espi_request_packet *req) | 
| Sends memory, I/O or message read request over eSPI.  More... | |
| int | espi_write_request (const struct device *dev, struct espi_request_packet *req) | 
| Sends memory, I/O or message write request over eSPI.  More... | |
| int | espi_read_lpc_request (const struct device *dev, enum lpc_peripheral_opcode op, uint32_t *data) | 
| Reads SOC data from a LPC peripheral with information updated over eSPI.  More... | |
| int | espi_write_lpc_request (const struct device *dev, enum lpc_peripheral_opcode op, uint32_t *data) | 
| Writes data to a LPC peripheral which generates an eSPI transaction.  More... | |
| int | espi_send_vwire (const struct device *dev, enum espi_vwire_signal signal, uint8_t level) | 
| Sends system/platform signal as a virtual wire packet.  More... | |
| int | espi_receive_vwire (const struct device *dev, enum espi_vwire_signal signal, uint8_t *level) | 
| Retrieves level status for a signal encapsulated in a virtual wire.  More... | |
| int | espi_send_oob (const struct device *dev, struct espi_oob_packet *pckt) | 
| Sends SMBus transaction (out-of-band) packet over eSPI bus.  More... | |
| int | espi_receive_oob (const struct device *dev, struct espi_oob_packet *pckt) | 
| Receives SMBus transaction (out-of-band) packet from eSPI bus.  More... | |
| int | espi_read_flash (const struct device *dev, struct espi_flash_packet *pckt) | 
| Sends a read request packet for shared flash.  More... | |
| int | espi_write_flash (const struct device *dev, struct espi_flash_packet *pckt) | 
| Sends a write request packet for shared flash.  More... | |
| int | espi_flash_erase (const struct device *dev, struct espi_flash_packet *pckt) | 
| Sends a write request packet for shared flash.  More... | |
| static void | espi_init_callback (struct espi_callback *callback, espi_callback_handler_t handler, enum espi_bus_event evt_type) | 
| Helper to initialize a struct espi_callback properly.  More... | |
| static int | espi_add_callback (const struct device *dev, struct espi_callback *callback) | 
| Add an application callback.  More... | |
| static int | espi_remove_callback (const struct device *dev, struct espi_callback *callback) | 
| Remove an application callback.  More... | |
Public APIs for eSPI driver.