2020-02-08 13:09:49

by Guenter Roeck

[permalink] [raw]
Subject: [PATCH] watchdog: da9062: Add dependency on I2C

Since commit 057b52b4b3d58 ("watchdog: da9062: make restart handler atomic
safe"), the driver calls i2c functions directly. It now therefore depends
on I2C. This is a hard dependency which overrides COMPILE_TEST.

Reported-by: kbuild test robot <[email protected]>
Fixes: 057b52b4b3d58 ("watchdog: da9062: make restart handler atomic safe")
Cc: Marco Felsch <[email protected]>
Cc: Adam Thomson <[email protected]>
Cc: Stefan Lengfeld <[email protected]>
Signed-off-by: Guenter Roeck <[email protected]>
---
drivers/watchdog/Kconfig | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
index c3c8e0786a99..9ea2b43d4b01 100644
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -207,6 +207,7 @@ config DA9063_WATCHDOG
config DA9062_WATCHDOG
tristate "Dialog DA9062/61 Watchdog"
depends on MFD_DA9062 || COMPILE_TEST
+ depends on I2C
select WATCHDOG_CORE
help
Support for the watchdog in the DA9062 and DA9061 PMICs.
--
2.17.1


2020-02-08 14:01:24

by Marco Felsch

[permalink] [raw]
Subject: Re: [PATCH] watchdog: da9062: Add dependency on I2C

Hi Guenter,

thanks for fixing that.

On 20-02-08 05:08, Guenter Roeck wrote:
> Since commit 057b52b4b3d58 ("watchdog: da9062: make restart handler atomic
> safe"), the driver calls i2c functions directly. It now therefore depends
> on I2C. This is a hard dependency which overrides COMPILE_TEST.
>
> Reported-by: kbuild test robot <[email protected]>
> Fixes: 057b52b4b3d58 ("watchdog: da9062: make restart handler atomic safe")
> Cc: Marco Felsch <[email protected]>
> Cc: Adam Thomson <[email protected]>
> Cc: Stefan Lengfeld <[email protected]>
> Signed-off-by: Guenter Roeck <[email protected]>

Reviewed-by: Marco Felsch <[email protected]>

> ---
> drivers/watchdog/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
> index c3c8e0786a99..9ea2b43d4b01 100644
> --- a/drivers/watchdog/Kconfig
> +++ b/drivers/watchdog/Kconfig
> @@ -207,6 +207,7 @@ config DA9063_WATCHDOG
> config DA9062_WATCHDOG
> tristate "Dialog DA9062/61 Watchdog"
> depends on MFD_DA9062 || COMPILE_TEST
> + depends on I2C
> select WATCHDOG_CORE
> help
> Support for the watchdog in the DA9062 and DA9061 PMICs.
> --
> 2.17.1

2020-02-08 14:03:35

by Marco Felsch

[permalink] [raw]
Subject: Re: [PATCH] watchdog: da9062: Add dependency on I2C

Hi,

On 20-02-08 05:08, Guenter Roeck wrote:
> Since commit 057b52b4b3d58 ("watchdog: da9062: make restart handler atomic
> safe"), the driver calls i2c functions directly. It now therefore depends
> on I2C. This is a hard dependency which overrides COMPILE_TEST.

I just wondered why it doesn't complain if no regmap support is on and
surprise it provides stubs ^^ Is it worth to add i2c stubs too?

Regards,
Marco

> Reported-by: kbuild test robot <[email protected]>
> Fixes: 057b52b4b3d58 ("watchdog: da9062: make restart handler atomic safe")
> Cc: Marco Felsch <[email protected]>
> Cc: Adam Thomson <[email protected]>
> Cc: Stefan Lengfeld <[email protected]>
> Signed-off-by: Guenter Roeck <[email protected]>
> ---
> drivers/watchdog/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
> index c3c8e0786a99..9ea2b43d4b01 100644
> --- a/drivers/watchdog/Kconfig
> +++ b/drivers/watchdog/Kconfig
> @@ -207,6 +207,7 @@ config DA9063_WATCHDOG
> config DA9062_WATCHDOG
> tristate "Dialog DA9062/61 Watchdog"
> depends on MFD_DA9062 || COMPILE_TEST
> + depends on I2C
> select WATCHDOG_CORE
> help
> Support for the watchdog in the DA9062 and DA9061 PMICs.
> --
> 2.17.1
>
>

--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |

2020-02-08 14:23:05

by Guenter Roeck

[permalink] [raw]
Subject: Re: [PATCH] watchdog: da9062: Add dependency on I2C

On 2/8/20 6:01 AM, Marco Felsch wrote:
> Hi,
>
> On 20-02-08 05:08, Guenter Roeck wrote:
>> Since commit 057b52b4b3d58 ("watchdog: da9062: make restart handler atomic
>> safe"), the driver calls i2c functions directly. It now therefore depends
>> on I2C. This is a hard dependency which overrides COMPILE_TEST.
>
> I just wondered why it doesn't complain if no regmap support is on and
> surprise it provides stubs ^^ Is it worth to add i2c stubs too?
>

I'd rather not go there. In practice it doesn't make much of a difference -
it just ensures that COMPILE_TEST can run on architectures which don't
support I2C. I think 0day only finds it because they select COMPILE_TEST
and then selectively disable I2C (and maybe other configuration options)
to catch problems like this.

Guenter

2020-02-10 08:54:47

by Marco Felsch

[permalink] [raw]
Subject: Re: [PATCH] watchdog: da9062: Add dependency on I2C

On 20-02-08 06:22, Guenter Roeck wrote:
> On 2/8/20 6:01 AM, Marco Felsch wrote:
> > Hi,
> >
> > On 20-02-08 05:08, Guenter Roeck wrote:
> > > Since commit 057b52b4b3d58 ("watchdog: da9062: make restart handler atomic
> > > safe"), the driver calls i2c functions directly. It now therefore depends
> > > on I2C. This is a hard dependency which overrides COMPILE_TEST.
> >
> > I just wondered why it doesn't complain if no regmap support is on and
> > surprise it provides stubs ^^ Is it worth to add i2c stubs too?
> >
>
> I'd rather not go there. In practice it doesn't make much of a difference -
> it just ensures that COMPILE_TEST can run on architectures which don't
> support I2C. I think 0day only finds it because they select COMPILE_TEST
> and then selectively disable I2C (and maybe other configuration options)
> to catch problems like this.

I know, just saying that this is a bit confusing for a reader because
the deps are handled correctly by MFD_* and REGMAP_* symbols. Anyway
thanks for fixing the bug I introduced. I was a bit to busy last week.

Regards,
Marco

> Guenter
>

--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |

2020-02-12 14:14:35

by Geert Uytterhoeven

[permalink] [raw]
Subject: Re: [PATCH] watchdog: da9062: Add dependency on I2C

On Sat, Feb 8, 2020 at 2:09 PM Guenter Roeck <[email protected]> wrote:
> Since commit 057b52b4b3d58 ("watchdog: da9062: make restart handler atomic
> safe"), the driver calls i2c functions directly. It now therefore depends
> on I2C. This is a hard dependency which overrides COMPILE_TEST.
>
> Reported-by: kbuild test robot <[email protected]>
> Fixes: 057b52b4b3d58 ("watchdog: da9062: make restart handler atomic safe")
> Cc: Marco Felsch <[email protected]>
> Cc: Adam Thomson <[email protected]>
> Cc: Stefan Lengfeld <[email protected]>
> Signed-off-by: Guenter Roeck <[email protected]>

Just ran into the same issue, so
Acked-by: Geert Uytterhoeven <[email protected]>

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds