From: Nikita Kiryanov <nikita@compulab.co.il>
To: u-boot@lists.denx.de
Subject: [U-Boot] [RFC] How to move lots of CONFIGs from header files to Kconfig
Date: Mon, 27 Oct 2014 19:41:47 +0200 [thread overview]
Message-ID: <544E83DB.2020200@compulab.co.il> (raw)
In-Reply-To: <CAMhH57S5GOKWmCUnmHLKUpC25y836QhqR7fcoOmTASKXmUaePA@mail.gmail.com>
Hi Masahiro,
On 27/10/14 19:13, Masahiro YAMADA wrote:
> Hi.
>
> I've been thinking how to move so many CONFIGs to Kconfig.
>
> First, I want to move many boolean macros such as CONFIG_CMD_*,
> because it seems easier than string, int, hex configs.
>
> Roughly, we have two options, I think.
>
>
>
> [1] I do this work for all the boards
>
> I will prepare many entries in Kconfigs and
> also move lots of configs options by a tool.
>
> Pros:
> - Possible to move many options at one time
>
> Cons:
> - Cause lots of conflicts
> - It is pointless to touch lots of unmaintained boards
> that might be removed by the end of this year
> - Hard work for me
>
> [2] Each board maintainer takes care of boards he is responsible for.
>
> Procedure:
>
> 1. I will create many entries in Kconfigs
> without dependencies ("depends on" and "select")
>
> 2. Each board maintainer will move config options
> from his board headers to defconfigs (*)
> (I expect most of active boards will be switched at this step.)
>
> 3. Many of unmaintained boards ( = not converted to generic board)
> will be removed by the end of this year.
>
> 4. I will forcibly convert left-over boards.
> These boards are almost inactive, so this conversion
> will not produce much conflicts.
>
> 5. Implement "depends on" and "select" correctly
>
> (*) You can edit directly configs/foo_defconfig.
> Or you can use Kconfig functions in case you may introduce a typo.
>
> Run "make foo_defconfig"
> Run "make menuconfig"
> Enable config options you like
> Select "Save".
> Run "make savedefconfig"
> Run "mv defconfig configs/foo_defconfig"
> Remove unnecessay CONFIGs from your board header files
>
>
> Pros:
> - Reduce the possibility of significant conflicts
> - Avoid needless efforts for unmaintained boards
>
> Cons:
> - Patch for each board will fly around
> - Take longer time
>
>
> At first, I was planning to do [1] but it would disturb the
> development on SoC subsystems.
> I see SUNXI custodians are touching their Kconfigs and defconfigs very often.
> [1] would cause conflicts between u-boot/master and u-boot-sunxi/{master,next}.
> I also many boards are being dropped these days, which increase the conflicts.
>
>
>
> I am thinking [2] is better.
> Comments are welcome.
>
I recently tried to do [1] for a bunch of SPL #defines, and the attempt
ended in me git stashing the whole thing and putting it off for a later
date. The amount of work this approach requires feels very prohibitive,
and I agree that it is likely to be disruptive, so I'm in favour of
[2] as well.
--
Regards,
Nikita Kiryanov
next prev parent reply other threads:[~2014-10-27 17:41 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-27 17:13 [U-Boot] [RFC] How to move lots of CONFIGs from header files to Kconfig Masahiro YAMADA
2014-10-27 17:41 ` Nikita Kiryanov [this message]
2014-10-28 6:55 ` Albert ARIBAUD
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=544E83DB.2020200@compulab.co.il \
--to=nikita@compulab.co.il \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox