faux sound
d2/apexq: in-kernel mpdecision ***(ported to D2)***

Ported from Dennis Rassmann's work on the Bricked Mako kernel. Offers
extensive battery savings and more responsive touch input boost. No need
to wait for the kernel to tell userspace there is a touch event, which
then informs mpdecision which writes to sysfs and then back to the
kernel.

Also, seriously, why do we need a blob to decide when to online and
offline a core?

Change-Id: I86f57dcae9aa3c0e574bf695b6c2c96199b333fa
ashmem: avoid deadlock between read and mmap calls

Avoid holding ashmem_mutex across code that can page fault.  Page faults
grab the mmap_sem for the process, which are also held by mmap calls
prior to calling ashmem_mmap, which locks ashmem_mutex.  The reversed
order of locking between the two can deadlock.

The calls that can page fault are read() and the ASHMEM_SET_NAME and
ASHMEM_GET_NAME ioctls.  Move the code that accesses userspace pages
outside the ashmem_mutex.

Bug: 9261835
Change-Id: If1322e981d29c889a56cdc9dfcbc6df2729a45e9
Signed-off-by: Todd Poynor <toddpoynor@google.com>
d2: now with valid gpios!

I'm not sure this matters, but this has bothered me since I did the
apexq bring-up. d2 has been importing a Nokia gpio file instead of the
MSM one.

Change-Id: I34d3b4041bbffd7ffd9f625803ac2db69e5e61c9
Touchscreen optimizations

- Increase TS bandwidth
- Merge i2c transactions
- Clean up i2c-qup.c

Conflicts:
	drivers/input/touchscreen/mms_ts_144.c

Change-Id: I568ac6445afab7e342456e1d963f0328696f911d
Re-enable standalone power collapse on d2 and apex devices

Change-Id: I20ece0b0ffc356e5d8a9112dba505a65f7f85fc3