On Tue, Nov 19, 2013 at 12:19 AM, Stephen Warren <swarren@xxxxxxxxxxxxx> wrote: > On 11/18/2013 10:25 AM, Michal Marek wrote: >> MFD_AS3722 can only be builtin, so it needs I2C builtin as well. >> With I2C=m, we get: >> >> drivers/mfd/as3722.c:372: undefined reference to `devm_regmap_init_i2c' >> drivers/built-in.o: In function `as3722_i2c_driver_init': >> drivers/mfd/as3722.c:444: undefined reference to `i2c_register_driver' >> drivers/built-in.o: In function `as3722_i2c_driver_exit': >> drivers/mfd/as3722.c:444: undefined reference to `i2c_del_driver' > > Shouldn't Kconfig handle this; if a Boolean config option depends on a > tri-state config option, shouldn't it automatically validate that the > tri-state is "y" not "m"? Unfortunately not. While tristate is always used to declare code modules, bool can be used to declare two different things: code modules or optional features. For optional features, "depends on x" means "depends on x=y or x=m". For code modules, "depends on x" should really by "depends on x=y". To handle this automatically, we need to introduce a new Kconfig symbol, and convert all the thousands existing ones... Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html