zephyr/scripts
Ulf Magnusson 2845d8f404 scripts: edtlib: Make order irrelevant when including multiple files
When foo.yaml set some property 'required: true' and bar.yaml set the
same property 'required: false', the check for changing
'required: false' to 'required: true' would raise an error for

    include: [bar.yaml, foo.yaml]

(with that particular order due to implementation details).

The order files are included in shouldn't matter. To fix it, change the
logic so that 'required' values are ORed together between included files
(so that 'required: true' is always respected), and remove the
'required' true-to-false check when merging included files.

Keep the true-to-false check when merging the (merged) included files
into the main binding (the binding with the 'include:' in it). This
might give a good organization, and the old scripts do it too.

Piggyback two fixes/cleanups:

 - 'compatible' should be allowed to appear in included files

 - No need to allow an 'inherits' key in _check_binding(), because
   it has been removed before then, when merging bindings

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2019-09-11 07:50:30 -05:00
..
checkpatch
ci
coccinelle
dts
footprint
gitlint
kconfig
sanity_chk
support
west_commands
.gitignore
checkpatch.pl
checkstack.pl
coccicheck
dir_is_writeable.py
elf_helper.py
file2hex.py
filter-known-issues.py
gen_app_partitions.py
gen_cfb_font_header.py
gen_gcov_files.py
gen_kobject_list.py
gen_offset_header.py
gen_priv_stacks.py
gen_relocate_app.py
gen_syscall_header.py
gen_syscalls.py
mergehex.py
parse_syscalls.py
process_gperf.py
requirements.txt
sanitycheck
series-push-hook.sh
spelling.txt
subfolder_list.py
tags.sh
valgrind.supp
waitpid
west-commands.yml
zephyr_module.py