Web lists-archives.com

Re: drivers/watchdog/rave-sp-wdt.c:278: undefined reference to `nvmem_cell_get'

On Tue, Feb 13, 2018 at 1:30 AM, Lee Jones <lee.jones@xxxxxxxxxx> wrote:
> On Tue, 13 Feb 2018, kbuild test robot wrote:
>> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
>> head:   178e834c47b0d01352c48730235aae69898fbc02
>> commit: c3bb333457218ca4ed9553be47c0f567b4ef8a38 watchdog: Add RAVE SP watchdog driver
>> date:   5 weeks ago
>> config: x86_64-randconfig-u0-02131401 (attached as .config)
>> compiler: gcc-5 (Debian 5.5.0-3) 5.4.1 20171010
>> reproduce:
>>         git checkout c3bb333457218ca4ed9553be47c0f567b4ef8a38
>>         # save the attached .config to linux build tree
>>         make ARCH=x86_64
>> All errors (new ones prefixed by >>):
>>    drivers/watchdog/rave-sp-wdt.o: In function `rave_sp_wdt_probe':
>> >> drivers/watchdog/rave-sp-wdt.c:278: undefined reference to `nvmem_cell_get'
>> >> drivers/watchdog/rave-sp-wdt.c:281: undefined reference to `nvmem_cell_read'
>> >> drivers/watchdog/rave-sp-wdt.c:287: undefined reference to `nvmem_cell_put'
>>    make[2]: *** [vmlinux] Error 1
> Looks like the RAVE Watchdog driver should select NVMEM?

AFAICT, this is happening when RAVE SP core and watchdog drivers are
built as built-in and NVMEM is selected as module. Looking at other
users on NVMEM in the kernel is seems that the pattern to prevent this
problem is to add "depends on NVMEM || !NVMEM" line to consumer's
Kconfig entry.

I'll submit a patch to that effect shortly.

Andrey Smirnov