* Re: [PATCH 2/3] x86: apuv2: fix input dependencies [not found] ` <CAK8P3a0vdhCTNTF-K0mXjRWkPvv0qr3nf_52=8n6zTa7p3ELLw@mail.gmail.com> @ 2019-03-05 13:50 ` Enrico Weigelt, metux IT consult 2019-03-05 13:56 ` Andy Shevchenko 2019-03-05 16:46 ` Arnd Bergmann 0 siblings, 2 replies; 5+ messages in thread From: Enrico Weigelt, metux IT consult @ 2019-03-05 13:50 UTC (permalink / raw) To: Arnd Bergmann Cc: Darren Hart, Andy Shevchenko, Linus Walleij, Enrico Weigelt, Andy Shevchenko, open list:GPIO SUBSYSTEM, Platform Driver, Linux Kernel Mailing List, yamada.masahiro, linux-kbuild On 05.03.19 09:23, Arnd Bergmann wrote: (CC'ing kbuild maintainer + list, hoping for better ideas :) > No, that wouldn't be good here. In effect that means that with INPUT disabled, > most of the x86 platform drivers are disabled, until you enable the > PCENGINES_APU2 symbol, which then ends up showing all the other > symbols at once, and changing them to their default states. Okay, I didn't consider the defaults. Maybe we should talk about step by step getting away from these defaults (perhaps move them to the defconfigs ?) on a broader scale ... but yeah, that's far out of scope now. So, you've conviced me. Add me to Reviewed-By to your patches and forget about mine. > Another problem is that you likely run into circular dependency chains > after trying that. The best practice for select vs. depends are hmm, if circular deps happen, wouldn't that mean we've got some deeper problems in here ? IMHO, dependencies should always form a DAG (except for some really rare cases). Do you recall any actual problem w/ input vs gpio vs. drivers ? I'd like to have a closer look at it. > 1. try to use 'depends on' if you can Well, this has the unpleasant side effect that we often have to enable a lot of things, just to even see the individual driver. For people who just wanna configure a kernel for their board, this is a bit nasty. But, okay, I'm going to do this w/ my own tool - I've written a small tool that allows easy kernel reconfiguration on a higher level: you can just pick some board templates and enable high level features like eth, gpu, etc - it automatically creates a .config for you. I'm going announce it on lkml soon. --mtx -- Enrico Weigelt, metux IT consult Free software and Linux embedded engineering info@metux.net -- +49-151-27565287 ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 2/3] x86: apuv2: fix input dependencies 2019-03-05 13:50 ` [PATCH 2/3] x86: apuv2: fix input dependencies Enrico Weigelt, metux IT consult @ 2019-03-05 13:56 ` Andy Shevchenko 2019-03-07 0:10 ` Enrico Weigelt, metux IT consult 2019-03-05 16:46 ` Arnd Bergmann 1 sibling, 1 reply; 5+ messages in thread From: Andy Shevchenko @ 2019-03-05 13:56 UTC (permalink / raw) To: Enrico Weigelt, metux IT consult Cc: Arnd Bergmann, Darren Hart, Andy Shevchenko, Linus Walleij, Enrico Weigelt, open list:GPIO SUBSYSTEM, Platform Driver, Linux Kernel Mailing List, Masahiro Yamada, linux-kbuild On Tue, Mar 5, 2019 at 3:50 PM Enrico Weigelt, metux IT consult <lkml@metux.net> wrote: > On 05.03.19 09:23, Arnd Bergmann wrote: > > 1. try to use 'depends on' if you can > > Well, this has the unpleasant side effect that we often have to enable > a lot of things, just to even see the individual driver. For people who > just wanna configure a kernel for their board, this is a bit nasty. > > But, okay, I'm going to do this w/ my own tool - I've written a small > tool that allows easy kernel reconfiguration on a higher level: you > can just pick some board templates and enable high level features like > eth, gpu, etc - it automatically creates a .config for you. I'm going > announce it on lkml soon. Darren gave a talk about merging kernel configs to get something like you want to. This tool is quite long already lying around. merge_config.sh in your kernel source tree. -- With Best Regards, Andy Shevchenko ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 2/3] x86: apuv2: fix input dependencies 2019-03-05 13:56 ` Andy Shevchenko @ 2019-03-07 0:10 ` Enrico Weigelt, metux IT consult 2019-03-07 7:03 ` Darren Hart 0 siblings, 1 reply; 5+ messages in thread From: Enrico Weigelt, metux IT consult @ 2019-03-07 0:10 UTC (permalink / raw) To: Andy Shevchenko Cc: Arnd Bergmann, Darren Hart, Andy Shevchenko, Linus Walleij, Enrico Weigelt, open list:GPIO SUBSYSTEM, Platform Driver, Linux Kernel Mailing List, Masahiro Yamada, linux-kbuild On 05.03.19 14:56, Andy Shevchenko wrote: > > Darren gave a talk about merging kernel configs to get something like > you want to. > This tool is quite long already lying around. merge_config.sh in your > kernel source tree. Yes, that's similar to how some distros (eg. yocto) do it. But my requirements are a bit more complex: In my final meta-config, I just wanna say: * i have board A (possibly multiple boards) * i need features X, Y, Z (eg. eth, display, can, ext4, acl, ...) And that shall be all to generate a minimal config for exactly those requirements. Doing that by just putting config snippets together, quickly turns into a maintenance hell. At least you'd need recursive dependencies and some if/else logic. That's why I've written kmct: https://github.com/metux/kmct --mtx -- Enrico Weigelt, metux IT consult Free software and Linux embedded engineering info@metux.net -- +49-151-27565287 ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 2/3] x86: apuv2: fix input dependencies 2019-03-07 0:10 ` Enrico Weigelt, metux IT consult @ 2019-03-07 7:03 ` Darren Hart 0 siblings, 0 replies; 5+ messages in thread From: Darren Hart @ 2019-03-07 7:03 UTC (permalink / raw) To: Enrico Weigelt, metux IT consult Cc: Andy Shevchenko, Arnd Bergmann, Andy Shevchenko, Linus Walleij, Enrico Weigelt, open list:GPIO SUBSYSTEM, Platform Driver, Linux Kernel Mailing List, Masahiro Yamada, linux-kbuild On Thu, Mar 07, 2019 at 01:10:13AM +0100, Enrico Weigelt, metux IT consult wrote: > On 05.03.19 14:56, Andy Shevchenko wrote: > > > > Darren gave a talk about merging kernel configs to get something like > > you want to. > > This tool is quite long already lying around. merge_config.sh in your > > kernel source tree. > > Yes, that's similar to how some distros (eg. yocto) do it. > I wrote merge_config.sh to replace and simplify some of the yocto tooling. With merge_config upstream, Yocto now uses it directly. > But my requirements are a bit more complex: > > In my final meta-config, I just wanna say: > > * i have board A (possibly multiple boards) > * i need features X, Y, Z (eg. eth, display, can, ext4, acl, ...) > > And that shall be all to generate a minimal config for exactly those > requirements. That's also the goal of the Yocto configuration fragments, and is possible with merge_config with a set of defined fragments. > > Doing that by just putting config snippets together, quickly turns into > a maintenance hell. At least you'd need recursive dependencies and some > if/else logic. > > That's why I've written kmct: > > https://github.com/metux/kmct I had a look, the README could benefit from a basic usage example. Digging through it further, it appears that you are creating yaml files which contain CONFIGs. The problem with this in my opinion is these are kernel version specific, so you know have a lot of boiler plate yaml wrapping kernel version specific CONFIG options which will slowly get out of sync over time. This is the usual argument for keeping config fragments together with the kernel - and why we do that in arch/*/config for example. Perhaps I'm missing your desired workflow though. I tend to find the options I need and record them in a fragment, and save it off for later to quickly be able to "make defconfig fragA.config fragB.config" etc. Is what you're trying to do different? -- Darren Hart VMware Open Source Technology Center ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 2/3] x86: apuv2: fix input dependencies 2019-03-05 13:50 ` [PATCH 2/3] x86: apuv2: fix input dependencies Enrico Weigelt, metux IT consult 2019-03-05 13:56 ` Andy Shevchenko @ 2019-03-05 16:46 ` Arnd Bergmann 1 sibling, 0 replies; 5+ messages in thread From: Arnd Bergmann @ 2019-03-05 16:46 UTC (permalink / raw) To: Enrico Weigelt, metux IT consult Cc: Darren Hart, Andy Shevchenko, Linus Walleij, Enrico Weigelt, Andy Shevchenko, open list:GPIO SUBSYSTEM, Platform Driver, Linux Kernel Mailing List, Masahiro Yamada, Linux Kbuild mailing list On Tue, Mar 5, 2019 at 2:50 PM Enrico Weigelt, metux IT consult <lkml@metux.net> wrote: > > On 05.03.19 09:23, Arnd Bergmann wrote: > > hmm, if circular deps happen, wouldn't that mean we've got some deeper > problems in here ? IMHO, dependencies should always form a DAG (except > for some really rare cases). > > Do you recall any actual problem w/ input vs gpio vs. drivers ? > I'd like to have a closer look at it. Not with gpio. Most of the circular dependencies I've seen tend to revolve around drivers/gpu/drm, which uses more 'select' statements than most other subsystems. Those dependencies often touch backlight, acpi, fbdev and other things then. Arnd ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-03-07 7:03 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20190304201930.1622839-1-arnd@arndb.de>
[not found] ` <20190304201930.1622839-2-arnd@arndb.de>
[not found] ` <a94c3c6a-481e-96a5-74e1-8c3299c74129@metux.net>
[not found] ` <CAK8P3a0vdhCTNTF-K0mXjRWkPvv0qr3nf_52=8n6zTa7p3ELLw@mail.gmail.com>
2019-03-05 13:50 ` [PATCH 2/3] x86: apuv2: fix input dependencies Enrico Weigelt, metux IT consult
2019-03-05 13:56 ` Andy Shevchenko
2019-03-07 0:10 ` Enrico Weigelt, metux IT consult
2019-03-07 7:03 ` Darren Hart
2019-03-05 16:46 ` Arnd Bergmann
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox