# eSPI configuration options # Copyright (c) 2019 Intel Corporation # SPDX-License-Identifier: Apache-2.0 menuconfig ESPI bool "Enhanced Serial Peripheral Interface (eSPI) bus drivers" help Enable ESPI Driver. if ESPI source "drivers/espi/Kconfig.xec" source "drivers/espi/Kconfig.npcx" source "drivers/espi/Kconfig.espi_emul" source "drivers/espi/Kconfig.it8xxx2" module = ESPI module-str = espi source "subsys/logging/Kconfig.template.log_config" config ESPI_TARGET bool "ESPI target driver" default y help Enables eSPI driver in target mode. config ESPI_INIT_PRIORITY int "ESPI Controller driver initialization priority" default 3 help Driver initialization priority for eSPI driver. config ESPI_PERIPHERAL_CHANNEL bool "eSPI peripheral channel" default y help eSPI Controller supports peripheral channel. config ESPI_VWIRE_CHANNEL bool "eSPI virtual wire channel" default y help eSPI Controller supports virtual wires channel. config ESPI_AUTOMATIC_WARNING_ACKNOWLEDGE bool "Automatic acknowledge for eSPI HOST warnings" default y depends on ESPI_VWIRE_CHANNEL depends on ESPI_TARGET help Enable automatic acknowledgment from eSPI target towards eSPI controller whenever it receives suspend or reset warning. If this is disabled, it means the app wants to be give the opportunity to prepare for either HOST suspend or reset. config ESPI_AUTOMATIC_BOOT_DONE_ACKNOWLEDGE bool "Automatic acknowledge target boot status" default y depends on ESPI_VWIRE_CHANNEL depends on ESPI_TARGET help Enable automatic acknowledgment from target basic configuration been completed by sending a virtual wire message to the eSPI master. This depends on SPI boot configuration. It could be either very early in the flow after the VW channel is configured. Or it could be until flash channel is configured. config ESPI_OOB_CHANNEL bool "eSPI Out-of-band channel" help eSPI Controller supports OOB channel. config ESPI_FLASH_CHANNEL bool "ESPI flash channel" help eSPI Controller supports flash channel. if ESPI_PERIPHERAL_CHANNEL config ESPI_PERIPHERAL_UART bool "UART peripheral" help Enables UART over eSPI peripheral channel. config ESPI_PERIPHERAL_8042_KBC bool "8042 kbc peripheral" help Enables 8042 keyboard controller over eSPI peripheral channel. config ESPI_PERIPHERAL_HOST_IO bool "Host I/O peripheral" help Enables ACPI Host I/O over eSPI peripheral channel. config ESPI_PERIPHERAL_HOST_IO_PVT bool "Host I/O peripheral Private Channel" help Enables ACPI Host I/O over eSPI peripheral channel for private channel. config ESPI_PERIPHERAL_HOST_IO_PVT_PORT_NUM hex "Host I/O peripheral Private Channel" depends on ESPI_PERIPHERAL_HOST_IO_PVT default 0x06A00000 help This is the port number used by the Host and EC to communicate over the private channel. Please ensure the Host code is configured to use the same port. Also, ensure the port number selected doesn't clash with the existing ports (like 80, 92, 62 etc). config ESPI_PERIPHERAL_DEBUG_PORT_80 bool "Debug Port 80 peripheral" help Enables debug Port 80 over eSPI peripheral channel. config ESPI_PERIPHERAL_EC_HOST_CMD bool "Host peripheral device support EC host command subsystem" help Enables Embedded Controller (EC) host command subsystem via eSPI peripheral channel. config ESPI_PERIPHERAL_ACPI_SHM_REGION bool "Host peripheral device support shared memory region" help Enables shared memory region over eSPI peripheral channel to access the ACPI response data. config ESPI_PERIPHERAL_ACPI_SHM_REGION_PORT_NUM hex "Host I/O peripheral port number for shared memory region" depends on ESPI_PERIPHERAL_ACPI_SHM_REGION default 0x0900 help This is the port number used by the Host and EC to communicate over the shared memory region to access the ACPI response data. Please ensure the Host code is configured to use for accessing ACPI response data. Also, ensure the port number selected doesn't clash with the existing ports. config ESPI_PERIPHERAL_CUSTOM_OPCODE bool "Host peripheral device support customized opcode" help Enables opcode is customized for certain platforms such as Chromebook and so on over eSPI peripheral channel. config ESPI_PERIPHERAL_HOST_CMD_DATA_PORT_NUM hex "Host I/O peripheral port number for ec host command data" depends on ESPI_PERIPHERAL_EC_HOST_CMD default 0x0200 help This is the port number used by the Host and EC to communicate over the eSPI peripheral channel to send EC host command data and its result. Please ensure the Host code is configured to use for accessing host command data and result. Also, ensure the port number selected doesn't clash with the existing ports. config ESPI_PERIPHERAL_HOST_CMD_PARAM_PORT_NUM hex "Host I/O peripheral port number for ec host command parameters" depends on ESPI_PERIPHERAL_EC_HOST_CMD default 0x0800 help This is the port number used by the Host and EC to communicate over the eSPI peripheral channel to access the host command request and response data. Please ensure the Host code is configured to use for accessing these package data. Also, ensure the port number selected doesn't clash with the existing ports. endif # ESPI_PERIPHERAL_CHANNEL config ESPI_OOB_CHANNEL_RX_ASYNC bool "OOB host-initiated traffic handling" depends on ESPI_OOB_CHANNEL help Enables asynchronous handling for host-initiated OOB traffic. Otherwise OOB traffic is assumed to be always client-initiated. config ESPI_TAF bool "ESPI TAF driver" depends on ESPI_FLASH_CHANNEL help Enable Target Attached Flash eSPI driver. TAF depends upon ESPI driver and flash channel. config ESPI_TAF_INIT_PRIORITY int "ESPI TAF driver initialization priority" depends on ESPI_TAF default 4 help Driver initialization priority for eSPI TAF driver. TAF driver must initialize after the ESPI driver. endif # ESPI