msm_fb: display: change ion memory map for mdp mixer2 writeback

One way that mdp mixer2 gets writeback address is to get ion memory fd
from userspace, then mdp driver maps this fd in kernel. When mdp iommu
domain was not enabled, this maps to a physical address. Now after mdp
iommu domain is enabled, the map is changed to an iommu virtual addr.

Change-Id: I461a00cc93169de586565834af4fb9a43949cf95
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
msm_fb: display: Flush pipe registers before staging for Mixer 0 or 1

For Mixer 2, register flush need not be called. Flushing is done
only for pipes on mixer 0 and 1.

Signed-off-by: Ravishangar Kalyanam <rkalya@codeaurora.org>
Change-Id: I54758f79552790de2ad936703ba6140ac57b76c4
msm_fb: display: Fix Toshiba WSVGA panel porch and timing settings

Fix the porch and timing settings for DSI Toshiba WSVGA panel
to enable writeback mode switch efficiently.

Signed-off-by: Ravishangar Kalyanam <rkalya@codeaurora.org>
Change-Id: Ib768d13617470f75ae027970c6ca4779d6b5a367
msm_fb: display: Attach IOMMU for DSI cmd mode in kickoff call

Attach IOMMU call is currently done from DSI cmd mode DMA
update method. Move the attach call to kickoff which enables
it from restore and video paths

Signed-off-by: Ravishangar Kalyanam <rkalya@codeaurora.org>
Change-Id: I06d39e31b3ab1cf797fb655e7e558c1cabd98ebf
msm_fb: display: Enable MDP clock's overlay block during panel on

MDP clock's overlay block is enabled during first update after panel
on currently. This is now moved to panel on to keep clock enabled
right from display on time.

Signed-off-by: Ravishangar Kalyanam <rkalya@codeaurora.org>
Change-Id: Ie201186c1471201874f2eff246486bc4a73b5872
msm_fb: display: Wait for overlay done after DSI Video writeback switch

After writeback mode is switched for DSI Video interface, wait for
overlay done for prefill frame to avoid unnecessary fetches from previous
buffers resulting in page faults.

CRs-Fixed: 372389
Signed-off-by: Ravishangar Kalyanam <rkalya@codeaurora.org>
Change-Id: Iacd3775a718fe8e08404b4d119d447a88b628617
msm: clock-8960: Change source of DSI escape clock to byte clock

Changing DSI escape clock source from PXO to byte clock to add
flexibilty for customers. They can modify the escape clock by
changing the pinfo divider.

Change-Id: I3ad072fc524fe5fae9695a55bba24ce23b97efc7
CRs-Fixed: 361022
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
msm_fb: display: Add panel padding support for active refresh display

Add panel xres and yres padding parameters for active refresh display
interfaces.

Signed-off-by: Ravishangar Kalyanam <rkalya@codeaurora.org>
Change-Id: If8830295814d0e27f49dfffdeb96db63f73809ba

Conflicts:

	drivers/video/msm/mdp4_overlay_lcdc.c
msm_fb: display: Add MIPI DSI 720P Orise panel driver support

Add support to run 720p MIPI DSI Orise panel in both
cmd and video modes

Change-Id: Iefd5594ba2fafe7797378f3297d169ebbce9b963
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
Signed-off-by: Ravishangar Kalyanam <rkalya@codeaurora.org>
msm: display: Change DSI escape clock to byte clock

Changing DSI escape clock source from PXO to byte clock to add
more flexibility.

Change-Id: Ia78093f8b8be6a27c86f3e8db68fa1f4a4d85086
CRs-Fixed: 361022
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
Signed-off-by: Ravishangar Kalyanam <rkalya@codeaurora.org>

Conflicts:

	drivers/video/msm/mipi_chimei_wuxga.c
msm: board: Guard HDMI regulator_get for errors.

Check if regulator_get returns error, if so, handle it gracefully.
If not handle properly, it will lead to crash. Regulator is required
for HDMI HPD which may differ from target to target. So a check for
perticular regulator should be taken care of.

Change-Id: I50507afec331b2a147ce512cf3b81faa92c37200
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
msm: display: Use local HDMI as primary flags for 8960/8064 targets

Replace the global flag for HDMI as primary flag by local ones to
8960 and 8064 targets to avoid compilation issues for separate
target configs enabled

CRs-Fixed: 344144
Change-Id: I545cb46f51ed32e036fc2de3946e8a4b7a9d93e4
Signed-off-by: Ravishangar Kalyanam <rkalya@codeaurora.org>
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
msm: rotator: Add Rotator device & bus scale data for 8064/8960/8930

Add Rotator device & bus scale data for supporting individual
targets 8960/8064/8930

CRs-Fixed: 344144
Change-Id: I105abad23717f1d42861d9808e0e2d41d776e90c
Signed-off-by: Ravishangar Kalyanam <rkalya@codeaurora.org>
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
msm: display: remove framebuffer memory associated with fb1 and fb2

The native fb1 and fb2 framebuffer memory is not used, so the total
framebuffer memory can be reduced to the size only for fb0.

Change-Id: I3e936c7e8dc18f0c70cf13a14eab9d4b8e16c7f2
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
Revert "msm_fb: display: Rename MDP IOMMU context bank names"

This reverts commit 06c0500ae33011d1354dc514dd69f098a1aaf381.

Change-Id: I2b0f1df469c71d48f073bad03e98b1a1f441fd36
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
msm_fb: Provide support for ARGC and CSC for layer mixer 2

MDP 4.4 supports additional layer mixer (LM2) with ARGC and
CSC blocks. Extend existing ARGC and CSC functionality to additional
layer mixer (LM2).

Change-Id: Id9e5d0a80fcd9a6e3b6132b083d8a43450c0efa1
Signed-off-by: Pravin Tamkhane <pravint@codeaurora.org>
msm-fb: display: Tearing issue during video playback

Tearing was observed while playing 1080p H264 videos in
potrait mode. Enabled blt mode check for MIPI command
mode panel as well.

CRs-Fixed: 369365
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
Change-Id: Iac980050e5966db4731240c11e89e1f68118f2b7

Conflicts:

	drivers/video/msm/mdp4_overlay.c
msm_fb: display: Enable mixer1 writeback for video downscale use cases

Underrun occurs while downscaling video data on 8x60. Enable writeback
if video downscale is required.

CRs-fixed: 329630
Change-Id: Ief4b002efd6f4ad9fcfd844325c05de619d47719
Signed-off-by: Mayank Chopra <makchopra@codeaurora.org>
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
msm_fb: display: use spin_lock_bh() when turns on/off dsi_clk

Since dsi clock is accessed by both thread and timer context,
spin_lcok_bh()/spin_unlcok_bh() must be used to serialize accessing
of dsi clock.

Change-Id: Iac80400d871c90413dcbb10a12efc6bc6247e986
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>

Conflicts:

	drivers/video/msm/mipi_dsi.c
msm_fb: display: add dtv_pipe null check before dereferenc it

There are chances that a null dtv_pipe pointer is dereferenced and
system crashes. One such case is unplug HDMI cable while playing
video. So a null check is needed for each dtv_pipe dereference.

CRs-fixed: 355238
Change-Id: I1ff57b00169e217fc5ed98574db7fd49b9319d0a
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>