Change mpt(4) probe to be an exact match to a PCI device ID.  The current
code makes the mpt(4) check for 0x005A and mistakenly attach to a mfi(4)
device 0x005B.  Without this fix, mpt(4) will panic if this mfi(4) card
is in the system.

Reviewed by:	mjacob
First cut at updating mfi(4) to support newer LSI MegaRAID SAS cards.
Specifically, add support for "Drake Skinny" and "ThunderBolt" LSI
cards.

Initial code was supplied by LSI under BSD license.  Several improvements
were done by myself.  Such things like making it work in a static kernel,
be able to boot of the RAID, performance improvements.  I removed some
fairly complicated code that seemed to directly access the disks under
the firmware.  It doesn't seem to be needed and significantly slowed
down the performance of the driver and caused tons of sense errors to
be reported.

This code is being checked in this area so others can help me get it into
shape to commit into the FreeBSD tree.  Assistance has been volunteered
by iXsystems.

We might want to re-work the JBOD attachment that creates /dev/mfisyspd?
node for each disk.

Performance is faster then prior cards.  It works okay with WITNESS
and INVARIANTS on amd64 and i386.  I recall seeing a use after
free time bug with FreeBSD 8 and a Drake Skinny card with WITNESS
and INVARIANTS on.

First task is get all of the new structures to be named in FreeBSD
style format.

Next is probably to deal with the 64bit addressing changes that are
mostly around the #ifdef __amd64__ checks.

Thanks to LSI for providing the initial code.

Obtained from:	LSI
Expand contraction.

Spotted by:	bjk
Call xpt_bus_register during attach context, then freeze and do not release
until domain discovery is complete.  This fixes an isci(4) bug on FreeBSD 7.x
where devices weren't always appearing after boot without an explicit rescan.

Sponsored by: Intel
Reported and tested by: <rpokala at panasas dot com>
Reviewed by: scottl
Approved by: scottl
Before jumping to application's entry point set ra == pc in order
    to let backtracing routine know to go no further.
Fix pmap_kextract prototype to align it with pmap.c change
Also fix the parameter usage in set80211meshpeering().

Submitted by:	Monthadar Al Jaberi
MFC after:	1 week
X-MFC after:	r233328
Use suspend/resume methods provided by net80211. This ensures that the
appropriate state handling takes place, not doing so results in the
device doing nothing until manual intervention.

Reviewed by:	iwasaki
Tested by:	iwasaki (iwi)
MFC after:	4 weeks
Make default ABI for as(1) to be the same as target platform.
This change makes object files compiled with default flags by
gcc and as compatible.
Add a sysctl to set and retrieve binary osreldate of another process.

Suggested by:	kib
Reviewed by:	kib
MFC after:	2 weeks
When displaying binary information show also osreldate.

Suggested by:	kib
MFC after:	2 weeks
Revert ABI breakage in libsupc++.

Unfortunately, the ABI was broken upstream for the 4.2 release, which we
imported.  We then shipped the broken version for several years and certain
ports (e.g. libobjc2) depend on it, so we're stuck with it for now...

We should revisit this for 10.0, since we're allowed to break the ABI then, but
until then we should keep the ABI we shipped with 8.x and 9.x.

Reviewed by:	kan
Approved by:	dim (mentor)
MFC after:	1 week
Fix typo.

MFC after:	3 days
Disable IRIX compatibility flags for DWARF code generator. IRIX-compatible
    DWARF code is not compatible with CTF tools
Add define for MIPS.options
Add handler for MIPS.options section
Make libproc compilable for MIPS
- Use the PCI ID macros from mpi_cnfg.h rather than duplicating them here.
  Note that this driver additionally probes some device IDs for the most
  part not know to other MPT drivers, if at all. So rename the macros not
  present in mpi_cnfg.h to match the naming scheme in the latter and but
  suffix them with a _FB in order to not cause conflicts.
- Like mpt_set_config_regs(), comment out mpt_read_config_regs() as the
  content of the registers read isn't actually used and both functions
  aren't exactly up to date regarding the possible layouts of the BARs
  (these function might be helpful for debugging though, so don't remove
  them completely).
- Use DEVMETHOD_END.
- Use NULL rather than 0 for pointers.
- Remove an unusual check for the softc being NULL.
- Remove redundant zeroing of the softc.
- Remove an overly banal and actually partly incorrect as well as partly
  outdated comment regarding the allocation of the memory resource.

MFC after:	3 days
As it turns out, mpi_cnfg.h already is included by mpt.h.
- Apply binutils workaround on mips.mips as well.  Though this TARGET_ARCH
  is deprecated, tinderbox uses it.