coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
espi.h File Reference
#include <types.h>
Include dependency graph for espi.h:

Go to the source code of this file.

Macros

#define ESPI_SLAVE_DEVICE_ID   0x04
 
#define ESPI_SLAVE_VERSION_ID_SHIFT   0
 
#define ESPI_SLAVE_VERSION_ID_MASK   0xf
 
#define ESPI_SLAVE_GENERAL_CFG   0x08
 
#define ESPI_SLAVE_CRC_ENABLE   (1 << 31)
 
#define ESPI_SLAVE_CRC_DISABLE   (0 << 31)
 
#define ESPI_SLAVE_RESP_MOD_ENABLE   (1 << 30)
 
#define ESPI_SLAVE_RESP_MOD_DISABLE   (0 << 30)
 
#define ESPI_SLAVE_ALERT_MODE_PIN   (1 << 28)
 
#define ESPI_SLAVE_ALERT_MODE_IO1   (0 << 28)
 
#define ESPI_SLAVE_IO_MODE_SEL_SHIFT   26
 
#define ESPI_SLAVE_IO_MODE_SEL_MASK   (0x3 << ESPI_SLAVE_IO_MODE_SEL_SHIFT)
 
#define ESPI_SLAVE_IO_MODE_SEL_VAL(x)   ((x) << ESPI_SLAVE_IO_MODE_SEL_SHIFT)
 
#define ESPI_SLAVE_IO_MODE_SEL_SINGLE   ESPI_SLAVE_IO_MODE_SEL_VAL(0)
 
#define ESPI_SLAVE_IO_MODE_SEL_DUAL   ESPI_SLAVE_IO_MODE_SEL_VAL(1)
 
#define ESPI_SLAVE_IO_MODE_SEL_QUAD   ESPI_SLAVE_IO_MODE_SEL_VAL(2)
 
#define ESPI_SLAVE_IO_MODE_SUPP_SHIFT   24
 
#define ESPI_SLAVE_IO_MODE_SUPP_MASK   (0x3 << ESPI_SLAVE_IO_MODE_SUPP_SHIFT)
 
#define ESPI_SLAVE_IO_MODE_SUPP_VAL(x)   ((x) << ESPI_SLAVE_IO_MODE_SUPP_SHIFT)
 
#define ESPI_SLAVE_IO_MODE_SUPP_SINGLE_ONLY   ESPI_SLAVE_IO_MODE_SUPP_VAL(0)
 
#define ESPI_SLAVE_IO_MODE_SUPP_SINGLE_DUAL   ESPI_SLAVE_IO_MODE_SUPP_VAL(1)
 
#define ESPI_SLAVE_IO_MODE_SUPP_SINGLE_QUAD   ESPI_SLAVE_IO_MODE_SUPP_VAL(2)
 
#define ESPI_SLAVE_IO_MODE_SUPP_SINGLE_DUAL_QUAD   ESPI_SLAVE_IO_MODE_SUPP_VAL(3)
 
#define ESPI_SLAVE_OPEN_DRAIN_ALERT_SEL   (1 << 23)
 
#define ESPI_SLAVE_PUSH_PULL_ALERT_SEL   (0 << 23)
 
#define ESPI_SLAVE_OP_FREQ_SEL_SHIFT   20
 
#define ESPI_SLAVE_OP_FREQ_SEL_MASK   (0x7 << ESPI_SLAVE_OP_FREQ_SEL_SHIFT)
 
#define ESPI_SLAVE_OP_FREQ_SEL_VAL(x)   ((x) << ESPI_SLAVE_OP_FREQ_SEL_SHIFT)
 
#define ESPI_SLAVE_OP_FREQ_SEL_20_MHZ   ESPI_SLAVE_OP_FREQ_SEL_VAL(0)
 
#define ESPI_SLAVE_OP_FREQ_SEL_25_MHZ   ESPI_SLAVE_OP_FREQ_SEL_VAL(1)
 
#define ESPI_SLAVE_OP_FREQ_SEL_33_MHZ   ESPI_SLAVE_OP_FREQ_SEL_VAL(2)
 
#define ESPI_SLAVE_OP_FREQ_SEL_50_MHZ   ESPI_SLAVE_OP_FREQ_SEL_VAL(3)
 
#define ESPI_SLAVE_OP_FREQ_SEL_66_MHZ   ESPI_SLAVE_OP_FREQ_SEL_VAL(4)
 
#define ESPI_SLAVE_OPEN_DRAIN_ALERT_SUPP   (1 << 19)
 
#define ESPI_SLAVE_OP_FREQ_SUPP_SHIFT   16
 
#define ESPI_SLAVE_OP_FREQ_SUPP_MASK   (0x7 << ESPI_SLAVE_OP_FREQ_SUPP_SHIFT)
 
#define ESPI_SLAVE_OP_FREQ_SUPP_VAL(x)   ((x) << ESPI_SLAVE_OP_FREQ_SUPP_SHIFT)
 
#define ESPI_SLAVE_OP_FREQ_SUPP_20_MHZ   ESPI_SLAVE_OP_FREQ_SUPP_VAL(0)
 
#define ESPI_SLAVE_OP_FREQ_SUPP_25_MHZ   ESPI_SLAVE_OP_FREQ_SUPP_VAL(1)
 
#define ESPI_SLAVE_OP_FREQ_SUPP_33_MHZ   ESPI_SLAVE_OP_FREQ_SUPP_VAL(2)
 
#define ESPI_SLAVE_OP_FREQ_SUPP_50_MHZ   ESPI_SLAVE_OP_FREQ_SUPP_VAL(3)
 
#define ESPI_SLAVE_OP_FREQ_SUPP_66_MHZ   ESPI_SLAVE_OP_FREQ_SUPP_VAL(4)
 
#define ESPI_SLAVE_MAX_WAIT_SHIFT   12
 
#define ESPI_SLAVE_MAX_WAIT_MASK   (0xf << ESPI_SLAVE_MAX_WAIT_SHIFT)
 
#define ESPI_SLAVE_MAX_WAIT_STATE(x)    (((x) << ESPI_SLAVE_MAX_WAIT_SHIFT) & ESPI_MAX_WAIT_MASK)
 
#define ESPI_SLAVE_FLASH_CH_SUPP   (1 << 3)
 
#define ESPI_SLAVE_OOB_CH_SUPP   (1 << 2)
 
#define ESPI_SLAVE_VW_CH_SUPP   (1 << 1)
 
#define ESPI_SLAVE_PERIPH_CH_SUPP   (1 << 0)
 
#define ESPI_SLAVE_PERIPH_CFG   0x10
 
#define ESPI_SLAVE_PERIPH_MAX_READ_SIZE_SHIFT   12
 
#define ESPI_SLAVE_PERIPH_MAX_READ_SIZE_MASK    (0x7 << ESPI_SLAVE_PERIPH_MAX_READ_SIZE_SHIFT)
 
#define ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL(x)    ((x) << ESPI_SLAVE_PERIPH_MAX_READ_SIZE_SHIFT)
 
#define ESPI_SLAVE_PERIPH_MAX_READ_64B   ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL(1)
 
#define ESPI_SLAVE_PERIPH_MAX_READ_128B   ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL(2)
 
#define ESPI_SLAVE_PERIPH_MAX_READ_256B   ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL(3)
 
#define ESPI_SLAVE_PERIPH_MAX_READ_512B   ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL(4)
 
#define ESPI_SLAVE_PERIPH_MAX_READ_1024B   ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL(5)
 
#define ESPI_SLAVE_PERIPH_MAX_READ_2048B   ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL(6)
 
#define ESPI_SLAVE_PERIPH_MAX_READ_4096B   ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL(7)
 
#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_SHIFT   8
 
#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_MASK    (0x7 << ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_SHIFT)
 
#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_VAL(x)    ((x) << ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_SHIFT)
 
#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_64B    ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_VAL(1)
 
#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_128B    ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_VAL(2)
 
#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_256B    ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_VAL(3)
 
#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_SHIFT   4
 
#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_MASK    (0x7 << ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_SHIFT)
 
#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_VAL(x)    ((x) << ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_SHIFT)
 
#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_64B    ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_VAL(1)
 
#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_128B    ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_VAL(2)
 
#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_256B    ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_VAL(3)
 
#define ESPI_SLAVE_PERIPH_BUS_MASTER_ENABLE   (1 << 2)
 
#define ESPI_SLAVE_VW_CFG   0x20
 
#define ESPI_SLAVE_VW_COUNT_SEL_SHIFT   16
 
#define ESPI_SLAVE_VW_COUNT_SEL_MASK   (0x3f << ESPI_SLAVE_VW_COUNT_SEL_SHIFT)
 
#define ESPI_SLAVE_VW_COUNT_SEL_VAL(x)    ((x) << ESPI_SLAVE_VW_COUNT_SEL_SHIFT)
 
#define ESPI_SLAVE_VW_COUNT_SUPP_SHIFT   8
 
#define ESPI_SLAVE_VW_COUNT_SUPP_MASK    (0x3f << ESPI_SLAVE_VW_COUNT_SUPP_SHIFT)
 
#define ESPI_SLAVE_OOB_CFG   0x30
 
#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_SHIFT   8
 
#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_MASK    (0x7 << ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_SHIFT)
 
#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_VAL(x)    ((x) << ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_SHIFT)
 
#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_64B    ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_VAL(1)
 
#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_128B    ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_VAL(2)
 
#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_256B    ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_VAL(3)
 
#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_SHIFT   4
 
#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_MASK    (0x7 << ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_SHIFT)
 
#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_VAL(x)    ((x) << ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_SHIFT)
 
#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_64B    ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_VAL(1)
 
#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_128B    ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_VAL(2)
 
#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_256B    ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_VAL(3)
 
#define ESPI_SLAVE_FLASH_CFG   0x40
 
#define ESPI_SLAVE_FLASH_MAX_READ_SIZE_SHIFT   12
 
#define ESPI_SLAVE_FLASH_MAX_READ_SIZE_MASK    (0x7 << ESPI_SLAVE_FLASH_MAX_READ_SIZE_SHIFT)
 
#define ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL(x)    ((x) << ESPI_SLAVE_FLASH_MAX_READ_SIZE_SHIFT)
 
#define ESPI_SLAVE_FLASH_MAX_READ_64B   ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL(1)
 
#define ESPI_SLAVE_FLASH_MAX_READ_128B   ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL(2)
 
#define ESPI_SLAVE_FLASH_MAX_READ_256B   ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL(3)
 
#define ESPI_SLAVE_FLASH_MAX_READ_512B   ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL(4)
 
#define ESPI_SLAVE_FLASH_MAX_READ_1024B   ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL(5)
 
#define ESPI_SLAVE_FLASH_MAX_READ_2048B   ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL(6)
 
#define ESPI_SLAVE_FLASH_MAX_READ_4096B   ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL(7)
 
#define ESPI_SLAVE_FLASH_SHARING_MODE_MAF   (1 << 11)
 
#define ESPI_SLAVE_FLASH_SHARING_MODE_SAF   (0 << 11)
 
#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_SHIFT   8
 
#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_MASK    (0x7 << ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_SHIFT)
 
#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_VAL(x)    ((x) << ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_SHIFT)
 
#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_64B    ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_VAL(1)
 
#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_128B    ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_VAL(2)
 
#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_256B    ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_VAL(3)
 
#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_SHIFT   5
 
#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_MASK    (0x7 << ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_SHIFT)
 
#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_VAL(x)    ((x) << ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_SHIFT)
 
#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_64B    ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_VAL(1)
 
#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_128B    ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_VAL(2)
 
#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_256B    ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_VAL(3)
 
#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_SHIFT   2
 
#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_MASK    (0x7 << ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_SHIFT)
 
#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_VAL(x)    ((x) << ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_SHIFT)
 
#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_4K    ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_VAL(1)
 
#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_64K    ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_VAL(2)
 
#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_4K_64K    ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_VAL(3)
 
#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_128K    ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_VAL(4)
 
#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_256K    ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_VAL(5)
 
#define ESPI_SLAVE_CHANNEL_READY   (1 << 1)
 
