zephyr/drivers/espi/Kconfig.espi_emul
Aaron Massey 3cc74f1140 emul: Make ESPI/I2C_EMUL depend on EMUL
The emulated espi and i2c bus controllers do not depend on CONFIG_EMUL
being enabled. When these fake bus controllers are enabled by their
assoicated compatible in the devicetree without CONFIG_EMUL it results in
linker failures for underlying peripheral emulators which may be difficult
to understand. The SPI config already depends on EMUL.

Make the ESPI and I2C emulated controllers depend on CONFIG_EMUL. Note:
This still allows linker failures if CONFIG_EMUL=n, but the linker failures
will be consistently at device driver instantiation due to a missing bus
controller. Regardless, this will be easier to debug when someone forgets
to enable CONFIG_EMUL.

Signed-off-by: Aaron Massey <aaronmassey@google.com>
2023-05-08 16:20:52 +02:00

20 lines
871 B
Plaintext

# Copyright 2020 Google LLC
# SPDX-License-Identifier: Apache-2.0
config ESPI_EMUL
bool "eSPI emulator"
default y
depends on DT_HAS_ZEPHYR_ESPI_EMUL_CONTROLLER_ENABLED
depends on EMUL
help
Enable the eSPI emulator driver. This is a fake driver,
it does not talk to real hardware. Instead it talks to emulation
drivers that pretend to be devices on the emulated eSPI bus. It is
used for testing drivers for eSPI devices.
eSPI is an interface using SPI wires, whose main goal is to reduce the
number of required pins. It includes the functionality of LPC, SMB, SPI
itself (flash access) and GPIO (virtual wires). Please refer to the
specification for more details (it is good for the introduction as well)
https://www.intel.com/content/dam/support/us/en/documents/software/chipset-software/327432-004_espi_base_specification_rev1.0_cb.pdf