On 07/01/2016 05:37 PM, Arnd Bergmann wrote: > On Friday, July 1, 2016 5:22:32 PM CEST Hans Verkuil wrote: >>> diff --git a/drivers/media/platform/vivid/Kconfig b/drivers/media/platform/vivid/Kconfig >>> index 8e6918c5c87c..8e31146d079a 100644 >>> --- a/drivers/media/platform/vivid/Kconfig >>> +++ b/drivers/media/platform/vivid/Kconfig >>> @@ -26,6 +26,7 @@ config VIDEO_VIVID >>> config VIDEO_VIVID_CEC >>> bool "Enable CEC emulation support" >>> depends on VIDEO_VIVID && MEDIA_CEC >>> + depends on VIDEO_VIVID=m || MEDIA_CEC=y >>> ---help--- >>> When selected the vivid module will emulate the optional >>> HDMI CEC feature. >>> >>> which is still not overly nice, but it manages to avoid the >>> IS_REACHABLE() check and it lets MEDIA_CEC be a module. >> >> The only IS_REACHABLE is for the RC_CORE check, and that should remain. > > I believe that is already taken care of by my earlier "[media] cec: add > RC_CORE dependency" patch, https://patchwork.linuxtv.org/patch/34892/ > which seems to handle the dependency more gracefully (preventing nonsense > configurations rather than just not using RC_CORE). > >> With my patch MEDIA_CEC can remain a module provided MEDIA_SUPPORT is also >> a module. All drivers depending on MEDIA_CEC also depend on MEDIA_SUPPORT, >> so that works. > > To clarify, the problem with the option above is that VIDEO_VIVID_CEC > is a 'bool' option, and Kconfig lets that be turned on if both > VIDEO_VIVID and MEDIA_CEC are enabled, including the case where MEDIA_CEC > is a module and VIDEO_VIVID is not. > > Your patch avoids that problem by making MEDIA_CEC a 'bool', my patch > above is an alternative by ensuring that VIDEO_VIVID_CEC cannot be > enabled if MEDIA_CEC is a module and VIDEO_VIVID is not. The problem I have with both your suggestions is that options disappear just because one dependency is a module. Very unexpected and hard to figure out. I am not enthusiastic about the IS_REACHABLE(RC_CORE) solution either, but it will do for now while it is in staging. I still think it is better then making MEDIA_CEC depend on whether RC_CORE is a module or not. The RC support is an optional extension and CEC still works fine without it. Regards, Hans -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html