#define ESPI_SLAVE_CHANNEL_ENABLE   (1 << 0)
 
#define ESPI_VW_INDEX_INTERRUPT_EVENT_0   0 /* Interrupt lines 0 - 127 */
 
#define ESPI_VW_INDEX_INTERRUPT_EVENT_1   1 /* Interrupt lines 128-255 */
 
#define ESPI_VW_INTERRUPT_LEVEL_HIGH   (1 << 7)
 
#define ESPI_VW_INTERRUPT_LEVEL_LOW   (0 << 7)
 
#define ESPI_VW_INDEX_SYSTEM_EVENT_2   2
 
#define ESPI_VW_SLP_S5   2
 
#define ESPI_VW_SLP_S4   1
 
#define ESPI_VW_SLP_S3   0
 
#define ESPI_VW_INDEX_SYSTEM_EVENT_3   3
 
#define ESPI_VW_OOB_RST_WARN   2
 
#define ESPI_VW_PLTRST   1
 
#define ESPI_VW_SUS_STAT   0
 
#define ESPI_VW_INDEX_SYSTEM_EVENT_4   4
 
#define ESPI_VW_PME   3
 
#define ESPI_VW_WAKE   2
 
#define ESPI_VW_OOB_RST_ACK   0
 
#define ESPI_VW_INDEX_SYSTEM_EVENT_5   5
 
#define ESPI_VW_SLAVE_BOOT_LOAD_STATUS   3
 
#define ESPI_VW_ERROR_NON_FATAL   2
 
#define ESPI_VW_ERROR_FATAL   1
 
#define ESPI_VW_SLV_BOOT_LOAD_DONE   0
 
#define ESPI_VW_INDEX_SYSTEM_EVENT_6   6
 
#define ESPI_VW_HOST_RST_ACK   3
 
#define ESPI_VW_RCIN   2
 
#define ESPI_VW_SMI   1
 
#define ESPI_VW_SCI   0
 
#define ESPI_VW_INDEX_SYSTEM_EVENT_7   7
 
#define ESPI_VW_NMIOUT   2
 
#define ESPI_VW_SMIOUT   1
 
#define ESPI_VW_HOST_RST_WARN   0
 
#define ESPI_VW_VALID(x)   (1 << ((x) + 4))
 
#define ESPI_VW_VALUE(x, v)   ((v) << (x))
 
#define ESPI_VW_SIGNAL_HIGH(x)   (ESPI_VW_VALID(x) | ESPI_VW_VALUE(1, x))
 
#define ESPI_VW_SIGNAL_LOW(x)   (ESPI_VW_VALID(x) | ESPI_VW_VALUE(0, x))
 

Functions

static void espi_show_slave_general_configuration (uint32_t config)
 
static void espi_show_slave_peripheral_channel_configuration (uint32_t config)
 
static bool espi_slave_supports_quad_io (uint32_t gen_caps)
 
static bool espi_slave_supports_dual_io (uint32_t gen_caps)
 
static bool espi_slave_supports_66_mhz (uint32_t gen_caps)
 
static bool espi_slave_supports_50_mhz (uint32_t gen_caps)
 
static bool espi_slave_supports_33_mhz (uint32_t gen_caps)
 
static bool espi_slave_supports_25_mhz (uint32_t gen_caps)
 
static bool espi_slave_supports_20_mhz (uint32_t gen_caps)
 
static int espi_slave_max_speed_mhz_supported (uint32_t gen_caps)
 
static bool espi_slave_supports_vw_channel (uint32_t gen_caps)
 
static bool espi_slave_supports_periph_channel (uint32_t gen_caps)
 
static bool espi_slave_supports_oob_channel (uint32_t gen_caps)
 
static bool espi_slave_supports_flash_channel (uint32_t gen_caps)
 
static bool espi_slave_is_channel_ready (uint32_t config)
 
static uint32_t espi_slave_get_vw_count_supp (uint32_t vw_caps)
 

Macro Definition Documentation

◆ ESPI_SLAVE_ALERT_MODE_IO1

#define ESPI_SLAVE_ALERT_MODE_IO1   (0 << 28)

Definition at line 20 of file espi.h.

◆ ESPI_SLAVE_ALERT_MODE_PIN

#define ESPI_SLAVE_ALERT_MODE_PIN   (1 << 28)

Definition at line 19 of file espi.h.

◆ ESPI_SLAVE_CHANNEL_ENABLE

#define ESPI_SLAVE_CHANNEL_ENABLE   (1 << 0)

Definition at line 191 of file espi.h.

◆ ESPI_SLAVE_CHANNEL_READY

#define ESPI_SLAVE_CHANNEL_READY   (1 << 1)

Definition at line 190 of file espi.h.

◆ ESPI_SLAVE_CRC_DISABLE

#define ESPI_SLAVE_CRC_DISABLE   (0 << 31)

Definition at line 16 of file espi.h.

◆ ESPI_SLAVE_CRC_ENABLE

#define ESPI_SLAVE_CRC_ENABLE   (1 << 31)

Definition at line 15 of file espi.h.

◆ ESPI_SLAVE_DEVICE_ID

#define ESPI_SLAVE_DEVICE_ID   0x04

Definition at line 10 of file espi.h.

◆ ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_128K

#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_128K    ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_VAL(4)

Definition at line 181 of file espi.h.

◆ ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_256K

#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_256K    ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_VAL(5)

Definition at line 183 of file espi.h.

◆ ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_4K

#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_4K    ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_VAL(1)

Definition at line 175 of file espi.h.

◆ ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_4K_64K

#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_4K_64K    ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_VAL(3)

Definition at line 179 of file espi.h.

◆ ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_64K

#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_64K    ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_VAL(2)

Definition at line 177 of file espi.h.

◆ ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_MASK

#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_MASK    (0x7 << ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_SHIFT)

Definition at line 171 of file espi.h.

◆ ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_SHIFT

#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_SHIFT   2

Definition at line 170 of file espi.h.

◆ ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_VAL

#define ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_VAL (   x)     ((x) << ESPI_SLAVE_FLASH_BLOCK_ERASE_SIZE_SHIFT)

