MotionApps 5.1.2 release

* Fix race condition around enable/disable with GlobalHalMutex.
 One instance could turn on "buffer/enable" causing another instance to
  fail setting up sensors, which ends with
  "HAL:ERR full data packet was not read"
 The MPLSensor::mHALMutex is not sufficient in this case.
* Fix incorrect fprintf sysfs updates.
 Using fprintf() delays writes, causing errors to go unnoticed,
 and errors from fclose() which then flushes and sees the error
 were being ignored.
* Switch to YAS53x vars.
* Add support for custom accel calibration loader function.
* Tweak calibration storage logic.
* Support for Low Power Quaternion (enabled by default)
* Support for DMP Screen Orientation (disabled by default)
* Clarify that readEvents() ignores arguments and return code.
* Tweak failed sysfs init handling.
* Simplifications/cleanups
  . messages around write_sysfs_int() invocations.
  . move common timestamp code out of Base into Support.
  . sensor enabling code.
  . remove some dead code.

* software/{build,core}...
  . better support for IceCreamSandwich and JellyBean
  . mllite, dmp register update
* software/simple_apps
  . added gesture test

* Rebuild libmllite.so for RC9
* new libmplmpu.so for RC9 (and later)

Change-Id: Ie88a16c334fc7d0f0b3d2007e3005b5fd3e2b732
Signed-off-by: Mars Lee <mlee@invensense.com>
Signed-off-by: JP Abgrall <jpa@google.com>
libsensors: Removed the unused sensor status field

Some sensors declare a status field which is actually
not used.
Internally it would be mapped to an accuracy member
that was also not used.

We now get rid of them where needed.
This prepares for the new sensors_data_t structure.

Change-Id: Ic05527abb3177f4e3aebee47488d67ca254e48d1
Merge branch 'jb43-aosp' into HEAD