MFC r256865

Remove the isf(4) driver.  It was created by accident and is subset of
the cfi(4) driver.  It remained in the tree longer than would be ideal
due to the time required to bring cfi(4) to feature parity.

Sponsored by:	DARPA/AFRL
Approved by:	re (gjb)
MFC r256861:

MFP4: 223121 (FDT infrastructure portion)

Implement support for interrupt-parent nodes in simplebus.  The current
implementation requires that device declarations have an interrupt-parent
node and that it point to a device that has registered itself as a
interrupt controller in fdt_ic_list_head and implements the fdt_ic
interface.

Sponsored by:   DARPA/AFRL
Approved by:    re (gjb)
MFC r257268:

Enable the --sysroot=/foo option in ld by always building with a sysroot
defined. When not building as a cross linker, the sysroot is set to "/".

Exp-run by:	bdrewery (ports/183206)
Approved by:	re (gjb)
MFC r257138:

Switch the default mtree to nmtree our new NetBSD derived mtree.

Exp-runs by:	bdrewery (ports/182438)
Sponsored by:	DARPA/AFRL
Approved by:	re (gjb)
Notional MFC of r257139:

Regerate after r257460 swapped the default to WITH_NMTREE.

Approved by:	re (gjb)
MFC r257154:

Merging local and remote bitmaps must be protected by hr_amp lock.

This is believed to fix hastd crashes, which might occur during
synchronization, triggered by the failed assertion:

 Assertion failed: (amp->am_memtab[ext] > 0),
 function activemap_write_complete, file activemap.c, line 351.

Approved by:	re (glebius)
MFC r256670:
Rewrite RDRAND support:
Remove the excessive memory accesses to temporary buffer.
Streamline the assembly and unify it between i386 and amd64.

Approved by:	re (glebius)
MFC r257069:
Add ddb 'show ioapic' and 'show all ioapics' commands.

Approved by:	re (glebius)
MFC r257070:
Move the PCI_DMA_BOUNDARY definition into the pcivar.h.

Approved by:	re (glebius)
MFC r257071:
Add some definitions for the bits in root control and status PCIe cap
registers.

Approved by:	re (glebius)
MFC r257072:
Make pci_get_dma_tag() non-static.

Approved by:	re (glebius)
MFC r256540, r256544:

 r256540 (dteske):
 Add loader.conf(5) entries to import bootpool after boot when
 using full-disk encryption and ZFS.

 r256544 (dteske):
 Fix loader.conf(5) entries from r256540.

Approved by:	re (hrs)
Sponsored by:	The FreeBSD Foundation
MFC r257361:
  Fix compatibility function for old daily_status_security_${name}_enable
  variables.

  PR:           conf/183137

MFC r257364:
  Fix indentation.

Approved by:	re (gjb)
MFC r257329 (nyan):
 Fix build, both clang and gcc are required on pc98.

Approved by:	re (kib)
Sponsored by:	The FreeBSD Foundation
MFC r257369:

Don't reference pointer before testing whether it is
NULL.

Submitted by:	Clement Lecigne <clecigne google com>
Reviewed by:	grehan
Approved by:	re (kib)
MFC r256911, r256936

MFP4: 223121 (PIC portion), 225861, 227822, 229692 (PIC only), 229693,
230523, 1123614

Implement a driver for Robert Norton's PIC as an FDT interrupt
controller.  Devices whose interrupt-parent property points to a beripic

device will have their interrupt allocation, activation, and setup
operations routed through the IC rather than down the traditional bus
hierarchy.

This driver largely abstracts the underlying CPU away allowing the
PIC to be implemented on CPU's other than BERI.  Due to insufficient
abstractions a small amount of MIPS specific code is currently required
in fdt_mips.c and to implement counters.

Sponsored by:	DARPA/AFRL
Approved by:	re (gjb)
MFC r256934, r256963, r256972, r257017

MFP4:
Change 221534 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2013/01/27
16:05:30

	FreeBSD/mips stores page-table entries in a near-identical format
	to MIPS TLB entries -- only it overrides certain "reserved" bits
	in the MIPS-defined EntryLo register to hold software-defined bits
	(swbits) to avoid significantly increasing the page table memory
	footprint.  On n32 and n64, these bits were (a) colliding with
	MIPS64r2 physical memory extensions and (b) being improperly
	cleared.

	Attempt to fix both of these problems by pushing swbits further
	along 64-bit EntryLo registers into the reserved space, and
	improving consistency between C-based and assembly-based clearing
	of swbits -- in particular, to use the same definition.  This
	should stop swbits from leaking into TLB entries -- while ignored
	by most current MIPS hardware, this would cause a problem with
	(much) larger physical memory sizes, and also leads to confusing
	hardware-level tracing as physical addresses contain unexpected
	(and inconsistent) higher bits.

	Discussed with: imp, jmallett

Change 1187301 by brooks@brooks_zenith on 2013/10/23 14:40:10
	Loop back the initial commit of 221534 to HEAD.  Correct its
	implementation for mips32.

Sponsored by:	DARPA/AFRL
Approved by:	re (gjb)
MFC r256753

MFP4: 1136252

Add an option ATSE_CFI_HACK to allow memory mapped CFI devices to have
their address range allocated sharable so that atse(4) can find it's
Ethernet address in the expected location.

We intend to remove this hack once the BERI platform has a loader.

Sponsored by:	DARPA/AFRL
Approved by:	re (gjb)
MFC r256912, r256931, r256977

Sync BERI kernel configs with P4:

Switch the majority of device configuration to FDT from hints.

Add BERI_*_BASE configs to reduce duplication in the MDROOT and SDROOT
kernels.

Add NFS and GSSAPI support by default.

Enable ATSE_CFI_HACK in BERI configs, stable MAC addresses are useful.

BERI_SIM.hint is no longer used, remove it.

Sponsored by:	DARPA/AFRL
Approved by:	re (delphij)
MFC r256935

MFP4:
Change 228019 by bz@bz_zenith on 2013/04/23 13:55:30

	Add kernel side support for large TLB on BERI/CHERI.
	Modelled similar to NLM

Sponsored by:	DAPRA/AFRL
Approved by:	re (delphij)