If WATCHDOG_CORE is not set, build fails:
drivers/rtc/rtc-pcf2127.o: In function `pcf2127_probe.isra.6':
drivers/rtc/rtc-pcf2127.c:478: undefined reference to `devm_watchdog_register_device'
Add WATCHDOG_CORE Kconfig dependency to fix this.
Reported-by: Hulk Robot <[email protected]>
Fixes: bbc597561ce1 ("rtc: pcf2127: add watchdog feature support")
Signed-off-by: YueHaibing <[email protected]>
---
drivers/rtc/Kconfig | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
index 25af63d..9dce7dc 100644
--- a/drivers/rtc/Kconfig
+++ b/drivers/rtc/Kconfig
@@ -886,6 +886,8 @@ config RTC_DRV_DS3232_HWMON
config RTC_DRV_PCF2127
tristate "NXP PCF2127"
depends on RTC_I2C_AND_SPI
+ depends on WATCHDOG
+ select WATCHDOG_CORE
help
If you say yes here you get support for the NXP PCF2127/29 RTC
chips with integrated quartz crystal for industrial applications.
--
2.7.4
On 8/23/19 5:45 AM, YueHaibing wrote:
> If WATCHDOG_CORE is not set, build fails:
>
> drivers/rtc/rtc-pcf2127.o: In function `pcf2127_probe.isra.6':
> drivers/rtc/rtc-pcf2127.c:478: undefined reference to `devm_watchdog_register_device'
>
> Add WATCHDOG_CORE Kconfig dependency to fix this.
>
> Reported-by: Hulk Robot <[email protected]>
> Fixes: bbc597561ce1 ("rtc: pcf2127: add watchdog feature support")
> Signed-off-by: YueHaibing <[email protected]>
Reviewed-by: Guenter Roeck <[email protected]>
> ---
> drivers/rtc/Kconfig | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
> index 25af63d..9dce7dc 100644
> --- a/drivers/rtc/Kconfig
> +++ b/drivers/rtc/Kconfig
> @@ -886,6 +886,8 @@ config RTC_DRV_DS3232_HWMON
> config RTC_DRV_PCF2127
> tristate "NXP PCF2127"
> depends on RTC_I2C_AND_SPI
> + depends on WATCHDOG
> + select WATCHDOG_CORE
> help
> If you say yes here you get support for the NXP PCF2127/29 RTC
> chips with integrated quartz crystal for industrial applications.
>
On 23/08/2019 20:45:53+0800, YueHaibing wrote:
> If WATCHDOG_CORE is not set, build fails:
>
> drivers/rtc/rtc-pcf2127.o: In function `pcf2127_probe.isra.6':
> drivers/rtc/rtc-pcf2127.c:478: undefined reference to `devm_watchdog_register_device'
>
> Add WATCHDOG_CORE Kconfig dependency to fix this.
>
> Reported-by: Hulk Robot <[email protected]>
> Fixes: bbc597561ce1 ("rtc: pcf2127: add watchdog feature support")
> Signed-off-by: YueHaibing <[email protected]>
> ---
> drivers/rtc/Kconfig | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
> index 25af63d..9dce7dc 100644
> --- a/drivers/rtc/Kconfig
> +++ b/drivers/rtc/Kconfig
> @@ -886,6 +886,8 @@ config RTC_DRV_DS3232_HWMON
> config RTC_DRV_PCF2127
> tristate "NXP PCF2127"
> depends on RTC_I2C_AND_SPI
> + depends on WATCHDOG
Definitively not, I fixed it that way:
+ select WATCHDOG_CORE if WATCHDOG
--
Alexandre Belloni, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
On 2019/8/23 22:05, Alexandre Belloni wrote:
> On 23/08/2019 20:45:53+0800, YueHaibing wrote:
>> If WATCHDOG_CORE is not set, build fails:
>>
>> drivers/rtc/rtc-pcf2127.o: In function `pcf2127_probe.isra.6':
>> drivers/rtc/rtc-pcf2127.c:478: undefined reference to `devm_watchdog_register_device'
>>
>> Add WATCHDOG_CORE Kconfig dependency to fix this.
>>
>> Reported-by: Hulk Robot <[email protected]>
>> Fixes: bbc597561ce1 ("rtc: pcf2127: add watchdog feature support")
>> Signed-off-by: YueHaibing <[email protected]>
>> ---
>> drivers/rtc/Kconfig | 2 ++
>> 1 file changed, 2 insertions(+)
>>
>> diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
>> index 25af63d..9dce7dc 100644
>> --- a/drivers/rtc/Kconfig
>> +++ b/drivers/rtc/Kconfig
>> @@ -886,6 +886,8 @@ config RTC_DRV_DS3232_HWMON
>> config RTC_DRV_PCF2127
>> tristate "NXP PCF2127"
>> depends on RTC_I2C_AND_SPI
>> + depends on WATCHDOG
>
> Definitively not, I fixed it that way:
> + select WATCHDOG_CORE if WATCHDOG
No, this still fails while WATCHDOG is not set
>
>
On 8/26/19 1:12 AM, Yuehaibing wrote:
>
>
> On 2019/8/23 22:05, Alexandre Belloni wrote:
>> On 23/08/2019 20:45:53+0800, YueHaibing wrote:
>>> If WATCHDOG_CORE is not set, build fails:
>>>
>>> drivers/rtc/rtc-pcf2127.o: In function `pcf2127_probe.isra.6':
>>> drivers/rtc/rtc-pcf2127.c:478: undefined reference to `devm_watchdog_register_device'
>>>
>>> Add WATCHDOG_CORE Kconfig dependency to fix this.
>>>
>>> Reported-by: Hulk Robot <[email protected]>
>>> Fixes: bbc597561ce1 ("rtc: pcf2127: add watchdog feature support")
>>> Signed-off-by: YueHaibing <[email protected]>
>>> ---
>>> drivers/rtc/Kconfig | 2 ++
>>> 1 file changed, 2 insertions(+)
>>>
>>> diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
>>> index 25af63d..9dce7dc 100644
>>> --- a/drivers/rtc/Kconfig
>>> +++ b/drivers/rtc/Kconfig
>>> @@ -886,6 +886,8 @@ config RTC_DRV_DS3232_HWMON
>>> config RTC_DRV_PCF2127
>>> tristate "NXP PCF2127"
>>> depends on RTC_I2C_AND_SPI
>>> + depends on WATCHDOG
>>
>> Definitively not, I fixed it that way:
>> + select WATCHDOG_CORE if WATCHDOG
>
>
> No, this still fails while WATCHDOG is not set
>
Correct, there are no dummy functions for watchdog device registration.
There would have to be conditional code in the driver if the watchdog
is supposed to be optional.
Guenter
Den man. 26. aug. 2019 kl. 15.20 skrev Guenter Roeck <[email protected]>:
>
> On 8/26/19 1:12 AM, Yuehaibing wrote:
> >
> >
> > On 2019/8/23 22:05, Alexandre Belloni wrote:
> >> On 23/08/2019 20:45:53+0800, YueHaibing wrote:
> >>> If WATCHDOG_CORE is not set, build fails:
> >>>
> >>> drivers/rtc/rtc-pcf2127.o: In function `pcf2127_probe.isra.6':
> >>> drivers/rtc/rtc-pcf2127.c:478: undefined reference to `devm_watchdog_register_device'
> >>>
> >>> Add WATCHDOG_CORE Kconfig dependency to fix this.
> >>>
> >>> Reported-by: Hulk Robot <[email protected]>
> >>> Fixes: bbc597561ce1 ("rtc: pcf2127: add watchdog feature support")
> >>> Signed-off-by: YueHaibing <[email protected]>
> >>> ---
> >>> drivers/rtc/Kconfig | 2 ++
> >>> 1 file changed, 2 insertions(+)
> >>>
> >>> diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
> >>> index 25af63d..9dce7dc 100644
> >>> --- a/drivers/rtc/Kconfig
> >>> +++ b/drivers/rtc/Kconfig
> >>> @@ -886,6 +886,8 @@ config RTC_DRV_DS3232_HWMON
> >>> config RTC_DRV_PCF2127
> >>> tristate "NXP PCF2127"
> >>> depends on RTC_I2C_AND_SPI
> >>> + depends on WATCHDOG
> >>
> >> Definitively not, I fixed it that way:
> >> + select WATCHDOG_CORE if WATCHDOG
> >
> >
> > No, this still fails while WATCHDOG is not set
> >
>
> Correct, there are no dummy functions for watchdog device registration.
> There would have to be conditional code in the driver if the watchdog
> is supposed to be optional.
Hi
During review of version 1, there was a wish for the watchdog feature not
to be hidden behind Kconfig option, e.g. RTC_DRV_PCF2127_WDT, as
it would not result in a much bigger driver.
I did not add any other selects/depends on in Kconfig as
RTC_DRV_DS1374_WDT and RTC_DRV_M41T80_WDT options
does not select WATCHDOG_CORE and/or WATCHDOG either.
DS1374 and M41T80 does not seem to check on any other
WATCHDOG defines other then their _WDT Kconfig.
I can create a patch that hides the watchdog code if WATCHDOG
define is not set, if that's the right way?
Bruno
On Mon, Aug 26, 2019 at 08:13:35PM +0200, Bruno Thomsen wrote:
> Den man. 26. aug. 2019 kl. 15.20 skrev Guenter Roeck <[email protected]>:
> >
> > On 8/26/19 1:12 AM, Yuehaibing wrote:
> > >
> > >
> > > On 2019/8/23 22:05, Alexandre Belloni wrote:
> > >> On 23/08/2019 20:45:53+0800, YueHaibing wrote:
> > >>> If WATCHDOG_CORE is not set, build fails:
> > >>>
> > >>> drivers/rtc/rtc-pcf2127.o: In function `pcf2127_probe.isra.6':
> > >>> drivers/rtc/rtc-pcf2127.c:478: undefined reference to `devm_watchdog_register_device'
> > >>>
> > >>> Add WATCHDOG_CORE Kconfig dependency to fix this.
> > >>>
> > >>> Reported-by: Hulk Robot <[email protected]>
> > >>> Fixes: bbc597561ce1 ("rtc: pcf2127: add watchdog feature support")
> > >>> Signed-off-by: YueHaibing <[email protected]>
> > >>> ---
> > >>> drivers/rtc/Kconfig | 2 ++
> > >>> 1 file changed, 2 insertions(+)
> > >>>
> > >>> diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
> > >>> index 25af63d..9dce7dc 100644
> > >>> --- a/drivers/rtc/Kconfig
> > >>> +++ b/drivers/rtc/Kconfig
> > >>> @@ -886,6 +886,8 @@ config RTC_DRV_DS3232_HWMON
> > >>> config RTC_DRV_PCF2127
> > >>> tristate "NXP PCF2127"
> > >>> depends on RTC_I2C_AND_SPI
> > >>> + depends on WATCHDOG
> > >>
> > >> Definitively not, I fixed it that way:
> > >> + select WATCHDOG_CORE if WATCHDOG
> > >
> > >
> > > No, this still fails while WATCHDOG is not set
> > >
> >
> > Correct, there are no dummy functions for watchdog device registration.
> > There would have to be conditional code in the driver if the watchdog
> > is supposed to be optional.
>
> Hi
>
> During review of version 1, there was a wish for the watchdog feature not
> to be hidden behind Kconfig option, e.g. RTC_DRV_PCF2127_WDT, as
> it would not result in a much bigger driver.
>
> I did not add any other selects/depends on in Kconfig as
> RTC_DRV_DS1374_WDT and RTC_DRV_M41T80_WDT options
> does not select WATCHDOG_CORE and/or WATCHDOG either.
Those drivers do not use the watchdog core but re-implement its
functionality. RTC_DRV_M41T80_WDT was written before the watchdog
core existed, so this is understandable. You would have to ask the
author of RTC_DRV_DS1374_WDT support why it doesn't use the
watchdog core but re-implements it.
> DS1374 and M41T80 does not seem to check on any other
> WATCHDOG defines other then their _WDT Kconfig.
>
> I can create a patch that hides the watchdog code if WATCHDOG
> define is not set, if that's the right way?
>
That is for you and the rtc maintainer to decide.
Guenter
On 8/23/19 7:05 AM, Alexandre Belloni wrote:
> On 23/08/2019 20:45:53+0800, YueHaibing wrote:
>> If WATCHDOG_CORE is not set, build fails:
>>
>> drivers/rtc/rtc-pcf2127.o: In function `pcf2127_probe.isra.6':
>> drivers/rtc/rtc-pcf2127.c:478: undefined reference to `devm_watchdog_register_device'
>>
>> Add WATCHDOG_CORE Kconfig dependency to fix this.
>>
>> Reported-by: Hulk Robot <[email protected]>
>> Fixes: bbc597561ce1 ("rtc: pcf2127: add watchdog feature support")
>> Signed-off-by: YueHaibing <[email protected]>
>> ---
>> drivers/rtc/Kconfig | 2 ++
>> 1 file changed, 2 insertions(+)
>>
>> diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
>> index 25af63d..9dce7dc 100644
>> --- a/drivers/rtc/Kconfig
>> +++ b/drivers/rtc/Kconfig
>> @@ -886,6 +886,8 @@ config RTC_DRV_DS3232_HWMON
>> config RTC_DRV_PCF2127
>> tristate "NXP PCF2127"
>> depends on RTC_I2C_AND_SPI
>> + depends on WATCHDOG
>
> Definitively not, I fixed it that way:
> + select WATCHDOG_CORE if WATCHDOG
>
>
No, that's not a fix. The build error still happens with that patch applied.
--
~Randy
Den ons. 28. aug. 2019 kl. 19.19 skrev Randy Dunlap <[email protected]>:
> > Definitively not, I fixed it that way:
> > + select WATCHDOG_CORE if WATCHDOG
> >
>
> No, that's not a fix. The build error still happens with that patch applied.
Hi Randy,
A bugfix has been created[1] and applied to the rtc tree.
Bruno
[1] https://lkml.org/lkml/2019/8/27/1018