Definition at line 173 of file espi.h.

◆ ESPI_SLAVE_FLASH_CFG

#define ESPI_SLAVE_FLASH_CFG   0x40

Definition at line 133 of file espi.h.

◆ ESPI_SLAVE_FLASH_CH_SUPP

#define ESPI_SLAVE_FLASH_CH_SUPP   (1 << 3)

Definition at line 57 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_128B

#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_128B    ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_VAL(2)

Definition at line 155 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_256B

#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_256B    ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_VAL(3)

Definition at line 157 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_64B

#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_64B    ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_VAL(1)

Definition at line 153 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_MASK

#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_MASK    (0x7 << ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_SHIFT)

Definition at line 149 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_SHIFT

#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_SHIFT   8

Definition at line 148 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_VAL

#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_VAL (   x)     ((x) << ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SEL_SHIFT)

Definition at line 151 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_128B

#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_128B    ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_VAL(2)

Definition at line 166 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_256B

#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_256B    ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_VAL(3)

Definition at line 168 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_64B

#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_64B    ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_VAL(1)

Definition at line 164 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_MASK

#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_MASK    (0x7 << ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_SHIFT)

Definition at line 160 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_SHIFT

#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_SHIFT   5

Definition at line 159 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_VAL

#define ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_VAL (   x)     ((x) << ESPI_SLAVE_FLASH_MAX_PAYLOAD_SIZE_SUPP_SHIFT)

Definition at line 162 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_READ_1024B

#define ESPI_SLAVE_FLASH_MAX_READ_1024B   ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL(5)

Definition at line 143 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_READ_128B

#define ESPI_SLAVE_FLASH_MAX_READ_128B   ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL(2)

Definition at line 140 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_READ_2048B

#define ESPI_SLAVE_FLASH_MAX_READ_2048B   ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL(6)

Definition at line 144 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_READ_256B

#define ESPI_SLAVE_FLASH_MAX_READ_256B   ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL(3)

Definition at line 141 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_READ_4096B

#define ESPI_SLAVE_FLASH_MAX_READ_4096B   ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL(7)

Definition at line 145 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_READ_512B

#define ESPI_SLAVE_FLASH_MAX_READ_512B   ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL(4)

Definition at line 142 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_READ_64B

#define ESPI_SLAVE_FLASH_MAX_READ_64B   ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL(1)

Definition at line 139 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_READ_SIZE_MASK

#define ESPI_SLAVE_FLASH_MAX_READ_SIZE_MASK    (0x7 << ESPI_SLAVE_FLASH_MAX_READ_SIZE_SHIFT)

Definition at line 135 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_READ_SIZE_SHIFT

#define ESPI_SLAVE_FLASH_MAX_READ_SIZE_SHIFT   12

Definition at line 134 of file espi.h.

◆ ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL

#define ESPI_SLAVE_FLASH_MAX_READ_SIZE_VAL (   x)     ((x) << ESPI_SLAVE_FLASH_MAX_READ_SIZE_SHIFT)

Definition at line 137 of file espi.h.

◆ ESPI_SLAVE_FLASH_SHARING_MODE_MAF

#define ESPI_SLAVE_FLASH_SHARING_MODE_MAF   (1 << 11)

Definition at line 146 of file espi.h.

◆ ESPI_SLAVE_FLASH_SHARING_MODE_SAF

#define ESPI_SLAVE_FLASH_SHARING_MODE_SAF   (0 << 11)

Definition at line 147 of file espi.h.

◆ ESPI_SLAVE_GENERAL_CFG

#define ESPI_SLAVE_GENERAL_CFG   0x08

Definition at line 14 of file espi.h.

◆ ESPI_SLAVE_IO_MODE_SEL_DUAL

#define ESPI_SLAVE_IO_MODE_SEL_DUAL   ESPI_SLAVE_IO_MODE_SEL_VAL(1)

Definition at line 25 of file espi.h.

◆ ESPI_SLAVE_IO_MODE_SEL_MASK

#define ESPI_SLAVE_IO_MODE_SEL_MASK   (0x3 << ESPI_SLAVE_IO_MODE_SEL_SHIFT)

Definition at line 22 of file espi.h.

◆ ESPI_SLAVE_IO_MODE_SEL_QUAD

#define ESPI_SLAVE_IO_MODE_SEL_QUAD   ESPI_SLAVE_IO_MODE_SEL_VAL(2)

Definition at line 26 of file espi.h.

◆ ESPI_SLAVE_IO_MODE_SEL_SHIFT

#define ESPI_SLAVE_IO_MODE_SEL_SHIFT   26

Definition at line 21 of file espi.h.

◆ ESPI_SLAVE_IO_MODE_SEL_SINGLE

#define ESPI_SLAVE_IO_MODE_SEL_SINGLE   ESPI_SLAVE_IO_MODE_SEL_VAL(0)

Definition at line 24 of file espi.h.

◆ ESPI_SLAVE_IO_MODE_SEL_VAL

#define ESPI_SLAVE_IO_MODE_SEL_VAL (   x)    ((x) << ESPI_SLAVE_IO_MODE_SEL_SHIFT)

Definition at line 23 of file espi.h.

◆ ESPI_SLAVE_IO_MODE_SUPP_MASK

#define ESPI_SLAVE_IO_MODE_SUPP_MASK   (0x3 << ESPI_SLAVE_IO_MODE_SUPP_SHIFT)

Definition at line 28 of file espi.h.

◆ ESPI_SLAVE_IO_MODE_SUPP_SHIFT

#define ESPI_SLAVE_IO_MODE_SUPP_SHIFT   24

Definition at line 27 of file espi.h.

◆ ESPI_SLAVE_IO_MODE_SUPP_SINGLE_DUAL

#define ESPI_SLAVE_IO_MODE_SUPP_SINGLE_DUAL   ESPI_SLAVE_IO_MODE_SUPP_VAL(1)

Definition at line 31 of file espi.h.

◆ ESPI_SLAVE_IO_MODE_SUPP_SINGLE_DUAL_QUAD

