msm: mdss: Set correct flush bit for writeback mixer.

Wrong flush bit is being set for writeback mixer which can cause
MDP hang/unexpected behaviour when the mixer is used in line mode.
This patch addresses the issue by setting the correct flush bit.

Change-Id: Ie0c2ee27b1f466164a8fb84f7daae9309b74d1d8
Signed-off-by: Vishnuvardhan Prodduturi <vproddut@codeaurora.org>
mdss: Avoid panel ON commands during boot up for command mode

In command mode, when continuous splash is enabled, we do not
send the panel OFF commands through the SPLASH_BEGIN callback.
Avoid the SPLASH_FINISH callback also for command mode since
panel ON commands are not required to be sent. This avoids
unnecessary warnings during boot up.

Change-Id: Ifc249f259655045ecd799b57e1efb964238c504a
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
msm: mdss: support frame buffer allocation on 8x10

The pan display api is using the frame buffer allocated
from the display driver.  This change is to use the
splash screen memory as frame buffer.

Change-Id: I2560aa644c92145658ac4e873ba6d2e58c5f502a
Signed-off-by: Xiaoming Zhou <zhoux@codeaurora.org>
msm: mdss: set the mdp core clock rate on 8x10

During the kernel initialization, we need to set
rate on the mdp core clock rate.  Otherwise, the
core clock rate is at its minimum, causing display
under-run on large panels.

Change-Id: Idcd69a758cbf3022f8ad6590b021f21dad5972b1
Signed-off-by: Xiaoming Zhou <zhoux@codeaurora.org>
msm: mdss: Fix debugfs string overwrite

If more than one display paths are active, like split display or external
mirroring, and stat debugfs node is read then debug data for only one
display is shown. Fix this by using correct offsets.

Change-Id: Ia8b36eb3105f6df8f096ff544b82cc49c9b31a48
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
msm: display: hdmi: vic search

When looking for vic code, get the one that can
match the basic timing if cannot get the one matches
all.

Change-Id: Id054b1c7586d2bfe420443d94c8d5750c96c64d8
Signed-off-by: Ken Zhang <kenz@codeaurora.org>
msm: mdss: fix IGC access for calibration service

Fix IGC address range access on DSPP and SSPP pipes
for calibration service.

Change-Id: I5601f0da1088ea9c31d98e13d0cc5f9c7e33ce3b
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
msm: mdss: clean up overlay resources properly when display is off

When display is turned off, the clocks are already turned off and
unprepared.  Earlier, when unsetting the overlay resource, we were
trying to re-enable the unprepared clocks.

Change-Id: I36e79e4a0bdbbe35f4474527a09a4da59cbec96c
Signed-off-by: Xiaoming Zhou <zhoux@codeaurora.org>
mdp3: ppp: simplify ppp completion logic

This fixes issue where ppp would no longer process requests
claiming that ppp core is hung, when in fact ppp core was
not active at all.

Change-Id: I257858a61df5b3141d835ad6c6fff78c72bf7cbd
Signed-off-by: Terence Hampson <thampson@codeaurora.org>
msm: mdss: allow re-queue of writeback buffers

When a buffer has been properly processed, client may choose to use sync
fence to acknowledge when buffer is complete. In such cases dequeue is
not necessary, allow this use case by allowing client to re-queue
writeback buffers as long as the buffer has been properly processed
already.

Change-Id: Ibac1eb9710477734e1ee2daf8136085d4439b0d4
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
msm: mdss: initialize write back arguments in kickoff

The kickoff code relies on the fact that write back arguments are zero
initialized to check for available buffer. If it's not zero initialized
it may pick dirty buffer address from stack.

Change-Id: I7309f8fe508640833a182a8ecdb2d3be1797fab7
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>