Hi Jani, On Tue, Apr 9, 2024 at 12:04 PM Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx> wrote: > On Tue, 09 Apr 2024, Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> wrote: > > The user should not need to know which helpers are needed for the driver > > he is interested in. When a symbol selects another symbol, it should > > just make sure the dependencies of the target symbol are met. > > It's really not "just make sure". This leads to perpetual illegal > configurations, and duct tape fixes. Select should not be used for > visible symbols or symbols with dependencies [1]. In other words: none of these helpers should be visible... > What we'd need for usability is not more abuse of select, but rather 1) > warnings for selecting symbols with dependencies, and 2) a way to enable Kconfig already warns if dependencies of selected symbols are not met. > a kconfig option with all its dependencies, recursively. This is what we > lack. You cannot force-enable all dependencies of the target symbol, as some of these dependencies may be impossible to meet on the system you are configuring a kernel for. The current proper way is to add these dependencies to the source symbol, which is what we have been doing everywhere else. Another solution may be to teach Kconfig to ignore any symbols that select a symbol with unmet dependencies. 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