diff --git a/drivers/CMakeLists.txt b/drivers/CMakeLists.txt index 57acca6826c..663d312901b 100644 --- a/drivers/CMakeLists.txt +++ b/drivers/CMakeLists.txt @@ -33,6 +33,7 @@ add_subdirectory_if_kconfig(wifi) add_subdirectory_if_kconfig(can) add_subdirectory_if_kconfig(audio) add_subdirectory_if_kconfig(hwinfo) +add_subdirectory_if_kconfig(espi) add_subdirectory_ifdef(CONFIG_FLASH_HAS_DRIVER_ENABLED flash) add_subdirectory_ifdef(CONFIG_SERIAL_HAS_DRIVER serial) diff --git a/drivers/Kconfig b/drivers/Kconfig index 662c02f7baa..7ead7b53218 100644 --- a/drivers/Kconfig +++ b/drivers/Kconfig @@ -89,4 +89,6 @@ source "drivers/neural_net/Kconfig" source "drivers/hwinfo/Kconfig" +source "drivers/espi/Kconfig" + endmenu diff --git a/drivers/espi/CMakeLists.txt b/drivers/espi/CMakeLists.txt new file mode 100644 index 00000000000..225813008e2 --- /dev/null +++ b/drivers/espi/CMakeLists.txt @@ -0,0 +1,4 @@ +# SPDX-License-Identifier: Apache-2.0 + +zephyr_library() + diff --git a/drivers/espi/Kconfig b/drivers/espi/Kconfig new file mode 100644 index 00000000000..f722c7a845d --- /dev/null +++ b/drivers/espi/Kconfig @@ -0,0 +1,96 @@ +# Kconfig - eSPI configuration options +# +# Copyright (c) 2019 Intel Corporation +# +# SPDX-License-Identifier: Apache-2.0 +# + +menuconfig ESPI + bool "ESPI Driver" + help + Enable ESPI Driver + +if ESPI + +source "drivers/espi/Kconfig.xec" + +module = ESPI +module-str = espi +source "subsys/logging/Kconfig.template.log_config" + +config ESPI_SLAVE + bool "ESPI slave driver" + default y + help + Enables eSPI driver in slave mode + +config ESPI_INIT_PRIORITY + int "IRQ Priority for ESPI Controller" + default 3 + help + IRQ Priority for ESPI Controller + +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_OOB_CHANNEL + bool "eSPI Out-of-band channel" + default n + help + eSPI Controller supports OOB channel + +config ESPI_FLASH_CHANNEL + bool "ESPI flash channel" + default n + help + eSPI Controller supports flash channel + +if ESPI_PERIPHERAL_CHANNEL + +config ESPI_PERIPHERAL_UART + bool "UART peripheral" + depends on ESPI_PERIPHERAL_CHANNEL + default n + help + Enables UART over eSPI peripheral channel + +config ESPI_PERIPHERAL_8042_KEYBOARD + bool "8042 keyboard peripheral" + depends on ESPI_PERIPHERAL_CHANNEL + default n + help + Enables 8042 keyboard over eSPI peripheral channel + +config ESPI_PERIPHERAL_HOST_IO + bool "Host I/O peripheral" + depends on ESPI_PERIPHERAL_CHANNEL + default n + help + Enables ACPI Host I/O over eSPI peripheral channel + +config ESPI_PERIPHERAL_PORT_92 + bool "Legacy Port 92 peripheral" + depends on ESPI_PERIPHERAL_CHANNEL + default n + help + Enables legacy Port 92 over eSPI peripheral channel + +config ESPI_PERIPHERAL_DEBUG_PORT_80 + bool "Debug Port 80 peripheral" + depends on ESPI_PERIPHERAL_CHANNEL + default n + help + Enables debug Port 80 over eSPI peripheral channel + +endif # ESPI_PERIPHERAL_CHANNEL + +endif # ESPI