msm: kgsl: Allocate space in ringbuffer for EOF commands

When userspace passes end of frame (EOF) flag, ringbuffer is
inserted with EOF marker commands. Allocate ringbuffer space
for EOF marker commands.

CRs-Fixed: 469807
Change-Id: I7de8d1b81d358a8d8753ac84fbdceddad27bb17d
Signed-off-by: Tarun Karra <tkarra@codeaurora.org>
msm: kgsl: Add barriers to GPU fault tolerance memory reads

In GPU fault tolerance When reading from memstore add
memory barriers. This ensures memstore reads are
completed and makes GPU fault tolerance code robust.

CRs-Fixed: 469807
Change-Id: Iefb950ae2647eb8ae16bfb9a8d7ee9885636d920
Signed-off-by: Tarun Karra <tkarra@codeaurora.org>
msm: kgsl: Prevent fault tolerance memory free twice

There is a possibility of fault tolerance data to be freed twice
if fault tolerance fails. Do not free the data when the data allocation
fails, take the decision to free the data only at the end of
fault tolerance.

CRs-Fixed: 469807
Change-Id: Ifcc9a75e70440be6471b32d8413f4faa01a9ee47
Signed-off-by: Tarun Karra <tkarra@codeaurora.org>
dvb: mpq: Secure demux log level

Add secure demux API allowing to set log level verbosity.
Log level can be set from user-sapce via a debugfs entry.
Default is no logging.

Change-Id: I5cfa4533ade061dd2a0663252cea72779018f91d
Signed-off-by: Gilad Broner <gbroner@codeaurora.org>
media: dvb: Add proper protection when calling SW filter packet

dvb_dmx_swfilter_packet function did not properly lock against
dvb-demux data-structure like the rest of dvb-demux SW filtering
functions.

Change-Id: Id287f660773f93aeac8b0fc01df6f995b72ac93b
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
USB: Dump usb info during memory access violation

USB is accessing an invalid memory which results in EBI error.
To find the endpoint information and the address being accessed,
dump all the usb request info required for debugging memory access
violation issue from APP's proc using the trace framework.

CRs-Fixed: 430455
Change-Id: Ie99c31f43dfa9858a9ec2756903574888629e341
Signed-off-by: Chiranjeevi Velempati <cvelempa@codeaurora.org>
Signed-off-by: Rajkumar Raghupathy <raghup@codeaurora.org>
msm: board-8064: Update KS8851 regulator names

Update the regulator data for the KS8851 SPI Ethernet
controller to reflect the naming conventions imposed by
device tree on other targets.

Change-Id: I5d5ab3fc2aebac39a8a8462468c6ec4729ac4469
Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org>
ASoC: wcd9304: Include all registers to debugfs dump.

The current dumps only include a small set of registers usefull
in most use cases. Make it exhautive by including the complete
register set.

CRs-Fixed: 402905
Change-Id: I4f826dc53f3cf9c8e0d520d7f1eb872f71c357de
Signed-off-by: Asish Bhattacharya <asishb@codeaurora.org>
ASoC: msm: Add support for external EC reference point

Add mux to sound card topology with output of mux routed
to CS voice uplink front-end as way to indicate external
EC reference point. Currently, MI2S_TX is the only
AFE input port defined for this MUX.

Change-Id: I0c81c579cc01bf92e743eda0e8dee15be2a8c01f
Signed-off-by: Venkat Sudhir <vsudhir@codeaurora.org>
msm: mdm: set the flag to send the mdm shutdown sysmon message

Enable the flag in the platform data of the mdm driver to send
the shutdown message to the mdm.

CRs-fixed: 401598
Change-Id: If8a8f8d3a5eab274c7bd9dff2b927ba5a7794dd8
Signed-off-by: Joel King <joelking@codeaurora.org>
msm: camera: Change AEC register settings for ov8825 for low fps

AEC register settings are changed to fix low fps when preview
starts in ov8825 sensor

CRs-Fixed: 472915
Change-Id: Idbe2eae264f327eb79b5123586dedb5ebd601cd2
Signed-off-by: Raju P.L.S.S.S.N <rplsssn@codeaurora.org>
msm: camera: Update register settings for ov9724 sensor