#define ESPI_SLAVE_IO_MODE_SUPP_SINGLE_DUAL_QUAD   ESPI_SLAVE_IO_MODE_SUPP_VAL(3)

Definition at line 33 of file espi.h.

◆ ESPI_SLAVE_IO_MODE_SUPP_SINGLE_ONLY

#define ESPI_SLAVE_IO_MODE_SUPP_SINGLE_ONLY   ESPI_SLAVE_IO_MODE_SUPP_VAL(0)

Definition at line 30 of file espi.h.

◆ ESPI_SLAVE_IO_MODE_SUPP_SINGLE_QUAD

#define ESPI_SLAVE_IO_MODE_SUPP_SINGLE_QUAD   ESPI_SLAVE_IO_MODE_SUPP_VAL(2)

Definition at line 32 of file espi.h.

◆ ESPI_SLAVE_IO_MODE_SUPP_VAL

#define ESPI_SLAVE_IO_MODE_SUPP_VAL (   x)    ((x) << ESPI_SLAVE_IO_MODE_SUPP_SHIFT)

Definition at line 29 of file espi.h.

◆ ESPI_SLAVE_MAX_WAIT_MASK

#define ESPI_SLAVE_MAX_WAIT_MASK   (0xf << ESPI_SLAVE_MAX_WAIT_SHIFT)

Definition at line 54 of file espi.h.

◆ ESPI_SLAVE_MAX_WAIT_SHIFT

#define ESPI_SLAVE_MAX_WAIT_SHIFT   12

Definition at line 53 of file espi.h.

◆ ESPI_SLAVE_MAX_WAIT_STATE

#define ESPI_SLAVE_MAX_WAIT_STATE (   x)     (((x) << ESPI_SLAVE_MAX_WAIT_SHIFT) & ESPI_MAX_WAIT_MASK)

Definition at line 55 of file espi.h.

◆ ESPI_SLAVE_OOB_CFG

#define ESPI_SLAVE_OOB_CFG   0x30

Definition at line 109 of file espi.h.

◆ ESPI_SLAVE_OOB_CH_SUPP

#define ESPI_SLAVE_OOB_CH_SUPP   (1 << 2)

Definition at line 58 of file espi.h.

◆ ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_128B

#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_128B    ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_VAL(2)

Definition at line 117 of file espi.h.

◆ ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_256B

#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_256B    ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_VAL(3)

Definition at line 119 of file espi.h.

◆ ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_64B

#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_64B    ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_VAL(1)

Definition at line 115 of file espi.h.

◆ ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_MASK

#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_MASK    (0x7 << ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_SHIFT)

Definition at line 111 of file espi.h.

◆ ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_SHIFT

#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_SHIFT   8

Definition at line 110 of file espi.h.

◆ ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_VAL

#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_VAL (   x)     ((x) << ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SEL_SHIFT)

Definition at line 113 of file espi.h.

◆ ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_128B

#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_128B    ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_VAL(2)

Definition at line 128 of file espi.h.

◆ ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_256B

#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_256B    ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_VAL(3)

Definition at line 130 of file espi.h.

◆ ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_64B

#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_64B    ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_VAL(1)

Definition at line 126 of file espi.h.

◆ ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_MASK

#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_MASK    (0x7 << ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_SHIFT)

Definition at line 122 of file espi.h.

◆ ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_SHIFT

#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_SHIFT   4

Definition at line 121 of file espi.h.

◆ ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_VAL

#define ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_VAL (   x)     ((x) << ESPI_SLAVE_OOB_MAX_PAYLOAD_SIZE_SUPP_SHIFT)

Definition at line 124 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SEL_20_MHZ

#define ESPI_SLAVE_OP_FREQ_SEL_20_MHZ   ESPI_SLAVE_OP_FREQ_SEL_VAL(0)

Definition at line 39 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SEL_25_MHZ

#define ESPI_SLAVE_OP_FREQ_SEL_25_MHZ   ESPI_SLAVE_OP_FREQ_SEL_VAL(1)

Definition at line 40 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SEL_33_MHZ

#define ESPI_SLAVE_OP_FREQ_SEL_33_MHZ   ESPI_SLAVE_OP_FREQ_SEL_VAL(2)

Definition at line 41 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SEL_50_MHZ

#define ESPI_SLAVE_OP_FREQ_SEL_50_MHZ   ESPI_SLAVE_OP_FREQ_SEL_VAL(3)

Definition at line 42 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SEL_66_MHZ

#define ESPI_SLAVE_OP_FREQ_SEL_66_MHZ   ESPI_SLAVE_OP_FREQ_SEL_VAL(4)

Definition at line 43 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SEL_MASK

#define ESPI_SLAVE_OP_FREQ_SEL_MASK   (0x7 << ESPI_SLAVE_OP_FREQ_SEL_SHIFT)

Definition at line 37 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SEL_SHIFT

#define ESPI_SLAVE_OP_FREQ_SEL_SHIFT   20

Definition at line 36 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SEL_VAL

#define ESPI_SLAVE_OP_FREQ_SEL_VAL (   x)    ((x) << ESPI_SLAVE_OP_FREQ_SEL_SHIFT)

Definition at line 38 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SUPP_20_MHZ

#define ESPI_SLAVE_OP_FREQ_SUPP_20_MHZ   ESPI_SLAVE_OP_FREQ_SUPP_VAL(0)

Definition at line 48 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SUPP_25_MHZ

#define ESPI_SLAVE_OP_FREQ_SUPP_25_MHZ   ESPI_SLAVE_OP_FREQ_SUPP_VAL(1)

Definition at line 49 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SUPP_33_MHZ

#define ESPI_SLAVE_OP_FREQ_SUPP_33_MHZ   ESPI_SLAVE_OP_FREQ_SUPP_VAL(2)

Definition at line 50 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SUPP_50_MHZ

#define ESPI_SLAVE_OP_FREQ_SUPP_50_MHZ   ESPI_SLAVE_OP_FREQ_SUPP_VAL(3)

Definition at line 51 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SUPP_66_MHZ

#define ESPI_SLAVE_OP_FREQ_SUPP_66_MHZ   ESPI_SLAVE_OP_FREQ_SUPP_VAL(4)

