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>
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>
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>
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>
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>
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: 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>
msm: subsystem_restart: Don't use phase 3 SSR on the SGLTE2

This change has already been done for the SGLTE target.
See commit e4ae75ea79620e3b59859d82aa1809a256e48364. The
current patch extends the change to the SGLTE2 target.
The original commit text follows.

On the SGLTE2 platform, phase 2 SSR is required to address
the dependency between the internal and external modems. The
other subsystems (RIVA, LPASS etc) still need to do an
independent restart. In the absence of a matching restart
order, a request for a subsystem restart on a subsystem will
be treated as an  independent phase-3 like restart, even if
the current restart_level is phase 2. Therefore, don't allow
phase 3 on SGLTE platforms.

Change-Id: I99469883e85f87a3b49846699c4b9d84cd385285
Signed-off-by: Joel King <joelking@codeaurora.org>
Revert "msm_fb: display: free pipe if blt is detected for the pipe"

This reverts commit e29d1b2e70c3d6d8417b2791f62043bcf084b9bb because
of iommu page faults on some targets.

Change-Id: Ia9f9c37720fb23da347eea480ffa55e536231c65
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Revert "msm_fb: display: don't enable blt mode"

This reverts commit aa980658ac73a347fc94108d4fc886860d0c1714 because
of iommu page faults on some targets.

Change-Id: I2b0f801ab00f473dcb3f3918b30ebf594a5a2058
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
msm_fb: display: issue completion when disabling vsync irq

When vsync irq is disabled, vsync_wait_cnt is reset to zero and
completion is issued out as they are done in isr to make sure all
wait_for_completion is released.

Change-Id: I689f0c8cde43404d0caf5bb4644efa6385798d0e
Signed-off-by: Huaibin Yang <huaibiny@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.

* Requires display driver recompilation in ROM

Change-Id: I02fd3c3c7b5ace2e6eec22b2db0284161404a0fc
Signed-off-by: Ken Zhang <kenz@codeaurora.org>
Revert "msm: pm: Add API to enable/disable retention mode"

This reverts commit fdc4e5b

Change-Id: I432691fe188ddfde56b58795b9ca5738aefb2467