CONFIG_CLFLUSH_DETECT

Detect support of CLFLUSH instruction at runtime

Type: bool

Help

This option should be enabled if it is not known in advance whether the CPU supports the CLFLUSH instruction or not.

The CPU is queried at boot time to determine which of the multiple implementations of sys_cache_flush() linked into the image is the correct one to use.

If the CPU’s support (or lack thereof) of CLFLUSH is known in advance, then disable this option and set CLFLUSH_INSTRUCTION_SUPPORTED as appropriate.

Direct dependencies

SOC_APOLLO_LAKE || SOC_ATOM || SOC_IA32 || (CACHE_FLUSHING && !X86_64 && X86)

(Includes any dependencies from ifs and menus.)

Kconfig definitions

At <Zephyr>/soc/x86/apollo_lake/Kconfig.defconfig:44

Included via <Zephyr>/Kconfig:8<Zephyr>/Kconfig.zephyr:25<BuildDir>/Kconfig/Kconfig.soc.defconfig:1

Menu path: (Top)

config CLFLUSH_DETECT
    bool
    default y if CACHE_FLUSHING
    depends on SOC_APOLLO_LAKE

At <Zephyr>/soc/x86/atom/Kconfig.defconfig:15

Included via <Zephyr>/Kconfig:8<Zephyr>/Kconfig.zephyr:25<BuildDir>/Kconfig/Kconfig.soc.defconfig:1

Menu path: (Top)

config CLFLUSH_DETECT
    bool
    default y if CACHE_FLUSHING
    depends on SOC_ATOM

At <Zephyr>/soc/x86/ia32/Kconfig.defconfig:15

Included via <Zephyr>/Kconfig:8<Zephyr>/Kconfig.zephyr:25<BuildDir>/Kconfig/Kconfig.soc.defconfig:1

Menu path: (Top)

config CLFLUSH_DETECT
    bool
    default y if CACHE_FLUSHING
    depends on SOC_IA32

At <Zephyr>/arch/x86/core/Kconfig.ia32:174

Included via <Zephyr>/Kconfig:8<Zephyr>/Kconfig.zephyr:29<Zephyr>/arch/Kconfig:12<Zephyr>/arch/x86/Kconfig:327

Menu path: (Top) → X86 Architecture Options → Processor Capabilities

config CLFLUSH_DETECT
    bool "Detect support of CLFLUSH instruction at runtime"
    depends on CACHE_FLUSHING && !X86_64 && X86
    help
      This option should be enabled if it is not known in advance whether the
      CPU supports the CLFLUSH instruction or not.

      The CPU is queried at boot time to determine which of the multiple
      implementations of sys_cache_flush() linked into the image is the
      correct one to use.

      If the CPU's support (or lack thereof) of CLFLUSH is known in advance, then
      disable this option and set CLFLUSH_INSTRUCTION_SUPPORTED as appropriate.

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