msm_fb: display: fix incorrect MDP formats components unpack pattern

Many of MDP input formats don't have correct unpack pattern, so image
displayed on screen is not in the actual format set.

CRs-fixed: 339114,337040
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
(cherry picked from commit c5638f898324df37e40e402d208b0e97337d536b)

Change-Id: I66a404db039502d0511cd3d7dc34e81c0eca1d61
Signed-off-by: Gopal G Goberu <ggober@codeaurora.org>
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
msm: kgsl: set the dma_address field of scatterlists

Ion carveout and content protect heap buffers do not
have a struct page associated with them. Thus
sg_phys() will not work reliably on these buffers.
Set the dma_address field on physically contiguous
buffers.  When mapping a scatterlist to the gpummu
use sg_dma_address() first and if it returns 0
then use sg_phys().

Change-Id: Ie5f19986446be4383dfbfffa2534136b592e8e46
Signed-off-by: Jeremy Gebben <jgebben@codeaurora.org>
(cherry picked from commit 582fe31d2719b45fd0accf85bf2351f1a15b97b7)
msm: audio: qdsp5v2: Update PCM driver to use pmem memory (squashed commit)
vidc: Add metabuffer mode support for encoder driver.

Video encoder driver when configured in meta buffer mode,
will allow clients to register buffers in data path.

Change-Id: I23e2cb07386461275da5731134d8aad7df1cd060
Signed-off-by: Gopikrishnaiah Anandan <gopikr@codeaurora.org>
vidc: 720p: Add IDR Frame type support for H264 format

Read IDR frame type from 720p core register set and
propagate it to user space using new IDR frame type
enumeration added in api header file. The IDR frame
type info is used in SYNCFRAME logic for H264 format
in userspace.

CRs-Fixed: 296738
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
vidc: Make more pr_info()s into pr_debug()s

The logging messages in the vdec driver are for debug purposes.
Replace the info printks with debug printks. If desired they can
be turned on individually via

 # mount -t debugfs none /sys/kernel/debug
 # echo -n "file vdec.c +p" > /sys/kernel/debug/dynamic_debug/control

Finer based prints can be done on a line by line basis as well.

Change-Id: I5b6f94e13724036d02c25d1d478d25ca2555dfa2
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
vidc: vdec: Buffer optimization for smooth streaming.

Smooth streaming client has the buffer count optimized
to lower value than profile and level based counts for
H264 decoder. Adding support in driver to take advantage
of lower buffer count to optimize memory requirements
for smooth streaming.

Signed-off-by: Gopikrishnaiah Anandan <gopikr@codeaurora.org>
msm: vidc: Preventing dereference pointers and array out of bounds

Preventing a dereference pointer, and adding logic to prevent
array out of bounds

Change-Id: I8b21e4cb25a3dbb13c907d84c7ea342a12eed468
Signed-off-by: Eduardo Carrasco <cecarras@codeaurora.org>
msm: rotator: provide dst format based on src format (squashed commit)

We must apply the changes from upstream manually since the source file is
located at drivers/video/msm/ instead of drivers/char/.
msm: rotator: move the source to drivers/char/ as upstream did
msm_fb: update headers to match with new QCOM libs
msm: rotator: updated to latest CAF version
pmem: source renamed to be consistent with upstream