Neil
Neil

Reputation: 2147

Why isn't my Kconfig entry appearing in menuconfig?

I have the following entry in drivers/media/video/Kconfig:

config VIDEO_OMAP3
 tristate "OMAP 3 Camera support"
 select VIDEOBUF_GEN
 select VIDEOBUF_DMA_SG
 select OMAP_IOMMU
 depends on VIDEO_V4L2 && ARCH_OMAP34XX
 ---help---
   Driver for an OMAP 3 camera controller.

When I search for VIDEO_OMAP3 in menuconfig I get:

Symbol: VIDEO_OMAP3 [=n]
Prompt: OMAP 3 Camera support
   Defined at drivers/media/video/Kconfig:836
   Depends on: MEDIA_SUPPORT [=y] && VIDEO_CAPTURE_DRIVERS [=y] && VIDEO_V4L2 [=y] && ARCH_OMAP34XX [=ARCH_OMAP34XX]
   Location:
      -> Device Drivers
         -> Multimedia support (MEDIA_SUPPORT [=y])
            -> Video capture adapters (VIDEO_CAPTURE_DRIVERS [=y])

But there is no menuconfig option. I can manually force the object to build by modifying the makefile but I want to ensure that this isn't part of a larger problem.

Upvotes: 2

Views: 5450

Answers (2)

Ulf Magnusson
Ulf Magnusson

Reputation: 166

More specifically, symbols that aren't defined are always "n" in a tristate sense. The reason you get the "[=ARCH_OMAP34XX]" is that they also happen to get their name as their value.

As a side note, this quirk is the reason why

if FOO = BAR
...
endif

works the same as

if FOO = "BAR"
...
endif

provided BAR is undefined. In the former case, BAR gets the value "BAR".

(I'm the author of Kconfiglib, a Python library for working with Kconfig-based configuration systems.)

Upvotes: 3

user502515
user502515

Reputation: 4464

ARCH_OMAP34XX is not defined it seems. If it were, you would see ARCH_OMAP34XX [=y] or [=n]. But not [=ARCH_OMAP34XX].

Upvotes: 1

Related Questions