Merge of Sony 7.0.A.1.303 release

Change-Id: I424e9bd9dec28794973d5d78d6baf1cdbaa89ac5
Fix for vsync driven screen update for Sony mipi

Change-Id: Ib8c068d940244cbbb24b791afa92c365dadbf040
board: blue: fix mpm.h header path

Change-Id: Ifc6d55aa88b8be228e56b7d07e8256eeb78c5b48
board: blue: various display update

Port of CAF patches:
* msm: display: Use local HDMI as primary flags for 8960/8064 targets
* msm: rotator: Add Rotator device & bus scale data for 8064/8960/8930
* msm: display: remove framebuffer memory associated with fb1 and fb2
* msm: display: Set max MDP bandwidths for larger primary resolutions
* msm: display: remove the predefined mdp clk rate tables
* msm_fb: HDMI: Update HPD logic to address HDMI PLL related issues

Change-Id: I1ce5a874ae0f4a94df7ee14461a3cf48bd11a0de
[WIP] board: blue: make power_budget static

Change-Id: Ia3dd2ff4f5c4365b92f47ad5b90ea5b99cc22542
board: blue: remove pm8xxx_pwm_pdata

Change-Id: I42d6c721a141f92b702a16427d7282c5476013a2
[WIP] use Sony battery driver

Change-Id: Ibaf283d60e4841efa1cb54065b1eb9f248152d49
drivers: wfd: explicitly include slab header

Change-Id: I9344b7d97cf2f5e21a0f24df19724f417f3ef489
remove controls.xml

Change-Id: I8679514e70a258512796bcb679216e366ede2a29
blue: usb: remove can_stall, not in jb_mr1_chocolate

Change-Id: Iaecec3ec30e15f5e2f8a400e736299e455d58d87
[WIP] audio: fix audio param

Change-Id: I0fe062b2bb4d30a1f74e64d64277fbca725f947f
intial mint mr1-staging config

Change-Id: I13964ef00c7635284120cec9cc9181a0ad25eff2
msm: board-8960: Change PM8921 SMPS 8 constraint voltages to allow 2.05 V

Hardware characterization has shown that the system operates
without any problem when the voltage of SMPS 8 is lowered from
2.1 V to 2.05 V.  Therefore, change the constraint range for
SMPS 8 to include 2.05 V as a lower bound.

At the same time, change the voltage requests of the two SMPS 8
consumers: acpuclock-8960 and clock-8960 to use the new, lower
voltage value.

CRs-Fixed: 355505
Change-Id: I977d1deea84328a0c0dd93181af04a9435cfa8c2
(cherry picked from commit: 9a81d6c7c32e21721f886a338ca6d80fb5d4a88b)
Signed-off-by: David Collins <collinsd@codeaurora.org>
Input: evdev - fix variable initialisation

Commit 509f87c5f564 (evdev - do not block waiting for an event if fd
is nonblock) created a code path were it was possible to use retval
uninitialized.

This could lead to the xorg evdev input driver getting corrupt data
and refusing to work with log messages like
	AUO-Pixcir touchscreen: Read error: Success
	sg060_keys: Read error: Success
	AUO-Pixcir touchscreen: Read error: Success
	sg060_keys: Read error: Success
(for drivers auo-pixcir-ts and gpio-keys).

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Acked-by: Dima Zavin <dima@android.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Revert "Input: evdev - Add ioctl to block suspend while event queue is not empty."

This reverts commit 4dc43d7079bdae572212368e1d29abea0177c932.
Revert "Input: Use monotonic time for event time stamps."

This reverts commit 5d61887ea1837592ecbe3f5af7b7e4a741b659c5.
Input: add infrastructure for selecting clockid for event time stamps

As noted by Arve and others, since wall time can jump backwards, it is
difficult to use for input because one cannot determine if one event
occurred before another or for how long a key was pressed.

However, the timestamp field is part of the kernel ABI, and cannot be
changed without possibly breaking existing users.

This patch adds a new IOCTL that allows a clockid to be set in the
evdev_client struct that will specify which time base to use for event
timestamps (ie: CLOCK_MONOTONIC instead of CLOCK_REALTIME).

For now we only support CLOCK_MONOTONIC and CLOCK_REALTIME, but
in the future we could support other clockids if appropriate.

The default remains CLOCK_REALTIME, so we don't change the ABI.

Signed-off-by: John Stultz <john.stultz@linaro.org>
Reviewed-by: Daniel Kurtz <djkurtz@google.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Input: evdev - Add ioctl to block suspend while event queue is not empty.

Add an ioctl, EVIOCSSUSPENDBLOCK, to enable a wakelock that will block
suspend while the event queue is not empty. This allows userspace code to
process input events while the device appears to be asleep.

The current code holds the wakelock for up 5 seconds for every input
device and client. This can prevent suspend if sensor with a high data
rate is active, even when that sensor is not capable of waking the
device once it is suspended.

Change-Id: I624d66ef30a0b3abb543685c343382b8419b42b9
Signed-off-by: Arve Hjønnevåg <arve@android.com>
msm: vidc: Allow client to request sps/pps per IDR frame

Expose SET_SPS_PPS_FOR_IDR to allow client request sps/pper per IDR
frame.

Change-Id: I0316d751bd1e0b412972cba9d4d59b142500a51d
Signed-off-by: Deva Ramasubramanian <dramasub@codeaurora.org>
qseecom: Fix failure to go into suspend

When the device tries to go into suspend the freezer process
fails to put the  blocked threads into sleep.
Hence device is failing to go into suspend as the blocked threads
are woken up by suspend signal (and any signal in general).
Replacing wait_event_interruptable() with wait_event_freezable()
allows the freezer process to freeze the blocked threads,
thereby, allowing the device to proceed with going into suspend.

Signed-off-by: Mona Hossain <mhossain@codeaurora.org>
(cherry picked from commit acea1024c91fe7436146b4228645beb2d3a8d39d)

Change-Id: Ie444c4b05d0cb491989928bd5eb4b58e524bd44c
Signed-off-by: Shruthi Krishna <skrish@codeaurora.org>