On Thursday, January 5, 2017 4:35:33 PM CET Andrew F. Davis wrote: > On 01/05/2017 03:42 PM, Arnd Bergmann wrote: > > On Thursday, January 5, 2017 3:01:58 PM CET Andrew F. Davis wrote: > >> @@ -109,7 +109,8 @@ obj-$(CONFIG_SERIO) += input/serio/ > >> obj-$(CONFIG_GAMEPORT) += input/gameport/ > >> obj-$(CONFIG_INPUT) += input/ > >> obj-$(CONFIG_RTC_LIB) += rtc/ > >> -obj-y += i2c/ media/ > >> +obj-y += i2c/ > >> +obj-$(CONFIG_MEDIA_SUPPORT) += media/ > >> obj-$(CONFIG_PPS) += pps/ > >> obj-y += ptp/ > >> obj-$(CONFIG_W1) += w1/ > >> > > > > This one seems wrong: if CONFIG_MEDIA_SUPPORT=m, but some I2C drivers > > inside of drivers/media/ are built-in, we will fail to enter the directory, > > see drivers/media/Makefile. > > Not sure if I see this, it looks like everything in drivers/media/ > depends on CONFIG_MEDIA_SUPPORT (directly or indirectly). If > CONFIG_MEDIA_SUPPORT is =m then all dependents should be locked out of > being built-in. > > Any bool symbol that controls compilation of source that depends on a > tristate symbol is broken and should be fixed anyway. I don't think it's this easy, we have a couple of cases where that doesn't work. I have not looked at the media example in detail, but at least it looks intentional. Note that drivers/media is rather creative with expressing dependencies. Arnd