util/sconfig: Throw an error if override tree has no devices
If override tree does not have any device, then the chip info structure in it cannot be associated with the correct device and ends up being added as a standalone chip info structure without any device actually using it. This change prevents this condition by throwing an error during compilation. BUG=b:130342895 Change-Id: I7b8bb6b3228030a465976ca32ce8ef63f41365dd Signed-off-by: Furquan Shaikh <furquan@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/32289 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org>
This commit is contained in:
parent
131134288b
commit
4d99b27018
|
@ -1316,6 +1316,11 @@ int main(int argc, char **argv)
|
||||||
override_devtree = argv[OVERRIDE_DEVICEFILE_ARG];
|
override_devtree = argv[OVERRIDE_DEVICEFILE_ARG];
|
||||||
parse_devicetree(override_devtree, &override_root_bus);
|
parse_devicetree(override_devtree, &override_root_bus);
|
||||||
|
|
||||||
|
if (!dev_has_children(&override_root_dev)) {
|
||||||
|
fprintf(stderr, "ERROR: Override tree needs at least one device!\n");
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
|
||||||
override_devicetree(&base_root_bus, &override_root_bus);
|
override_devicetree(&base_root_bus, &override_root_bus);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue