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 linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html