freebsd-nq/stand
Kyle Evans 1dff72eb82 stand/fdt: Check /compatible property on overlay if it exists
Example overlays seen in other places use a compatible property on root node
of an overlay to specify SOC compatibility. These don't get merged into base
FDT as they're not part of a fragment, but it's expected that consumers of
the overlay may want to check it.

If /compatible on the overlay is missing, just apply it. This is the "I know
what I'm doing" mode for those wanting to whip up a quick overlay and apply
it. An overlay intended for distribution should include /compatible so as
not to break a user's system.

If /compatible on the overlay exists, honor it and cross-check it with
/compatible on the base FDT. If /compatible on the base FDT is missing in
this case, don't apply the overlay rather than risk breaking the system.

Move the COPYOUT of overlay material to before we allocate space for
next_fdtp so that we can avoid the allocation and copy into next_fdtp if we
already know that the overlay can't apply.

This gives way to the possibility of autoloading overlays found in
/boot/overlays, since this provides a means of filtering out overlays not
applicable to the current board.

Reviewed by:	gonzo
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D13969
2018-01-28 03:07:22 +00:00
..
arm stand: Move sections around to fix stand/ build with ld.lld on armv7 2018-01-18 22:46:47 +00:00
arm64
common There's no tainted data here, tag it as such to avoid the slew of 2018-01-23 18:01:40 +00:00
efi stand/fdt: Consolidate overlay handling a little further 2018-01-28 01:22:15 +00:00
fdt stand/fdt: Check /compatible property on overlay if it exists 2018-01-28 03:07:22 +00:00
ficl Revert r326855: Cargo cut a fix for the regressions r326585 caused. 2017-12-14 18:57:17 +00:00
ficl32
forth stand: Add /boot/overlays to allow separation of overlays from base FDT 2018-01-18 04:58:54 +00:00
geli No need to include the userland md5.h, the kernel one is just fine. 2017-12-05 21:37:45 +00:00
i386 Tag unreachable places as such. I left the while (1); in place since 2018-01-26 22:22:21 +00:00
kshim
libsa abort() should be marked __dead2 since it won't return. 2018-01-26 17:40:13 +00:00
libsa32
man
mips Tag unreachable places as such. I left the while (1); in place since 2018-01-26 22:22:21 +00:00
ofw Interact is always called with NULL. Simplify code a little by 2017-12-19 04:05:55 +00:00
powerpc Tag unreachable places as such. I left the while (1); in place since 2018-01-26 22:22:21 +00:00
sparc64 Interact is always called with NULL. Simplify code a little by 2017-12-19 04:05:55 +00:00
uboot stand/fdt: Consolidate overlay handling a little further 2018-01-28 01:22:15 +00:00
usb
userboot Interact is always called with NULL. Simplify code a little by 2017-12-19 04:05:55 +00:00
zfs Mark two things as unused (since they are only sometimes used) and 2017-12-03 04:55:33 +00:00
zfs32
defs.mk Fix ubldr. uboot/lib uses defines for the loader. It's part of the 2017-12-29 18:08:35 +00:00
fdt.mk
ficl.mk This path belongs in ficl/Makefile, not the common defines for users 2017-12-08 22:19:41 +00:00
loader.mk Fix ubldr. uboot/lib uses defines for the loader. It's part of the 2017-12-29 18:08:35 +00:00
Makefile
Makefile.amd64 Switch to proper MK_LOADER_GELI tests. 2017-12-04 01:14:12 +00:00
Makefile.arm
Makefile.arm64
Makefile.i386 Switch to proper MK_LOADER_GELI tests. 2017-12-04 01:14:12 +00:00
Makefile.inc Minor flags cleanup 2017-12-02 00:06:58 +00:00
Makefile.mips
Makefile.powerpc
Makefile.sparc64
uboot.mk