Third round. This time I implemented the filepattern and compatible matching as an extensible list of filters. Changes since v2: - rename globalvars, use dots instead of underscores - Add filter mechanism to allow to add board or SoC specific filters Changes since v1: - Do not (re-)load firmware on each of_fix_tree() - handle empty strings returned from strsep gracefully - Drop -S option from of_overlay command instead of ignoring it Sascha Hauer (18): of: of_copy_node(): Copy phandles as well of: Add function to duplicate a device tree fdt: Check blob size during unflattening firmware: make device_node argument non const libbb: Add find_path function firmware: consolidate ifdefs firmware: Add search path firmware: Fix device_node matching firmware: recognize by reproducible name blspec: Set firmware searchpath overlay: Add of_overlay_apply_file() firmware: Load from global search path blspec: Rework firmware load overlay: Add filters to choose which overlays to apply blspec: Apply overlays from rootfs doc: devicetree: Refer to internal device tree also as live tree Documentation: Add documentation for device tree overlays of_firmware: Fix handling of firmware-name property Documentation/user/devicetree.rst | 45 ++- arch/arm/boards/qemu-virt/board.c | 4 +- arch/arm/boards/raspberry-pi/rpi-common.c | 2 +- arch/arm/boards/webasto-ccbv2/board.c | 2 +- arch/arm/lib32/bootm.c | 6 +- arch/arm/lib32/bootu.c | 5 +- arch/arm/lib32/bootz.c | 3 + arch/arm/lib64/armlinux.c | 4 + arch/kvx/lib/bootm.c | 6 + arch/mips/lib/bootm.c | 4 + arch/powerpc/lib/ppclinux.c | 4 + arch/riscv/lib/bootm.c | 5 + commands/of_diff.c | 6 +- commands/of_display_timings.c | 2 +- commands/of_dump.c | 4 +- commands/of_overlay.c | 34 +-- commands/oftree.c | 2 +- common/blspec.c | 99 +++--- common/bootm.c | 4 +- common/efi/efi.c | 2 +- common/firmware.c | 59 +++- common/image-fit.c | 2 +- common/oftree.c | 4 +- common/state/backend_format_dtb.c | 2 +- drivers/firmware/altera_serial.c | 1 + drivers/firmware/socfpga.c | 2 + drivers/firmware/zynqmp-fpga.c | 2 + drivers/of/base.c | 8 +- drivers/of/fdt.c | 17 +- drivers/of/of_firmware.c | 137 ++++++--- drivers/of/overlay.c | 355 ++++++++++++++++++++++ include/firmware.h | 26 +- include/libbb.h | 4 +- include/of.h | 43 ++- lib/libbb.c | 58 ++-- 35 files changed, 765 insertions(+), 198 deletions(-) -- 2.29.2 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox