diff mbox

watchdog: iTCO_wdt: Fix unmet dependency in select

Message ID 20150925101045.06062b59@endymion.delvare
State Not Applicable
Headers show

Commit Message

Jean Delvare Sept. 25, 2015, 8:10 a.m. UTC
ITCO_WDT selects I2C_I801 but does not select its dependencies (I2C.)
This can result in link-time failures:

drivers/built-in.o: In function `i801_remove':
i2c-i801.c:(.text+0x1a6126): undefined reference to `i2c_del_adapter'
drivers/built-in.o: In function `dmi_check_onboard_devices':
i2c-i801.c:(.text+0x1a7531): undefined reference to `i2c_new_device'
drivers/built-in.o: In function `i801_probe':
i2c-i801.c:(.text+0x1a7aa8): undefined reference to `i2c_add_adapter'
i2c-i801.c:(.text+0x1a7e14): undefined reference to `i2c_new_device'

So we must select I2C as well.

Reported-by: Jim Davis <jim.epost@gmail.com>
Signed-off-by: Jean Delvare <jdelvare@suse.de>
Fixes: 2a7a0e9bf7 ("watchdog: iTCO_wdt: Add support for TCO on Intel Sunrisepoint")
Cc: Matt Fleming <matt.fleming@intel.com>
Cc: Guenter Roeck <linux@roeck-us.net>
Cc: Lee Jones <lee.jones@linaro.org>
Cc: Wim Van Sebroeck <wim@iguana.be>
---
 drivers/watchdog/Kconfig |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Guenter Roeck Sept. 25, 2015, 1:29 p.m. UTC | #1
On 09/25/2015 01:10 AM, Jean Delvare wrote:
> ITCO_WDT selects I2C_I801 but does not select its dependencies (I2C.)
> This can result in link-time failures:
>
> drivers/built-in.o: In function `i801_remove':
> i2c-i801.c:(.text+0x1a6126): undefined reference to `i2c_del_adapter'
> drivers/built-in.o: In function `dmi_check_onboard_devices':
> i2c-i801.c:(.text+0x1a7531): undefined reference to `i2c_new_device'
> drivers/built-in.o: In function `i801_probe':
> i2c-i801.c:(.text+0x1a7aa8): undefined reference to `i2c_add_adapter'
> i2c-i801.c:(.text+0x1a7e14): undefined reference to `i2c_new_device'
>
> So we must select I2C as well.
>
> Reported-by: Jim Davis <jim.epost@gmail.com>
> Signed-off-by: Jean Delvare <jdelvare@suse.de>
> Fixes: 2a7a0e9bf7 ("watchdog: iTCO_wdt: Add support for TCO on Intel Sunrisepoint")
> Cc: Matt Fleming <matt.fleming@intel.com>
> Cc: Guenter Roeck <linux@roeck-us.net>
> Cc: Lee Jones <lee.jones@linaro.org>
> Cc: Wim Van Sebroeck <wim@iguana.be>
> ---
>   drivers/watchdog/Kconfig |    2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> --- linux-4.3-rc2.orig/drivers/watchdog/Kconfig	2015-09-24 11:43:29.959432358 +0200
> +++ linux-4.3-rc2/drivers/watchdog/Kconfig	2015-09-25 09:56:20.518840112 +0200
> @@ -818,6 +818,7 @@ config ITCO_WDT
>   	depends on (X86 || IA64) && PCI
>   	select WATCHDOG_CORE
>   	select LPC_ICH if !EXPERT
> +	select I2C if !EXPERT
>   	select I2C_I801 if !EXPERT
>   	---help---
>   	  Hardware driver for the intel TCO timer based watchdog devices.
>
>

I had fixed the problem differently, similar to other drivers.

http://patchwork.roeck-us.net/patch/239/

Waiting for Wim to apply it.

Guenter

--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Jean Delvare Sept. 25, 2015, 2:02 p.m. UTC | #2
Hi Guenter,

