]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit - contrib/unbound/libunbound/python/file_py3.i
libfdt: Update to 1.4.6, switch to using libfdt for overlay support
authorKyle Evans <kevans@FreeBSD.org>
Thu, 18 Jan 2018 04:39:09 +0000 (04:39 +0000)
committerKyle Evans <kevans@FreeBSD.org>
Thu, 18 Jan 2018 04:39:09 +0000 (04:39 +0000)
commit6780e684d49034610f82bea5d3bfb04d42e91628
treeac204ccdeb0a6f6eb5ab7cbae44fa4b455bf913f
parent66f8917bea4fe2ad6003dd57f16f1aa8a87ba62e
parent2f36e4ecd0f0c04781c752e5382906a43feaf4e3
libfdt: Update to 1.4.6, switch to using libfdt for overlay support

libfdt highlights since 1.4.3:

- fdt_property_placeholder added to create a property without specifying its
value at creation time
- stringlist helper functions added to libfdt
- Improved overlay support
- Various internal cleanup

Also switch stand/fdt over to using libfdt for overlay support with this
update. Our current overlay implementation works only for limited use cases
with overlays generated only by some specific versions of our dtc(1). Swap
it out for the libfdt implementation, which supports any properly generated
overlay being applied to a properly generated base.

This will be followed up fairly soon with an update to dtc(1) in tree to
properly generate overlays.

MFC note: the <stdlib.h> include this update introduces in libfdt_env.h is
apparently not necessary in the context we use this in. It's not immediately
clear to me the motivation for it being introduced, but it came in with
overlay support. I've left it in for the sake of accuracy and because it's
not harmful here on HEAD, but MFC'ing this to stable/11 will require
wrapping the #include in an `#ifndef _STANDALONE` block or else it will
cause build failures.

Tested on: Banana Pi-M3 (ARMv7)
Tested on: Pine64 (aarch64)
Tested on: PowerPC [nwhitehorn]
Reviewed by: manu, nwhitehorn
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D13893
15 files changed:
stand/fdt/Makefile
stand/fdt/fdt_loader_cmd.c
sys/contrib/libfdt/fdt.c
sys/contrib/libfdt/fdt.h
sys/contrib/libfdt/fdt_addresses.c
sys/contrib/libfdt/fdt_empty_tree.c
sys/contrib/libfdt/fdt_overlay.c
sys/contrib/libfdt/fdt_ro.c
sys/contrib/libfdt/fdt_rw.c
sys/contrib/libfdt/fdt_strerror.c
sys/contrib/libfdt/fdt_sw.c
sys/contrib/libfdt/fdt_wip.c
sys/contrib/libfdt/libfdt.h
sys/contrib/libfdt/libfdt_env.h
sys/contrib/libfdt/libfdt_internal.h