Definition at line 52 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SUPP_MASK

#define ESPI_SLAVE_OP_FREQ_SUPP_MASK   (0x7 << ESPI_SLAVE_OP_FREQ_SUPP_SHIFT)

Definition at line 46 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SUPP_SHIFT

#define ESPI_SLAVE_OP_FREQ_SUPP_SHIFT   16

Definition at line 45 of file espi.h.

◆ ESPI_SLAVE_OP_FREQ_SUPP_VAL

#define ESPI_SLAVE_OP_FREQ_SUPP_VAL (   x)    ((x) << ESPI_SLAVE_OP_FREQ_SUPP_SHIFT)

Definition at line 47 of file espi.h.

◆ ESPI_SLAVE_OPEN_DRAIN_ALERT_SEL

#define ESPI_SLAVE_OPEN_DRAIN_ALERT_SEL   (1 << 23)

Definition at line 34 of file espi.h.

◆ ESPI_SLAVE_OPEN_DRAIN_ALERT_SUPP

#define ESPI_SLAVE_OPEN_DRAIN_ALERT_SUPP   (1 << 19)

Definition at line 44 of file espi.h.

◆ ESPI_SLAVE_PERIPH_BUS_MASTER_ENABLE

#define ESPI_SLAVE_PERIPH_BUS_MASTER_ENABLE   (1 << 2)

Definition at line 97 of file espi.h.

◆ ESPI_SLAVE_PERIPH_CFG

#define ESPI_SLAVE_PERIPH_CFG   0x10

Definition at line 62 of file espi.h.

◆ ESPI_SLAVE_PERIPH_CH_SUPP

#define ESPI_SLAVE_PERIPH_CH_SUPP   (1 << 0)

Definition at line 60 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_128B

#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_128B    ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_VAL(2)

Definition at line 82 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_256B

#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_256B    ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_VAL(3)

Definition at line 84 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_64B

#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_64B    ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_VAL(1)

Definition at line 80 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_MASK

#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_MASK    (0x7 << ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_SHIFT)

Definition at line 76 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_SHIFT

#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_SHIFT   8

Definition at line 75 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_VAL

#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_VAL (   x)     ((x) << ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SEL_SHIFT)

Definition at line 78 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_128B

#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_128B    ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_VAL(2)

Definition at line 93 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_256B

#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_256B    ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_VAL(3)

Definition at line 95 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_64B

#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_64B    ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_VAL(1)

Definition at line 91 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_MASK

#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_MASK    (0x7 << ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_SHIFT)

Definition at line 87 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_SHIFT

#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_SHIFT   4

Definition at line 86 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_VAL

#define ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_VAL (   x)     ((x) << ESPI_SLAVE_PERIPH_MAX_PAYLOAD_SIZE_SUPP_SHIFT)

Definition at line 89 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_READ_1024B

#define ESPI_SLAVE_PERIPH_MAX_READ_1024B   ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL(5)

Definition at line 72 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_READ_128B

#define ESPI_SLAVE_PERIPH_MAX_READ_128B   ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL(2)

Definition at line 69 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_READ_2048B

#define ESPI_SLAVE_PERIPH_MAX_READ_2048B   ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL(6)

Definition at line 73 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_READ_256B

#define ESPI_SLAVE_PERIPH_MAX_READ_256B   ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL(3)

Definition at line 70 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_READ_4096B

#define ESPI_SLAVE_PERIPH_MAX_READ_4096B   ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL(7)

Definition at line 74 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_READ_512B

#define ESPI_SLAVE_PERIPH_MAX_READ_512B   ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL(4)

Definition at line 71 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_READ_64B

#define ESPI_SLAVE_PERIPH_MAX_READ_64B   ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL(1)

Definition at line 68 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_READ_SIZE_MASK

#define ESPI_SLAVE_PERIPH_MAX_READ_SIZE_MASK    (0x7 << ESPI_SLAVE_PERIPH_MAX_READ_SIZE_SHIFT)

Definition at line 64 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_READ_SIZE_SHIFT

#define ESPI_SLAVE_PERIPH_MAX_READ_SIZE_SHIFT   12

Definition at line 63 of file espi.h.

◆ ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL

#define ESPI_SLAVE_PERIPH_MAX_READ_SIZE_VAL (   x)     ((x) << ESPI_SLAVE_PERIPH_MAX_READ_SIZE_SHIFT)

Definition at line 66 of file espi.h.

◆ ESPI_SLAVE_PUSH_PULL_ALERT_SEL

#define ESPI_SLAVE_PUSH_PULL_ALERT_SEL   (0 << 23)

Definition at line 35 of file espi.h.

◆ ESPI_SLAVE_RESP_MOD_DISABLE

#define ESPI_SLAVE_RESP_MOD_DISABLE   (0 << 30)

Definition at line 18 of file espi.h.

◆ ESPI_SLAVE_RESP_MOD_ENABLE

#define ESPI_SLAVE_RESP_MOD_ENABLE   (1 << 30)

Definition at line 17 of file espi.h.

◆ ESPI_SLAVE_VERSION_ID_MASK

#define ESPI_SLAVE_VERSION_ID_MASK   0xf

Definition at line 12 of file espi.h.

◆ ESPI_SLAVE_VERSION_ID_SHIFT

#define ESPI_SLAVE_VERSION_ID_SHIFT   0

Definition at line 11 of file espi.h.

◆ ESPI_SLAVE_VW_CFG

#define ESPI_SLAVE_VW_CFG   0x20

Definition at line 99 of file espi.h.

◆ ESPI_SLAVE_VW_CH_SUPP

#define ESPI_SLAVE_VW_CH_SUPP   (1 << 1)

Definition at line 59 of file espi.h.

◆ ESPI_SLAVE_VW_COUNT_SEL_MASK

#define ESPI_SLAVE_VW_COUNT_SEL_MASK   (0x3f << ESPI_SLAVE_VW_COUNT_SEL_SHIFT)

Definition at line 101 of file espi.h.

◆ ESPI_SLAVE_VW_COUNT_SEL_SHIFT