Register settings for ov9724 sensor updated to correct
improper colors in preview

Change-Id: Ie8644d7df80bc34469fbeab661403eeb774468b1
CRs-Fixed: 472906
Signed-off-by: Raju P.L.S.S.S.N <rplsssn@codeaurora.org>
msm: rotator: sync point support

Add MSM_ROTATOR_IOCTL_BUFFER_SYNC ioctl interface.
Rotator will create a timeline for each session at START, wait for
input fence and create released fence in this ioctl call,
signal the timeline after rotation is done.

Change-Id: I3738f8287d804ccd94e0a16ac0afb8b41b299c75
Signed-off-by: Ken Zhang <kenz@codeaurora.org>
msm: rotator: non-blocking rotate

Send request to a work queue and return right away.
Work queue will go through the commit queue to do the
rotation. wait_for_finish can be set to true to make
rotation go back to blocking.

Change-Id: Ifc2e36bd24d9681d42105f4ccbb62a8777af2a6c
Signed-off-by: Ken Zhang <kenz@codeaurora.org>
USB: ci13xxx_udc: Don't free dTD immediately after active bit is cleared

USB controller may access the dTD one more time after clearing the active
bit in token field.  There is a possibility of software freeing it in this
window.  When this happens, USB controller may access incorrect memory and
leads to system level issues.

dTDs are freed when requests are freed by function drivers during
disconnect or unbind.  The above race condition will come into effect only
for zero length packets.  dTDs are dynamically created for sending zero
length packets on IN endpoints.  These dTDs are immediately freed after
active bit is cleared.  Defer this to next dTD completion.  It is safe to
assume that hardware will no longer access the previous dTD when the next
dTD is completed.

Don't allocate/free setup status phase and GET_STATUS data phase requests
dynamically.  Use  one request for both cases and allocate it during bind.

CRs-Fixed: 474557
Change-Id: I5d41c310e1bb35d93b5af7d90a24ce5aab24f5f9
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
msm:board-8064: Correct ab/ib values of 1080p turbo vectors

This change corrects the ab/ib values of turbo vectors
intended for 1080p encoder.

CRs-Fixed: 473197

Change-Id: I172b241e7b8b7b2d8600647ac35af78ed928e052
Signed-off-by: Rajeshwar Kurapaty <rkurapat@codeaurora.org>
msm: kgsl: a2xx: Check the right interrupt status bits

Check the actual interrupt status bits in a2xx_irq_pending instead
of reading the mask registers which were always set and returning
true. Troutslap for the original author (me).

CRs-fixed: 467381
Change-Id: Ic0dedbada1c5fa64548221718c1eaf9b6eaaa1e8
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
msm: display: plane alpha support

Clean up the blending rule to follow blend_op set from hwc.
Use modulate alpha for plane alpha when it is not 0xff.
Keep backward compatibility if blend_op is not set.

Change-Id: I02fd3c3c7b5ace2e6eec22b2db0284161404a0fc
Signed-off-by: Ken Zhang <kenz@codeaurora.org>
msm: display: Reduce excessive logging in case of WFD.

In case of WFD, excessive logging is happening when writeback
buffer is not available. This fixes the issue.

Change-Id: Ic3ccb5fc00043d2553413fbe4d628ded37348f0d
Signed-off-by: Vishnuvardhan Prodduturi <vproddut@codeaurora.org>
ASoC: wcd9304: Enhance OCP reporting logic

CODEC has over current protection(OCP) finite state
machine for both left and right headphone while CODEC
driver tries to delay reporting of OCP event after
CODEC reporting OCP two times. Current CODEC driver
implementation results in unlocking one of headphone
power amplifier when OCP reported on both headphone.
Change the behavior to report OCP event for a give
headphone immediately if OCP already occurs on opposite
headphone.

Change-Id: I49d062f7c7f1a99390e82660c8f3e538a0a3cd56
CRs-fixed: 471963
Signed-off-by: Patrick Lai <plai@codeaurora.org>