msm: mdss: Support ARGB1555 and ARGB4444

Add support for  ARGB1555 and ARGB4444 formats in
mdp.

Change-Id: I6000316d177d9988eabcca8f43131e3a9f636961
Signed-off-by: Vishnuvardhan Prodduturi <vproddut@codeaurora.org>
trlte: Change syntax for darwin.
msm: mdss: share fb memory ion fd to userspace

Add new operation request to share ion fd to userspace
for mapping to the frame buffer memory.

Change-Id: I404c73c19e3fffec593ffd32c34e7b1a74a500d8
Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
msm: display: Add pipe type selection in overlay request

Allow user to specify the type when requesting an overlay pipe.
If field is set the pipe type indication in the flags will be
ignored.
Change-Id: Iee51d24b96c7a2a987dc70a439342e6548dfc8fa
Signed-off-by: Vineet Bajaj <vbajaj@codeaurora.org>
Revert "msm: display: Add pipe type selection in overlay request"

This reverts commit 20294e2a015ed2cf31fb9290fc12d5d2e557116f.
msm: mdss: compat ioctl for mdss overlay

Implement an entry point for compat ioctl in mdss overlay driver.
Overlay ioctls that require compat layer translation have been added here.
If the calling user process comes from a 32-bit world, then the compat
ioctl does an appropriate command conversion to keep the existing ioctl
implementation unchanged.  Add PP compat structures to include 32 bit
compatible versions of post-processing structures. This allows addition
of pp compat ioctl layer.

Change-Id: I732fcbc84151b813a02d3b4db20e858d4c51291e
Signed-off-by: Manoj Rao <manojraj@codeaurora.org>
Signed-off-by: Benet Clark <benetc@codeaurora.org>
msm: mdss: compat: get/put retire fence fd in buf sync ioctl

copy retire fence fd in the buf sync structure as a part of
buf sync compat ioctl implementation. This fd is an essential
part of the buf sync implementation that needs to be included
in the compat layer.

Change-Id: If60b5f9115ccb128bc7b56a735b06c31fa0e47f6
Signed-off-by: Manoj Rao <manojraj@codeaurora.org>
msm: mdss: add overlay prepare compat ioctl

Add compat layer for OVERLAY_PREPARE ioctl
implementation in MDSS driver. This allows
for 32-bit user process to call the prepare
ioctl in a 64-bit kernel.

Change-Id: I4effef4e43184b9eeb9054447d99ba9adb5f3857
Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
Signed-off-by: Manoj Rao <manojraj@codeaurora.org>
msm: mdss: compat: avoid overrwriting err code from ioctl

When PREPARE OVERLAY ioctl returns an error code to indicate
reason for failure, the compat layer must not overwrite this error
code with those from compat functions. Userspace processes calling
overlay ioctls rely on error code from driver ioctls, not the error codes
from compat functions for some use cases Ex: falling back to mixed mode
composition on -E2BIG.
Fix this by propagating appropriate error code on failure.

Change-Id: Ib238437be58731724a445f90183511011a6e612c
Signed-off-by: Manoj Rao <manojraj@codeaurora.org>
mdss: compat: suppress unnecessary prints

Some overlay ioctls would fail in order to indicate that a user
request cannot be satisfied due to, say, resource constraints.
Such failures could depend on a particular target's
capabilities. In such cases, it is not fatal to return error.
Suppress printing such failures as errors.

Change-Id: I163d6c21055527a8d5f0adf09af0debc54e47751
Signed-off-by: Manoj Rao <manojraj@codeaurora.org>
msm: display: Add pipe type selection in overlay request

Allow user to specify the type when requesting an overlay pipe.
If field is set the pipe type indication in the flags will be
ignored.

Change-Id: Iee51d24b96c7a2a987dc70a439342e6548dfc8fa
Signed-off-by: Vinu Deokaran <vinud@codeaurora.org>
trlte: Tell the world we need dual_dsi
msm: vidc: Send resolution along with output buffer

Send the resolution along with output buffer to the client
to avoid a race condition where resolution might be changed
multiple times in driver before client requests for updated
resolution.

Change-Id: I8ebb99e3baa04da09f153195a674babcebcfea78
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
ASoC: compr: Disable soft-pause for compress playback

Soft-pause (i.e pause ack after a timeout) adversely affects
audio/video sync during pause/resume use cases leading to some
frame drops. Disable this feature for compress playback.

Change-Id: I3ce444dadf1e4b94c1e8d6f017a1c639b082285f
Signed-off-by: Haynes Mathew George <hgeorge@codeaurora.org>
CRs-Fixed: 636328
ASoC: msm: qdsp6v2: Add support for DS2 Dolby Audio Processing

Add support for Dolby DS2 driver for Dolby audio processing.Dolby
ds2 driver uses ioctl interface to transfer parameters to and from
userspace. The parameters are send on active DAP instance on DSP.
The driver supports set parameter, get parameter and get visualizer
interface.

CRs-Fixed: 661018
Change-Id: Ib5f747eab6d77d80126f58fc45776c11b981e6a6
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
ASoC: msm: qdsp6v2: Add device dependent nodes

Mixer controls to communicate data from userspace to kernel for
audio post processing features where tuning parameters range from
1 through 200kb depending on the end device is not efficient.
Device dependent nodes are added to exchange the huge data blocks
through IOCTL.

CRs-Fixed: 661018
Change-Id: I048136aa9ce4285f0cce9fb67a08fd9c997ead43
Signed-off-by: Subhash Chandra Bose Naripeddy <snariped@codeaurora.org>
Signed-off-by: Krishnankutty Kolathappilly <kkolat@codeaurora.org>
ASoC: msm: qdsp6v2: Fix event status issue for Sound Model V1

Multikeyword supports different sound models. Keyword detection
status for sound model V1 and V2 are different. This caused the
event status for sound model V1 to fail even though the events
were from ADSP were correct. This change fixes the issue of
detecting the status correctly for Sound model V1 and V2 types.

Crs-fixed: 654078
Change-Id: Ia11a4e98813e40e80fd68e458fb9d33a37402035
Signed-off-by: Venkat Sudhir <vsudhir@codeaurora.org>
ASoC: external EC reference

Code is added to support external EC reference. With
this change external reference will be started along
with the multimedia capture.

Change-Id: I209b0dbb9c8f126f4c88cd53a77da719ad89f357
Signed-off-by: Anish Kumar <kanish@codeaurora.org>

Conflicts:
	sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.c
ASoC: Correct the mixer control name

Change the mixer to match userspace mixer control.
Fix the null pointer dereference caused in soc core.
This null pointer exception was found in monkey run.

Change-Id: I0b3ca551fd2c057edd54a9771a13354ce6f0b7d2
Signed-off-by: Anish Kumar <kanish@codeaurora.org>

Conflicts:
	sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.c
ASoC: msm: qdsp6v2: Support 7.1 channel in Proxy

Increase proxy buffering to support 7.1
channels in Proxy. This is required
to support 7.1 WiFi display

CRs-Fixed: 634644

Change-Id: I735754b2c534f304d6b3fd9782e826bd7d5308b4
Signed-off-by: Alexy Joseph <alexyj@codeaurora.org>