#define ESPI_SLAVE_VW_COUNT_SEL_SHIFT   16

Definition at line 100 of file espi.h.

◆ ESPI_SLAVE_VW_COUNT_SEL_VAL

#define ESPI_SLAVE_VW_COUNT_SEL_VAL (   x)     ((x) << ESPI_SLAVE_VW_COUNT_SEL_SHIFT)

Definition at line 103 of file espi.h.

◆ ESPI_SLAVE_VW_COUNT_SUPP_MASK

#define ESPI_SLAVE_VW_COUNT_SUPP_MASK    (0x3f << ESPI_SLAVE_VW_COUNT_SUPP_SHIFT)

Definition at line 106 of file espi.h.

◆ ESPI_SLAVE_VW_COUNT_SUPP_SHIFT

#define ESPI_SLAVE_VW_COUNT_SUPP_SHIFT   8

Definition at line 105 of file espi.h.

◆ ESPI_VW_ERROR_FATAL

#define ESPI_VW_ERROR_FATAL   1

Definition at line 214 of file espi.h.

◆ ESPI_VW_ERROR_NON_FATAL

#define ESPI_VW_ERROR_NON_FATAL   2

Definition at line 213 of file espi.h.

◆ ESPI_VW_HOST_RST_ACK

#define ESPI_VW_HOST_RST_ACK   3

Definition at line 217 of file espi.h.

◆ ESPI_VW_HOST_RST_WARN

#define ESPI_VW_HOST_RST_WARN   0

Definition at line 224 of file espi.h.

◆ ESPI_VW_INDEX_INTERRUPT_EVENT_0

#define ESPI_VW_INDEX_INTERRUPT_EVENT_0   0 /* Interrupt lines 0 - 127 */

Definition at line 194 of file espi.h.

◆ ESPI_VW_INDEX_INTERRUPT_EVENT_1

#define ESPI_VW_INDEX_INTERRUPT_EVENT_1   1 /* Interrupt lines 128-255 */

Definition at line 195 of file espi.h.

◆ ESPI_VW_INDEX_SYSTEM_EVENT_2

#define ESPI_VW_INDEX_SYSTEM_EVENT_2   2

Definition at line 199 of file espi.h.

◆ ESPI_VW_INDEX_SYSTEM_EVENT_3

#define ESPI_VW_INDEX_SYSTEM_EVENT_3   3

Definition at line 203 of file espi.h.

◆ ESPI_VW_INDEX_SYSTEM_EVENT_4

#define ESPI_VW_INDEX_SYSTEM_EVENT_4   4

Definition at line 207 of file espi.h.

◆ ESPI_VW_INDEX_SYSTEM_EVENT_5

#define ESPI_VW_INDEX_SYSTEM_EVENT_5   5

Definition at line 211 of file espi.h.

◆ ESPI_VW_INDEX_SYSTEM_EVENT_6

#define ESPI_VW_INDEX_SYSTEM_EVENT_6   6

Definition at line 216 of file espi.h.

◆ ESPI_VW_INDEX_SYSTEM_EVENT_7

#define ESPI_VW_INDEX_SYSTEM_EVENT_7   7

Definition at line 221 of file espi.h.

◆ ESPI_VW_INTERRUPT_LEVEL_HIGH

#define ESPI_VW_INTERRUPT_LEVEL_HIGH   (1 << 7)

Definition at line 196 of file espi.h.

◆ ESPI_VW_INTERRUPT_LEVEL_LOW

#define ESPI_VW_INTERRUPT_LEVEL_LOW   (0 << 7)

Definition at line 197 of file espi.h.

◆ ESPI_VW_NMIOUT

#define ESPI_VW_NMIOUT   2

Definition at line 222 of file espi.h.

◆ ESPI_VW_OOB_RST_ACK

#define ESPI_VW_OOB_RST_ACK   0

Definition at line 210 of file espi.h.

◆ ESPI_VW_OOB_RST_WARN

#define ESPI_VW_OOB_RST_WARN   2

Definition at line 204 of file espi.h.

◆ ESPI_VW_PLTRST

#define ESPI_VW_PLTRST   1

Definition at line 205 of file espi.h.

◆ ESPI_VW_PME

#define ESPI_VW_PME   3

Definition at line 208 of file espi.h.

◆ ESPI_VW_RCIN

#define ESPI_VW_RCIN   2

Definition at line 218 of file espi.h.

◆ ESPI_VW_SCI

#define ESPI_VW_SCI   0

Definition at line 220 of file espi.h.

◆ ESPI_VW_SIGNAL_HIGH

#define ESPI_VW_SIGNAL_HIGH (   x)    (ESPI_VW_VALID(x) | ESPI_VW_VALUE(1, x))

Definition at line 228 of file espi.h.

◆ ESPI_VW_SIGNAL_LOW

#define ESPI_VW_SIGNAL_LOW (   x)    (ESPI_VW_VALID(x) | ESPI_VW_VALUE(0, x))

Definition at line 229 of file espi.h.

◆ ESPI_VW_SLAVE_BOOT_LOAD_STATUS

#define ESPI_VW_SLAVE_BOOT_LOAD_STATUS   3

Definition at line 212 of file espi.h.

◆ ESPI_VW_SLP_S3

#define ESPI_VW_SLP_S3   0

Definition at line 202 of file espi.h.

◆ ESPI_VW_SLP_S4

#define ESPI_VW_SLP_S4   1

Definition at line 201 of file espi.h.

◆ ESPI_VW_SLP_S5

#define ESPI_VW_SLP_S5   2

Definition at line 200 of file espi.h.

◆ ESPI_VW_SLV_BOOT_LOAD_DONE

#define ESPI_VW_SLV_BOOT_LOAD_DONE   0

Definition at line 215 of file espi.h.

◆ ESPI_VW_SMI

#define ESPI_VW_SMI   1

Definition at line 219 of file espi.h.

◆ ESPI_VW_SMIOUT

#define ESPI_VW_SMIOUT   1

Definition at line 223 of file espi.h.

◆ ESPI_VW_SUS_STAT

#define ESPI_VW_SUS_STAT   0

