On Mon, 2017-04-03 at 12:44 +0300, Andy Shevchenko wrote: > On Mon, Apr 3, 2017 at 12:36 PM, Andy Shevchenko > <[email protected]> wrote: > > On Mon, Apr 3, 2017 at 12:31 PM, Arnd Bergmann <[email protected]> > > wrote: > > > On Mon, Apr 3, 2017 at 10:13 AM, Andy Shevchenko > > > <[email protected]> wrote: > > > > On Mon, Apr 3, 2017 at 2:23 AM, kbuild test robot > > > > <[email protected]> wrote: > > > > > arch/x86/built-in.o: In function `tng_bt_sfi_setup': > > > > > > > platform_bt.c:(.init.text+0x13a30): undefined reference to > > > > > > > `gpiod_add_lookup_table' > > > > > > I'd guess it's a missing dependency on GPIOLIB > >
+Cc: Linus. > > Apparently not this one. > > > > The module is purely built whenever HCIUART_BCM is defined which is > > a > > consumer of GPIO. > > And that one does not have a dependency. > > ...and they should not. So, there are two ways of fix this: > - add a stub for gpiod_add_lookup_table() for !GPIOLIB case, or > - add ifdeffery around this code here (with obvious increase of > ugliness). Linus, there is a (minor) issue with one of the user of gpiod_add_lookup_table(), i.e. we have a code which is either built-in or not compiled at all and it has some external dependency without having an explicit Kconfig option. The external dependency considers GPIOLIB as an optional, and thus some configurations might bring unresolved symbols. There are at least two solutions: - add a stub for gpiod_add_lookup_table() for !GPIOLIB case, or - add ifdeffery around this code here (with obvious increase of ugliness). What is your opinion on the case? -- Andy Shevchenko <[email protected]> Intel Finland Oy

