blspec and FIT systems usually have multiple entries/configurations, where a suitable one should be selected at runtime by comparing each against the board's barebox DT compatible. For blspec, this meant we need to unflatten the whole DT only to access a single property. For FIT, this meant we expected the configuration to carry a "compatible" property and didn't even attempt to parse it out of the fdt as fallback. Both are resolved with this series. Ahmad Fatoum (4): of: fdt: factor out FDT header parsing of: fdt: implement fdt_machine_is_compatible blspec: don't parse whole device tree to compare compatibles FIT: support finding compatible configuration by FDT compatible common/blspec.c | 16 ++--- common/image-fit.c | 39 ++++++++++- drivers/of/fdt.c | 171 ++++++++++++++++++++++++++++++++++++--------- include/of.h | 8 +++ 4 files changed, 191 insertions(+), 43 deletions(-) -- 2.39.2