On 18/09/2018 04:05, Simon Glass wrote:
HI Jean-Jacques,

On 17 September 2018 at 09:31, Jean-Jacques Hiblot <jjhib...@ti.com> wrote:
scan_configs.py is tool that allow to check how some options are used for
a particular subset of platforms.
The purpose is to identify the targets that are actually using one or more
options of interest.
For example, it can tell what targets are still using CONFIG_DM_I2_COMPAT.
This is much slower that greping the configs directory but is actually more
accurate as it relies on the information found in u-boot.cfg instead.
It can also perform diffs between u-boot.cfg and spl/u-boot.cfg (sometimes
platforms change the CONFIG options in the header file for the SPL) and
diffs between .config and u-boot.cfg. This last is useful to identify
options that could be moved to defconfigs.

usage: scan_configs.py [-h] [--soc SOC] [--vendor VENDOR] [--arch ARCH]
                        [--cpu CPU] [--board BOARD] [--target TARGET]
                        [-j JOBS] [-v] [-p] [--keep] [--nobuild]
                        [--uboot | --spl | --spldiff | --dotconfdiff]
                        OPTION [OPTION ...]

all filtering parameters (OPTION, vendor, arch, ...) accept regexp.
ex: scan_configs.py .*DM_I2C.* --soc 'omap[2345]|k3' will match
CONFIG_DM_I2C and CONFIG_DM_I2C_COMPAT and look for it only for targets
using the omap2, omap3, omap4, omap5 or k3 SOCs.

Signed-off-by: Jean-Jacques Hiblot <jjhib...@ti.com>

---
I wrote this tool because I was struggling keeping in mind all the
platforms that were impacted by a WIP on DM_I2C_COMPAT for TI platforms.
You may find it useful too.

limitations:
- must be executed at the root of the source tree
- the source tree must be clean (make mrproper)
- only supports CSV format. visualization in terminal sould be added.
   But LibreOffice calc is better suited with all its ordering/
   filtering capabilities.

  tools/scan_configs.py | 379 ++++++++++++++++++++++++++++++++++++++++++++++++++
  1 file changed, 379 insertions(+)
  create mode 100755 tools/scan_configs.py
This looks useful, but...

Have you looked at moveconfig? It has a way to create a CONFIG
database which can be queried.
I did know this tool.
It looks indeed like this part of the code could be common.
I'll give a try.

Thanks,
JJ

Regards,
Simon


_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to