Revert changes to mps and mpt

This allows to backport mps and mpt to pfSense on separate
branches, the following cherry-picked commit grabbed that in.

Author: marius <marius@FreeBSD.org>
Date:   Mon Jul 2 19:19:21 2012 +0000

    MFC: r237546

    Correct sizeof usage

    Obtained from:      DragonFly
MFC r247594:

Fix a typo in mfi_stp_cmd() that would give wrong assignment.

Submitted by:	Sascha Wildner <saw online de>
Obtained from:	DragonFly rev 0dc98fff2206d7bb78ce5e07ac34d6954e4bd96a
MFC r248627:

Don't attempt to reference sc before testing whether it's NULL.

Submitted by:	Sascha Wildner
Obtained from:	DragonFly
MFC r249257:
  Add support for getting and setting BBU properties related to battery
  relearning. Specifically, add subcommands to mfiutil(8) which allow the
  user to set the BBU and autolearn modes when the firmware supports it,
  and add a subcommand which kicks off a battery relearn.

MFC r249258:
  Switch to a 2-clause license.
MFC r244123 Add CTLFLAG_RWTUN define
MFC r247367 Fix non-recusive mutex MFI I/O lock
MFC r247369 Fix a large amount of bugs in MFI that cause panics

Approved by:	pjd (mentor)
MFC r247426:
Add hw.mfi.cmd_timeout loader / sysctl tuneable.
MFC r252471:
Remove forced timeout of in-flight commands from mfi_timeout.

While this prevents commands getting stuck forever there is no way to guarantee
that data from the command hasn't been committed to the device.

In addition older mfi firmware has a bug that would cause the controller to
frequently stall IO for over our timeout value, which when combined with
a forced timeout often resulted in panics in UFS; which would otherwise be
avoided when the command eventually completed if left alone.

For reference this timeout issue is resolved in Dell FW package 21.2.1-0000.
Fixed FW package version for none Dell controller will likely vary.
MFC r242726 (ambrisko):
Add support for SCSI pass through devices to be attached and detached.

MFC r251172 (sbruno):
xpt_create_path() requires mfi_io_lock to be held, so do it.

mfi(4) doesn't panic on host startup now.
Revert changes to mfiutil

They'll be tracked in another branch, makes syncing with upstream
easier.