Kconfig rules (depends, imply)

Randy Dunlap rdunlap at infradead.org
Tue May 31 16:25:52 EDT 2022


Hi--

On 5/31/22 05:14, Muni Sekhar wrote:
> Hi all,
> 
> menuconfig SOUNDWIRE
>         tristate "SoundWire support"
>         depends on ACPI || OF
> 
> "depends on ACPI || OF" mean, SOUNDWIRE depends on both ACPI and OF modules?
> 

"||" is logical OR, so SOUNDWIRE depends on either ACPI or OF (or both
of them can be enabled).


> 
> config SOUNDWIRE_QCOM
>         tristate "Qualcomm SoundWire Master driver"
>         imply SLIMBUS
> 
> What does "imply SLIMBUS" mean?

See Documentation/kbuild/kconfig-language.rst:

- weak reverse dependencies: "imply" <symbol> ["if" <expr>]

  This is similar to "select" as it enforces a lower limit on another
  symbol except that the "implied" symbol's value may still be set to n
  from a direct dependency or with a visible prompt.

So (in your example) SLIMBUS is desired but not required.
That means that the code that is built for SOUNDWIRE_QCOM
probably needs to use IS_REACHABLE(CONFIG_SLIMBUS) to
see if that SLIMBUS code is available at build time.

HTH.
-- 
~Randy



More information about the Kernelnewbies mailing list