[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5432C8C6.7060506@infradead.org>
Date: Mon, 06 Oct 2014 09:52:22 -0700
From: Randy Dunlap <rdunlap@...radead.org>
To: Oliver Hartkopp <socketcan@...tkopp.net>,
Jim Davis <jim.epost@...il.com>,
Stephen Rothwell <sfr@...b.auug.org.au>
CC: linux-next <linux-next@...r.kernel.org>,
Stephane Grosjean <s.grosjean@...k-system.com>,
linux-i2c@...r.kernel.org,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
linux-can@...r.kernel.org
Subject: Re: randconfig build error with next-20141001, in drivers/i2c/algos/i2c-algo-bit.c
On 10/06/14 01:06, Oliver Hartkopp wrote:
> Hello all,
>
> just to get it right:
>
> So far it looks like this in linux/drivers/net/can/sja1000/Kconfig
>
> config CAN_PEAK_PCIEC
> bool "PEAK PCAN-ExpressCard Cards"
> depends on CAN_PEAK_PCI
> select I2C
> select I2C_ALGOBIT
>
> If one would change the
>
> select I2C
>
> into
>
> depends on I2C
>
> IMHO the CAN_PEAK_PCIEC hardware would *only* be visible and selectable when
> I2C was selected before (from anyone else?).
That is correct.
> So what it wrong on the current Kconfig entry?
> Is 'select' deprecated?
No, it's not deprecated. It's just dangerous. and driver configs should not
enable entire subsystems via 'select'.
> Or did randconfig generate a configuration that would not be possible by
> properly generating the config file with 'make menuconfig' ??
randconfig generated a config for another driver which causes a build error,
not for a CAN driver. The CAN driver does not have a build error AFAIK.
Its Kconfig is just doing something with a very big & ugly stick.
> Please explain.
>
> Thanks,
> Oliver
>
> On 10/02/2014 01:26 AM, Randy Dunlap wrote:
>> On 10/01/14 14:37, Jim Davis wrote:
>>> Building with the attached random configuration file,
>>
>> Also:
>> warning: (CAN_PEAK_PCIEC && SFC && IGB && VIDEO_TW68 && DRM && FB_DDC && FB_VIA) selects I2C_ALGOBIT which has unmet direct dependencies (I2C)
>>
>>> drivers/i2c/algos/i2c-algo-bit.c: In function ‘i2c_bit_add_bus’:
>>> drivers/i2c/algos/i2c-algo-bit.c:658:33: error: ‘i2c_add_adapter’
>>> undeclared (first use in this function)
>>> return __i2c_bit_add_bus(adap, i2c_add_adapter);
>>> ^
>>> drivers/i2c/algos/i2c-algo-bit.c:658:33: note: each undeclared
>>> identifier is reported only once for each function it appears in
>>> drivers/i2c/algos/i2c-algo-bit.c: In function ‘i2c_bit_add_numbered_bus’:
>>> drivers/i2c/algos/i2c-algo-bit.c:664:33: error:
>>> ‘i2c_add_numbered_adapter’ undeclared (first use in this function)
>>> return __i2c_bit_add_bus(adap, i2c_add_numbered_adapter);
>>> ^
>>> CC net/openvswitch/actions.o
>>> drivers/i2c/algos/i2c-algo-bit.c: In function ‘i2c_bit_add_bus’:
>>> drivers/i2c/algos/i2c-algo-bit.c:659:1: warning: control reaches end of non-void
>>> function [-Wreturn-type]
>>> }
>>> ^
>>> drivers/i2c/algos/i2c-algo-bit.c: In function ‘i2c_bit_add_numbered_bus’:
>>> drivers/i2c/algos/i2c-algo-bit.c:665:1: warning: control reaches end of non-void
>>> function [-Wreturn-type]
>>> }
>>> ^
>>> make[3]: *** [drivers/i2c/algos/i2c-algo-bit.o] Error 1
>>
>> In drivers/media/pci/tw68/Kconfig, VIDEO_TW68 should depend on I2C in order
>> to make it safe to select I2C_ALGOBIT.
>>
>> In drivers/net/can/sja1000/Kconfig, CAN_PEAK_PCIEC should depend on I2C
>> instead of selecting I2C (and change the help text).
--
~Randy
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists