[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20211012230938.GE66936@minyard.net>
Date: Tue, 12 Oct 2021 18:09:38 -0500
From: Corey Minyard <minyard@....org>
To: Randy Dunlap <rdunlap@...radead.org>
Cc: linux-kernel@...r.kernel.org,
openipmi-developer@...ts.sourceforge.net,
Arnd Bergmann <arnd@...db.de>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Subject: Re: [PATCH -next] ipmi: ipmb: fix dependencies to eliminate build
error
On Tue, Oct 12, 2021 at 01:44:16PM -0700, Randy Dunlap wrote:
> When CONFIG_I2C=m, CONFIG_I2C_SLAVE=y (bool), and CONFIG_IPMI_IPMB=y,
> the build fails with:
Got it, thanks.
-corey
>
> ld: drivers/char/ipmi/ipmi_ipmb.o: in function `ipmi_ipmb_remove':
> ipmi_ipmb.c:(.text+0x6b): undefined reference to `i2c_slave_unregister'
> ld: drivers/char/ipmi/ipmi_ipmb.o: in function `ipmi_ipmb_thread':
> ipmi_ipmb.c:(.text+0x2a4): undefined reference to `i2c_transfer'
> ld: drivers/char/ipmi/ipmi_ipmb.o: in function `ipmi_ipmb_probe':
> ipmi_ipmb.c:(.text+0x646): undefined reference to `i2c_slave_register'
> ld: drivers/char/ipmi/ipmi_ipmb.o: in function `ipmi_ipmb_driver_init':
> ipmi_ipmb.c:(.init.text+0xa): undefined reference to `i2c_register_driver'
> ld: drivers/char/ipmi/ipmi_ipmb.o: in function `ipmi_ipmb_driver_exit':
> ipmi_ipmb.c:(.exit.text+0x8): undefined reference to `i2c_del_driver'
>
> This is due to having a tristate depending on a bool symbol.
> By adding I2C (tristate) as a dependency, the desired dependencies
> are met, causing IPMI_IPMB to be changed from =y to =m:
>
> -CONFIG_IPMI_IPMB=y
> +CONFIG_IPMI_IPMB=m
>
> Fixes: 63c4eb347164 ("ipmi:ipmb: Add initial support for IPMI over IPMB")
> Signed-off-by: Randy Dunlap <rdunlap@...radead.org>
> Cc: Corey Minyard <minyard@....org>
> Cc: openipmi-developer@...ts.sourceforge.net
> Cc: Arnd Bergmann <arnd@...db.de>
> Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
> ---
> drivers/char/ipmi/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> --- linux-next-20211012.orig/drivers/char/ipmi/Kconfig
> +++ linux-next-20211012/drivers/char/ipmi/Kconfig
> @@ -77,7 +77,7 @@ config IPMI_SSIF
>
> config IPMI_IPMB
> tristate 'IPMI IPMB interface'
> - depends on I2C_SLAVE
> + depends on I2C && I2C_SLAVE
> help
> Provides a driver for a system running right on the IPMB bus.
> It supports normal system interface messages to a BMC on the IPMB
Powered by blists - more mailing lists