Definition at line 206 of file espi.h.

◆ ESPI_VW_VALID

#define ESPI_VW_VALID (   x)    (1 << ((x) + 4))

Definition at line 226 of file espi.h.

◆ ESPI_VW_VALUE

#define ESPI_VW_VALUE (   x,
 
)    ((v) << (x))

Definition at line 227 of file espi.h.

◆ ESPI_VW_WAKE

#define ESPI_VW_WAKE   2

Definition at line 209 of file espi.h.

Function Documentation

◆ espi_show_slave_general_configuration()

static void espi_show_slave_general_configuration ( uint32_t  config)
inlinestatic

Definition at line 235 of file espi.h.

◆ espi_show_slave_peripheral_channel_configuration()

static void espi_show_slave_peripheral_channel_configuration ( uint32_t  config)
inlinestatic

Definition at line 236 of file espi.h.

◆ espi_slave_get_vw_count_supp()

static uint32_t espi_slave_get_vw_count_supp ( uint32_t  vw_caps)
inlinestatic

Definition at line 323 of file espi.h.

References ESPI_SLAVE_VW_COUNT_SUPP_MASK, and ESPI_SLAVE_VW_COUNT_SUPP_SHIFT.

◆ espi_slave_is_channel_ready()

static bool espi_slave_is_channel_ready ( uint32_t  config)
inlinestatic

Definition at line 318 of file espi.h.

References config, and ESPI_SLAVE_CHANNEL_READY.

◆ espi_slave_max_speed_mhz_supported()

static int espi_slave_max_speed_mhz_supported ( uint32_t  gen_caps)
inlinestatic

Definition at line 283 of file espi.h.

References espi_slave_supports_20_mhz(), espi_slave_supports_25_mhz(), espi_slave_supports_33_mhz(), espi_slave_supports_50_mhz(), and espi_slave_supports_66_mhz().

Referenced by espi_set_op_freq_config().

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

◆ espi_slave_supports_20_mhz()

static bool espi_slave_supports_20_mhz ( uint32_t  gen_caps)
inlinestatic

Definition at line 277 of file espi.h.

References ESPI_SLAVE_OP_FREQ_SUPP_20_MHZ, and ESPI_SLAVE_OP_FREQ_SUPP_MASK.

Referenced by espi_slave_max_speed_mhz_supported().

Here is the caller graph for this function:

◆ espi_slave_supports_25_mhz()

static bool espi_slave_supports_25_mhz ( uint32_t  gen_caps)
inlinestatic

Definition at line 271 of file espi.h.

References ESPI_SLAVE_OP_FREQ_SUPP_25_MHZ, and ESPI_SLAVE_OP_FREQ_SUPP_MASK.

Referenced by espi_slave_max_speed_mhz_supported().

Here is the caller graph for this function:

◆ espi_slave_supports_33_mhz()

static bool espi_slave_supports_33_mhz ( uint32_t  gen_caps)
inlinestatic

Definition at line 265 of file espi.h.

References ESPI_SLAVE_OP_FREQ_SUPP_33_MHZ, and ESPI_SLAVE_OP_FREQ_SUPP_MASK.

Referenced by espi_slave_max_speed_mhz_supported().

Here is the caller graph for this function:

◆ espi_slave_supports_50_mhz()

static bool espi_slave_supports_50_mhz ( uint32_t  gen_caps)
inlinestatic

Definition at line 259 of file espi.h.

References ESPI_SLAVE_OP_FREQ_SUPP_50_MHZ, and ESPI_SLAVE_OP_FREQ_SUPP_MASK.

Referenced by espi_slave_max_speed_mhz_supported().

Here is the caller graph for this function:

◆ espi_slave_supports_66_mhz()

static bool espi_slave_supports_66_mhz ( uint32_t  gen_caps)
inlinestatic

Definition at line 253 of file espi.h.

References ESPI_SLAVE_OP_FREQ_SUPP_66_MHZ, and ESPI_SLAVE_OP_FREQ_SUPP_MASK.

Referenced by espi_slave_max_speed_mhz_supported().

Here is the caller graph for this function:

◆ espi_slave_supports_dual_io()

static bool espi_slave_supports_dual_io ( uint32_t  gen_caps)
inlinestatic

Definition at line 246 of file espi.h.

References ESPI_SLAVE_IO_MODE_SUPP_MASK, ESPI_SLAVE_IO_MODE_SUPP_SINGLE_DUAL, and ESPI_SLAVE_IO_MODE_SUPP_SINGLE_DUAL_QUAD.

Referenced by espi_set_io_mode_config().

Here is the caller graph for this function:

◆ espi_slave_supports_flash_channel()

static bool espi_slave_supports_flash_channel ( uint32_t  gen_caps)
inlinestatic

Definition at line 313 of file espi.h.

References ESPI_SLAVE_FLASH_CH_SUPP.

◆ espi_slave_supports_oob_channel()

static bool espi_slave_supports_oob_channel ( uint32_t  gen_caps)
inlinestatic

Definition at line 308 of file espi.h.

References ESPI_SLAVE_OOB_CH_SUPP.

◆ espi_slave_supports_periph_channel()

static bool espi_slave_supports_periph_channel ( uint32_t  gen_caps)
inlinestatic

Definition at line 303 of file espi.h.

References ESPI_SLAVE_PERIPH_CH_SUPP.

◆ espi_slave_supports_quad_io()

static bool espi_slave_supports_quad_io ( uint32_t  gen_caps)
inlinestatic

Definition at line 239 of file espi.h.

References ESPI_SLAVE_IO_MODE_SUPP_MASK, ESPI_SLAVE_IO_MODE_SUPP_SINGLE_DUAL_QUAD, and ESPI_SLAVE_IO_MODE_SUPP_SINGLE_QUAD.

Referenced by espi_set_io_mode_config().

Here is the caller graph for this function:

◆ espi_slave_supports_vw_channel()

static bool espi_slave_supports_vw_channel ( uint32_t  gen_caps)
inlinestatic

Definition at line 298 of file espi.h.

References ESPI_SLAVE_VW_CH_SUPP.