coreboot-kgpe-d16/util
Furquan Shaikh 27efc501d1 util/sconfig: Add support for overriding base tree properties/node
This change adds support to allow variants to override the devices and
properties in base device tree by providing an override device
tree. It works as follows:
1. Both base and override device trees are parsed from provided input
files.
2. Walk through the trees in lockstep fashion using depth-first
traversal checking if a node in override tree has a matching node in
base tree.
 - If matching node is found, then update the properties of base node
 using the override node. Continue walking the children of the nodes.
 - If matching node is not found, then copy the entire override
 subtree of the node under the current base parent. In addition to
 that, chip instance pointers of the nodes in override tree need to be
 updated if they were pointing to the override parents chip instance.

Since chip always expects a device to be present, it leads to a
side-effect that overriding chip registers requires that a device is
always provided for the chip in the override tree as well.

BUG=b:80081934

Change-Id: I6604e4f8abe3fc48240e942fea32da96031e1e46
Signed-off-by: Furquan Shaikh <furquan@google.com>
Reviewed-on: https://review.coreboot.org/27206
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2018-06-25 17:40:36 +00:00
..
abuild util/abuild: Fix building when not in coreboot root dir 2018-06-21 15:47:44 +00:00
acpi
amdfwtool util/amdfwtool/amdfwtool.c: Check fstat return 2018-02-22 09:59:40 +00:00
amdtools
archive archive: build archive tool with HOSTCC 2016-03-08 17:40:05 +01:00
arm_boot_tools/mksunxiboot arm_boot_tools: Add 'b' to fopen flags for Windows compatibility 2014-12-19 18:55:34 +01:00
autoport src: Get rid of unneeded whitespace 2018-06-14 09:32:34 +00:00
bimgtool codebase: Change makefile $(shell pwd) commands to $(CURDIR) 2016-03-11 18:48:06 +01:00
bincfg util/bincfg: don't use fp shared variable 2018-01-23 05:21:48 +00:00
board_status util/docker/coreboot.org-status: collect report generators 2018-06-14 08:45:24 +00:00
broadcom util/broadcom/secimage: Add distclean target 2018-02-10 23:49:58 +00:00
cbfstool cbfstool/fit.c: Fix for older CPUs without total_size in mcu_header 2018-06-22 09:20:22 +00:00
cbmem util/cbmem: Fix compare function for qsort 2018-05-18 20:13:47 +00:00
checklist
chromeos
crossgcc src: Get rid of unneeded whitespace 2018-06-14 09:32:34 +00:00
docker util/docker/coreboot.org-status: collect report generators 2018-06-14 08:45:24 +00:00
dtd_parser
ectool ectool: Add an option to get and use EC ports from /proc/ioports 2018-04-19 16:30:23 +00:00
exynos
futility
fuzz-tests
genbuild_h util/genbuild_h: Add gitfile support 2018-01-23 05:33:02 +00:00
genprof
gitconfig checkpatch: exclude util/crossgcc/patches 2018-05-30 17:12:00 +00:00
ifdfake
ifdtool util/ifdtool: Remove .dependencies on make clean 2018-06-04 09:38:25 +00:00
intelmetool src: Get rid of unneeded whitespace 2018-06-14 09:32:34 +00:00
inteltool inteltool: Add PCI IDs for the C220 PCH series 2018-06-21 17:39:48 +00:00
intelvbttool
ipqheader util/*: Fix final newlines in scripts 2018-01-23 05:17:44 +00:00
k8resdump util/*: don't strip executables 2017-10-29 08:48:56 +00:00
kbc1126
kconfig {src,util}: Use NULL instead of 0 for pointer 2018-06-11 08:52:08 +00:00
lint util/lint/checkpatch_json: Fix checkpatch output keyword match string 2018-06-25 08:19:37 +00:00
marvell
me_cleaner sb/intel/common/firmware: Enable me_cleaner for Nehalem 2018-06-25 08:19:16 +00:00
mma
msrtool util/msrtool: Add Pentium D support 2018-06-04 02:30:03 +00:00
mtkheader mediatek/mt8183: Add a stub implementation of the MT8183 SOC 2018-06-11 10:30:59 +00:00
nvidia util/nvidia/cbootimage: Update to upstream master 2017-04-24 19:19:39 +02:00
nvramtool util/cbfstool: Support FIT payloads 2018-06-15 09:13:24 +00:00
post
qualcomm/scripts/cmm util/qualcomm: Add T32 debug scripts 2018-04-27 09:21:11 +00:00
release util/release/genrelnotes: Add "sifive" search pattern 2018-05-05 15:24:45 +00:00
riscv src/sifive: Add the SiFive Freedom Unleashed 540 SoC 2018-04-26 11:52:37 +00:00
rockchip rockchip: update make_idb.py 2016-03-16 15:24:10 +01:00
romcc src: Get rid of unneeded whitespace 2018-06-14 09:32:34 +00:00
sconfig util/sconfig: Add support for overriding base tree properties/node 2018-06-25 17:40:36 +00:00
scripts kconfig: add script to manipulate .config files on the command line 2018-06-12 07:43:15 +00:00
showdevicetree sconfig: Add a new mmio resource type 2018-01-25 16:50:17 +00:00
spkmodem_recv tree: drop last paragraph of GPL copyright header 2015-10-31 21:37:39 +01:00
superiotool util/superiotool: Remove whitespace before tab 2018-06-04 09:10:32 +00:00
testing util/testing: Convert tegra124 and tegra210 builds to junit 2018-05-22 07:25:54 +00:00
uio_usbdebug
vgabios src: Get rid of unneeded whitespace 2018-06-14 09:32:34 +00:00
viatool
x86 util/x86/x86_page_tables: add command line to generated files 2018-04-27 03:25:28 +00:00
xcompile util/xcompile: prefer riscv64 over riscv 2018-05-09 10:00:32 +00:00