CONFIG_EMUL

Emulation drivers

Type: bool

Help

Enable Emulation Driver Configuration These drivers are used to emulate hardware devices, to support testing of various subsystems. For example, it is possible to write an emulator for an I2C compass such that it appears on the I2C bus and can be used just like a real hardware device.

Emulators often implement special features for testing. For example a compass may support returning bogus data if the I2C bus speed is too high, or may return invalid measurements if calibration has not yet been completed. This allows for testing that high-level code can handle these situations correctly. Test coverage can therefore approach 100% if all failure conditions are emulated.

Defaults

No defaults. Implicitly defaults to n.

Kconfig definition

At <Zephyr>/subsys/emul/Kconfig:9

Included via <Zephyr>/Kconfig:8<Zephyr>/Kconfig.zephyr:34<Zephyr>/subsys/Kconfig:21

Menu path: (Top) → Sub Systems and OS Services

menuconfig EMUL
    bool "Emulation drivers"
    help
      Enable Emulation Driver Configuration
      These drivers are used to emulate hardware devices, to support testing
      of various subsystems. For example, it is possible to write an
      emulator for an I2C compass such that it appears on the I2C bus and
      can be used just like a real hardware device.

      Emulators often implement special features for testing. For example
      a compass may support returning bogus data if the I2C bus speed is
      too high, or may return invalid measurements if calibration has not
      yet been completed. This allows for testing that high-level code can
      handle these situations correctly. Test coverage can therefore
      approach 100% if all failure conditions are emulated.

(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)