Le Friday 25 September 2015 à 06:29 -0700, Guenter Roeck a écrit :
> On 09/25/2015 01:10 AM, Jean Delvare wrote:
> > ITCO_WDT selects I2C_I801 but does not select its dependencies (I2C.)
> > This can result in link-time failures:
> >
> > drivers/built-in.o: In function `i801_remove':
> > i2c-i801.c:(.text+0x1a6126): undefined reference to `i2c_del_adapter'
> > drivers/built-in.o: In function `dmi_check_onboard_devices':
> > i2c-i801.c:(.text+0x1a7531): undefined reference to `i2c_new_device'
> > drivers/built-in.o: In function `i801_probe':
> > i2c-i801.c:(.text+0x1a7aa8): undefined reference to `i2c_add_adapter'
> > i2c-i801.c:(.text+0x1a7e14): undefined reference to `i2c_new_device'
> >
> > So we must select I2C as well.
> >
> > Reported-by: Jim Davis <jim.epost@gmail.com>
> > Signed-off-by: Jean Delvare <jdelvare@suse.de>
> > Fixes: 2a7a0e9bf7 ("watchdog: iTCO_wdt: Add support for TCO on Intel Sunrisepoint")
> > Cc: Matt Fleming <matt.fleming@intel.com>
> > Cc: Guenter Roeck <linux@roeck-us.net>
> > Cc: Lee Jones <lee.jones@linaro.org>
> > Cc: Wim Van Sebroeck <wim@iguana.be>
> > ---
> >   drivers/watchdog/Kconfig |    2 +-
> >   1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > --- linux-4.3-rc2.orig/drivers/watchdog/Kconfig	2015-09-24 11:43:29.959432358 +0200
> > +++ linux-4.3-rc2/drivers/watchdog/Kconfig	2015-09-25 09:56:20.518840112 +0200
> > @@ -818,6 +818,7 @@ config ITCO_WDT
> >   	depends on (X86 || IA64) && PCI
> >   	select WATCHDOG_CORE
> >   	select LPC_ICH if !EXPERT
> > +	select I2C if !EXPERT
> >   	select I2C_I801 if !EXPERT
> >   	---help---
> >   	  Hardware driver for the intel TCO timer based watchdog devices.
> >
> >
> 
> I had fixed the problem differently, similar to other drivers.
> 
> http://patchwork.roeck-us.net/patch/239/

404 Not Found?

> Waiting for Wim to apply it.
Guenter Roeck Sept. 25, 2015, 2:45 p.m. UTC | #3
On 09/25/2015 07:02 AM, Jean Delvare wrote:
> Hi Guenter,
>
> Le Friday 25 September 2015 à 06:29 -0700, Guenter Roeck a écrit :
>> On 09/25/2015 01:10 AM, Jean Delvare wrote:
>>> ITCO_WDT selects I2C_I801 but does not select its dependencies (I2C.)
>>> This can result in link-time failures:
>>>
>>> drivers/built-in.o: In function `i801_remove':
>>> i2c-i801.c:(.text+0x1a6126): undefined reference to `i2c_del_adapter'
>>> drivers/built-in.o: In function `dmi_check_onboard_devices':
>>> i2c-i801.c:(.text+0x1a7531): undefined reference to `i2c_new_device'
>>> drivers/built-in.o: In function `i801_probe':
>>> i2c-i801.c:(.text+0x1a7aa8): undefined reference to `i2c_add_adapter'
>>> i2c-i801.c:(.text+0x1a7e14): undefined reference to `i2c_new_device'
>>>
>>> So we must select I2C as well.
>>>
>>> Reported-by: Jim Davis <jim.epost@gmail.com>
>>> Signed-off-by: Jean Delvare <jdelvare@suse.de>
>>> Fixes: 2a7a0e9bf7 ("watchdog: iTCO_wdt: Add support for TCO on Intel Sunrisepoint")
>>> Cc: Matt Fleming <matt.fleming@intel.com>
>>> Cc: Guenter Roeck <linux@roeck-us.net>
>>> Cc: Lee Jones <lee.jones@linaro.org>
>>> Cc: Wim Van Sebroeck <wim@iguana.be>
>>> ---
>>>    drivers/watchdog/Kconfig |    2 +-
>>>    1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> --- linux-4.3-rc2.orig/drivers/watchdog/Kconfig	2015-09-24 11:43:29.959432358 +0200
>>> +++ linux-4.3-rc2/drivers/watchdog/Kconfig	2015-09-25 09:56:20.518840112 +0200
>>> @@ -818,6 +818,7 @@ config ITCO_WDT
>>>    	depends on (X86 || IA64) && PCI
>>>    	select WATCHDOG_CORE
>>>    	select LPC_ICH if !EXPERT
>>> +	select I2C if !EXPERT
>>>    	select I2C_I801 if !EXPERT
>>>    	---help---
>>>    	  Hardware driver for the intel TCO timer based watchdog devices.
>>>
>>>
>>
>> I had fixed the problem differently, similar to other drivers.
>>
>> http://patchwork.roeck-us.net/patch/239/
>
> 404 Not Found?
>

Interesting. WFM. Maybe I don't publish it to the outside world.
Here is a different link:

https://lkml.org/lkml/2015/9/11/343

Guenter

--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

--- linux-4.3-rc2.orig/drivers/watchdog/Kconfig	2015-09-24 11:43:29.959432358 +0200
+++ linux-4.3-rc2/drivers/watchdog/Kconfig	2015-09-25 09:56:20.518840112 +0200
@@ -818,6 +818,7 @@  config ITCO_WDT
 	depends on (X86 || IA64) && PCI
 	select WATCHDOG_CORE
 	select LPC_ICH if !EXPERT
+	select I2C if !EXPERT
 	select I2C_I801 if !EXPERT
 	---help---
 	  Hardware driver for the intel TCO timer based watchdog devices.