Re: [PATCH 3/8] watchdog: wm831x watchdog really needs mfd

From: Guenter Roeck
Date: Tue Feb 28 2017 - 16:39:09 EST


On Tue, Feb 28, 2017 at 10:01:18PM +0100, Arnd Bergmann wrote:
> The wm831x watchdog driver can now be built without the wm831x mfd
> driver, which results in a link error:
>
> (.text+0x1a95c): undefined reference to `wm831x_set_bits'
> (.text+0x1a95c): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `wm831x_set_bits'
> (.text+0x1a968): undefined reference to `wm831x_reg_lock'
> (.text+0x1a968): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `wm831x_reg_lock'
> (.text+0x1a9dc): undefined reference to `wm831x_reg_unlock'
> (.text+0x1a9dc): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `wm831x_reg_unlock'
>
> This adds back the dependency that was removed. We can still build test
> this driver on all architectures by enabling the MFD driver for it first.
>
> Fixes: da2a68b3eb47 ("watchdog: Enable COMPILE_TEST where possible")
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
> ---
> drivers/watchdog/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
> index 6ca2f3ae7f1e..34a927703d64 100644
> --- a/drivers/watchdog/Kconfig
> +++ b/drivers/watchdog/Kconfig
> @@ -176,7 +176,7 @@ config WDAT_WDT
>
> config WM831X_WATCHDOG
> tristate "WM831x watchdog"
> - depends on MFD_WM831X || COMPILE_TEST
> + depends on MFD_WM831X

I prefer the fix proposed by Randy:

- depends on MFD_WM831X || COMPILE_TEST
+ depends on MFD_WM831X || (MFD_WM831X=y && COMPILE_TEST)

> select WATCHDOG_CORE
> help
> Support for the watchdog in the WM831x AudioPlus PMICs. When
> --
> 2.9.0
>