Commit graph

566654 commits

Author SHA1 Message Date
Kuogee Hsieh
f74ed544d2 msm: mdss: control both dsi controller's clock atomically
For split display case there has possibilities of race condition
may happen during dsi clocks control between add_vsync and
clokc_off thread which could end dsi clock is turned off
instead of turn on as add_vsycn thread expect. Therefore
clocks control of both dsi controllers should be atomic.

CRs-Fixed: 724861
Change-Id: I537502bad2611769d5323cd05ed50c505af6371a
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
2016-03-23 20:34:31 -07:00
Veera Sundaram Sankaran
fca1e87999 msm: mdss: Added compat utils support for cursor ioctl
For programming the hwcursor through the cursor ioctl in msm8994 needs
the compat utils support to make the data compatible

Change-Id: If4c05e103f90f04a6ac7475b4d3bc584290934ac
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23 20:34:30 -07:00
Chandan Uddaraju
0d64d690b7 msm: mdss: add MDSS version macro for msm8994v2
This change adds version macro for msm8994v2 and
uses this version where ever necessary in the driver.

Change-Id: I20603d98c154c4e414adab6740233507c7b09c7b
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
2016-03-23 20:34:29 -07:00
Veera Sundaram Sankaran
95498f571d msm: mdss: Fix hardware cursor configuration for right mixer
The right mixer for hwcursor was not configured, making it to work
only on dsi0. This change configures the left and right mixers
appropriately based on single/dual dsi.

Change-Id: Ib12589777b3b7a2a202447c89bb079ffb969cf7c
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23 20:34:28 -07:00
Ingrid Gallardo
ea8e9aff9e msm: mdss: avoid color fill call if flag is not set
Current code tries to force a color fill if it does not
find a buffer associated with the pipe, this is wrong
and causes underruns due misconfiguration in the pipe.
This fix modify this behavior to only do color fill
if it is requested through the flags.

Change-Id: I019da850a05a3c26f0a72626f1c442cfdac8733b
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:34:27 -07:00
Ingrid Gallardo
45f8f6e095 msm: mdss: avoid bandwidth calculation for solid color fill
Current code tries to do the prefill bandwidth
calculation for the solid color fill use cases.
This is wrong since in this scenario driver does not
need to calculate prefill bandwidth and this could
cause a kernel panic since smps are not allocated;
add check to avoid this condition.

Change-Id: Ia5c7ec2473121b7c419fa9facb92a4f747cab43c
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:34:26 -07:00
Veera Sundaram Sankaran
c4b78f594f msm: mdss: Fix MDSS smp reserve pixel_ram check
MDP v(1.7) supports fixed SMP. mdp_smp_reserve API should not reserve
any SMP for this MDP version. This change fixes the API call to avoid
smp reservation when fixed SMP is enabled

Change-Id: Idf5594e216115c51f4cb4f7a2ad6ea7b9690b641
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23 20:34:25 -07:00
Padmanabhan Komanduru
4a921c5496 msm: mdss: add support for DSI ULPS state during suspend
For some video mode panels, there is a requirement to go to ULPS
state during suspend. Add support for this feature. Also the DSI
CTRL power module needs to be kept enabled during suspend. This
is needed for the DSI PHY to maintain ULPS state. Add changes to
take care of this also.

Change-Id: I9547725719ef94d31cea81f66896b9cbe47b74e1
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
2016-03-23 20:34:25 -07:00
Zohaib Alam
a5d404445a msm: mdss: Add panel-name in msm_fb_panel_info sysfs node
To support per-panel tuning during run-time, panel name/id needs
to expose to tuning service in userspace, so tuning service can
apply proper tuning configs against different panels detected
dynamically via LK bootloader.

Change-Id: I193bb375495ea0963560ea698881176b52727d62
Signed-off-by: Zohaib Alam <zalam@codeaurora.org>
2016-03-23 20:34:24 -07:00
Ingrid Gallardo
41e567dafb msm: mdss: fix deadlock between commit thread and shutdown
There is a deadlock in use cases where fb shutdown
is called. To avoid this condition we need to
kill display thread before release happens during
shutdown.

Change-Id: I24b03e60179c605a8572b5a011d746002e26ca18
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:34:23 -07:00
Shivaraj Shetty
c8089b0096 msm: mdss: mdp clock changes for msm8909
mdp clocks on 8909 is similar to 8916. Add changes to
take care of this. Also remove dsi_clk and lcdc_clk as
they are not needed for 8909.

Change-Id: I17d9268d99681bb354f2e1803db5ddb38ba97afa
Signed-off-by: Shivaraj Shetty <shivaraj@codeaurora.org>
2016-03-23 20:34:22 -07:00
Chandan Uddaraju
c4abe728b8 mdss: dsi: add support for DSI data lane overflow recovery
Sometimes the DSI lanes can overflow due to the CLK lane getting
stuck at HS state and not transiting to LP state. Add support
for display recovery in such cases for video mode panels.
Add code so that this recovery is done during the active period.

Change-Id: Ib56e7bccb4b3b9525ff0f4c4fca54971610a7326
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
2016-03-23 20:34:21 -07:00
Adrian Salido-Moreno
1e0cb3a69b msm: mdss: synchronize command mode intf stop
In dual DSI command mode case, both interfaces need to finish before the
panel is turned off. In order to make sure these are synchronized, both
interfaces need to be stopped before sending blank/off events to panel
driver.

Change-Id: Ie5bcf5ce53515a5c02696c7be1665c3330be0417
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2016-03-23 20:34:20 -07:00
Vineet Bajaj
a67fb9b0db msm: mdss: fix suspend resume for sharp 2k panel with dst_split
Continuous splash flag for the second dsi interface is not set
to 0 which leads to host init for the second dsi interface not
getting called.

Change-Id: Icba4820922714e3f096e93914f0d3c718c81ae62
Signed-off-by: Vineet Bajaj <vbajaj@codeaurora.org>
2016-03-23 20:34:19 -07:00
Shalaj Jain
085f3fb830 ion: Remove secure and unsecure buffer APIs
These APIs are deprecated as securing and unsecuring for secure
buffers is done on allocation and free respectively by the secure
heap layer. Clients don't have to call these explicitly.

Change-Id: If88cd1c47cba346446ebdcad494850b54ba954ab
(cherry picked from commit 171909b3ee7af285d939a8c384be64605d817716)
[veeras@codeaurora.org: Done as part of 3.18 upgrade
	Remove files from commit, as its not related to display
	drivers/media/platform/msm/vidc/msm_smem.c
	drivers/media/platform/msm/vpu/vpu_resources.c
	drivers/media/platform/msm/wfd/enc-venus-subdev.c
	drivers/media/platform/msm/wfd/mdp-5-subdev.c
	drivers/staging/android/ion/msm/msm_ion.h
	drivers/staging/android/ion/msm/secure_buffer.c]
Signed-off-by: Shalaj Jain <shalajj@codeaurora.org>
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23 20:34:19 -07:00
Jeevan Shriram
642f820a27 msm: mdss: reset pixel extension flag if validation fails
While validating the pixel extension values, reset the pixel
extension flag in case of failure. If this flag is not reset,
driver will programm the wrong configuration into hardware
registers in the commit ioctl.

Change-Id: I6fb90ca331f39e704a8aa915a04b6be776bcff55
Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
2016-03-23 20:34:18 -07:00
Padmanabhan Komanduru
491cc3abe5 msm: mdss: support VRR when destination split is enabled
When destination split is enabled, we have a single control path
and two interface timing engines. Add changes to support variable
refresh rate (VRR) using vertical porch method for these cases.

Change-Id: Iad78c2282e7620454eddf839ed94618731b9621b
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
2016-03-23 20:34:17 -07:00
Padmanabhan Komanduru
ccd8eda7dc msm: mdss: correct the flush bit for TIMING_2 interface for 8939
On 8939, the flush bit for TIMING_2 interface is BIT-31 whereas,
it is BIT-29 for other targets. Add change to take care of this.
Also the CTL flush bit for timing interfaces should be based on
ctx->intf_num variable rather than ctl->intf_num. This is to
handle cases related to destination split.

Change-Id: I8c750714ca931341e179057f5c53edce0ad2803e
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
2016-03-23 20:34:16 -07:00
Vineet Bajaj
347712d7da msm: mdss: fix the RGB666 PACK_ALIGN setting for dsi
For RGB 666 panel format on DSI, a change has been made earlier to set the
alignment to MSB. This was causing color corruption on EDP panel as it
requires LSB alignment. This fix is to set the MSB alignment for RGB666
format only on DSI panels, so that it doesn't affect EDP.

Change-Id: If07b915bb30b00ff1824c7c662bbf4db8a217a6b
Signed-off-by: Vineet Bajaj <vbajaj@codeaurora.org>
2016-03-23 20:34:15 -07:00
Jeevan Shriram
553db0202e msm: mdss: do register programming only when parameters have changed
Add a check to compare whether parameters have changed from previously
set parameters and only then do reprogramming of structure. This can
save some time by not needing to reprogram the hardware and makes it
easier to debug by showing logs only when there are some changes in
parameters.

Change-Id: Ic26db2906358594fa6475010df6d6e05bc0cb4ad
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
2016-03-23 20:34:14 -07:00
Shivaraj Shetty
2ca53b1502 msm: mdss: mdp version and iommu domain name update for ferrum
Update mdp version for ferrum which is MDP3.05. Also align the
iommu domain index for mdp3 with mdp5 as DSI 6g uses this.

Change-Id: I89d5b6daaf76c7fa9a4a077d83800b8bba0d4942
Signed-off-by: Shivaraj Shetty <shivaraj@codeaurora.org>
2016-03-23 20:34:13 -07:00
Kuogee Hsieh
053474e9f4 msm: mdss: add 5v-boost-gpio to dsi panel node
Certain DSI panels need 5v boost gpio to be configured
to work. Add support to define and enable 5v boost gpio as a
panel property. These panels in older targets were relying on
the platform enable gpio to enable the 5v boost on the panel.
This maintains back compatibility for those targets which use
the same panels.

Change-Id: I0410a83044e17648e67a9e8556c5620c75472e62
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
2016-03-23 20:34:13 -07:00
Aravind Venkateswaran
97d6f58c1e msm: mdss: hdmi: notify audio switch device only for CEA resolutions
Upon successful connection, audio should switch over to HDMI only for
CEA resolutions. In the current implementation, when HDCP authentication
succeeds, the audio switch device is notified irrespective of the
selected resolution even though no audio related setup is done. This can
lead to unintended consequences during video playback. Fix this by
notifying the audio switch device only for CEA resolutions.

Change-Id: If1372c0d6171d6d8091a768462043bffc41109d1
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
2016-03-23 20:34:12 -07:00
raghavendra ambadas
8f9568b4a0 msm: mhl: sii8334: Fix null pointer dereference at power off
Check for null pointer before disabling the regulators.
During cable connect/disconnect and suspend/resume check for
previous power state of mhl to avoid enabling/disabling gpio's
and regulators twice.

Change-Id: I44dc51122da4630974147b829236cb39c1ad54b0
Signed-off-by: Raghavendra Ambadas <rambad@codeaurora.org>
2016-03-23 20:34:11 -07:00
Ujwal Patel
6810e00992 msm: mdss: fix source split issues with base layer
When source split is enabled, all the layers residing on right
layer mixer (LM) have their dst_x offset relative to left LM's left top
co-ordinate except base layer. Base layer is a special case where it
doesn't abide by this HW rule and to make it work when source split is
enabled, either dst_x of base layer on right LM needs to be relative to
right LM's left top or base layer needs to be staged on both LMs. Since
later approach doesn't fit well with other use-cases, use the first
approach.

Change-Id: Ifa36cdf26f6baf68723d0e0ccad6cad089e8bedb
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2016-03-23 20:34:10 -07:00
Adrian Salido-Moreno
ee752ac5f3 msm: mdss: restore secure config after toggling gdsc
After coming out of mdss power collapse, need scm call to restore secure
configuration and allow access to protected hardware registers.

Change-Id: Ie1294e37674bb8e9065e438e1c1a2deee80d49e0
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2016-03-23 20:34:09 -07:00
Padmanabhan Komanduru
9e6ab83e96 msm: mdss: clear RDBK_DATA registers before every read command
Currently, we clear the RDBK_DATA registers after we perform
every read. This is to clear the read count in the register so
that the count starts from zero for the next read. But, the read
count can increment for non-read use cases as well such as
non-read BTA, error conditions of non-read commands. Hence, clear
the RDBK_DATA registers before every read.

Change-Id: I1197451f5ca42e9235a81d256f075c2c3b8cc05c
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
2016-03-23 20:34:08 -07:00
Shivaraj Shetty
cb838c2110 msm: mdss: Use the common interface for irq handling for mdp3
mdss provides a common interface for handling the interrupts.
Use this interface for mdp3 and dsi v2.

Change-Id: If9ca804359210211e037311a5de89666653d0a9a
Signed-off-by: Shivaraj Shetty <shivaraj@codeaurora.org>
2016-03-23 20:34:08 -07:00
Ingrid Gallardo
75f891685a msm: mdss: fix split display configuration
Split display configuration requires that lower
and upper control registers get programmed accordingly.
This change fixes a configuration bit which can cause
page faults if the timing engine gets flushed after enabled.

Change-Id: I5b5112f36ee3855a81632eab495c94d96893bdfa
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:34:07 -07:00
Shivaraj Shetty
5f96bd289b msm: mdss: Add bus/bandwidth related changes for ferrum
Ferrum has one AXI port of width 128 compared to 8x10 which had two
AXI ports of width 64. Add changes to take care of this.

Change-Id: I8644769d2133f42cb0602b6a4cc726772e233aec
Signed-off-by: Shivaraj Shetty <shivaraj@codeaurora.org>
2016-03-23 20:34:06 -07:00
Sandeep Panda
05d6044951 msm: mdss: Support iommu version v2 on MPD3
Ferrum uses iommu version v2, but where as MDP3
driver is based on iommu version v0. So this code
change adds support for iommu version v2 in MDP3 driver.

Change-Id: I754b46a5faf2e22e863bb6d077cc66f4a8e28ece
Signed-off-by: Sandeep Panda <spanda@codeaurora.org>
2016-03-23 20:34:05 -07:00
Ingrid Gallardo
c4501255d6 msm: mdss: fix to reduce rotator bandwidth
Rotator path needs to consider 60fps whenever
traffic shapper is not enabled. Add change
to use this frame rate if traffic shaper is
not in use.

Change-Id: I70a28a36be4894e4a8874bcda5fb23363ca843cc
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:34:04 -07:00
Ingrid Gallardo
6892685c74 msm: mdss: consider memory controller channels for bw vote
Add property to sepecify the number of memory controller
channels. This property is used by the driver to
reduce the display bandwidth vote by the number of
channels.

Change-Id: Id8fbdc2cac532569627fd6b4c0bf4e71061f6673
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:34:03 -07:00
Dhaval Patel
684b3e4579 msm: mdss: fix panic signal support for RT interfaces
Wrong interface check in commit
2ab750c344d81b65e6b62684b127af5b6ba2f9b0 (support
danger safe signal per pipe) enables panic signal
for pipes connected to Non-RealTime(NRT) interfaces
instead of RealTime(RT). This inverts danger-safe
logic in MDSS driver. This change fixes the panic
signal support for RT interfaces.

Change-Id: If4bb363e312b25621b283a2dca429e88d14d5f84
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:34:02 -07:00
Ingrid Gallardo
3ee962653b msm: mdss: fix race condition between commit thread and power off
There is a deadlock in use cases where the power off
is called concurrently with the overlay kickoff from
different threads. To avoid this condition, during
power off sequence we first make sure to stop the
fb display thread before the power off sequence is
handled.

Change-Id: I708143206b914f6f72c440c4dc3a1c73fceea6b2
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:34:02 -07:00
Jayant Shekhar
71c3d682f9 msm: mdss: Prevent backlight update during continuous splash
Store backlight level during continuous splash transition and
update the same in first commit. This ensures the backlight
is restored. Change prevents IOMMU page faults seen during
continuous splash due to backlight update commands sent during
continuous splash.

Change-Id: Ib09d90d7cf8020fcceb5f04d1750f59fd648be3d
Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>
2016-03-23 20:34:01 -07:00
Kuogee Hsieh
7a88704ea6 msm: mdss: add pwm back light support
Add pwm back light support through pmi gpio and
lpg channel.

Change-Id: I33f321ee67b739209bd40b08ae0e3d4be0cdf9d4
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
2016-03-23 20:34:00 -07:00
Siddhartha Agrawal
164b5e2e36 msm: dsi: Do not divide porch parameters when FBC is enabled
Horizontal porch values for DSI were set incorrectly when
Frame-Buffer Compression(FBC) is enabled. This fixes incorrect
DSI clock frequency calculations when FBC is enabled.

Change-Id: Iba9c3fc193148e3dcb31f1c11a37ae120e8707d1
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
2016-03-23 20:33:59 -07:00
Vikram Mulukutla
7507509915 mdss: mdp: Add support for the new scm_call2 API
The scm library has added support for a new secure world
interface that is more aligned to the ARMv8 SMC calling
convention. Use the new API while maintaining backward
compatibility.

Change-Id: I152cf98a9a434430ce7e615227b252c6bd9a12e8
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
2016-03-23 20:33:58 -07:00
Ping Li
0e2fd71526 msm: mdss: Upgrade and fix AD implementation
Clean up the ad lock and bl_lock to avoid potential deadlock, and
remove no longer needed code for assertive display, including extra
AD parameter setup triggered by backlight change, auto backlight mode
support. Also change the AD backlight linearization LUT from 8 bit to
12 bit values and upgrade the mapping from point to point mapping to
piecewise linear mapping.

Change-Id: Iac4e3de0f96f24ece4220dc740d781324265ffa8
Signed-off-by: Ping Li <quicpingli@codeaurora.org>
2016-03-23 20:33:57 -07:00
Siddhartha Agrawal
72d3010756 msm: mdss: Do not divide horizontal porches when fbc is enabled
MDP was dividing the porch values for Frame-Buffer Compression(FBC) by
the compression ratio incorrectly. Only the x-res needs to be divided.
This fixes the mismatch of timing values between DSI and MDP.

Change-Id: I8c57d807ac9d2b451031641da7971b4c33a66a36
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
2016-03-23 20:33:56 -07:00
Jayant Shekhar
f6c02f4c19 msm: mdss: Fix mem leak during WFD session
WFD Buffers are not getting freed as the WRITEBACK
TERMINATE ioctl is returning early. Remove early
return such that writeback terminate executes and
free the buffers.

Change-Id: I1d5b419ad2dcf863ade1be21c0fbe7d944317005
Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>
2016-03-23 20:33:55 -07:00
Zohaib Alam
30a0116076 msm: mdss: Fix the issue of recovery from DCM state
In the QDCM tool, toggling from DCM state to DTM state fails
because system unblank doesn't happen successfully. The root
cause of the issue is at the DCM_BLANK, the overlay_off is called
before setting the panel_power_state to OFF, due to which
overlay_off doesn't suspend properly. Therefore, rearrange the
order to fix the problem.

Change-Id: I130fe711dc0d679d8205d22a9027d1c179ed49d5
Signed-off-by: Zohaib Alam <zalam@codeaurora.org>
2016-03-23 20:33:55 -07:00
Jeevan Shriram
d0966f5885 msm: mdss: update the clocks for slave controller
While updating refresh rate through dynamic fps node,
clock calculations are still needed for the slave controller
and enablement of clock for slave controller is not needed.
This change fixes clock updation of slave controller with
dynamic fps feature enabled.

Change-Id: Ibabe9bddba0633cc9a3441207f39a2f3fa7a8f71
Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
2016-03-23 20:33:54 -07:00
Jeevan Shriram
a3888ae72d msm: mdss: update panel info node with dynamic fps parameters
Update the panel info node with dynamic fps feature parameters
for userspace to use. Also, expose minimum and maximum refresh
rate supported by the panel through panel info node.

Change-Id: I0f540faf8fabf951d03f2211e4fbbc9a7e71f457
Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
2016-03-23 20:33:53 -07:00
Kuogee Hsieh
9013264c39 msm: mdss: return a more meaningful value for dsi dcs command tx/rx
Return positive value (number of bytes sent or received) and 0
for failed cases for DSI command Tx and Rx functions for
consistency reason. Also update the return values of the APIs
that are dependent on the tx/rx functions.

CRs-Fixed: 704825
Change-Id: I6e8862c6987ee581f3baa7dce40da4e701cfaa2e
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
2016-03-23 20:33:52 -07:00
Padmanabhan Komanduru
75742ecbe8 msm: mdss: avoid padding bytes during DSI commands rx
Currently, for long read response commands, we expect padding
bytes from the panel. However, there might be some panels which
do not support this. Hence, avoid padding bytes during DSI commands
rx and do honest request for reading bytes from the panel. Also due
to this issue, during multiple read requests (expected rlen > 10),
there is possibility that we end up reading same data byte multiple
times and storing it in the rx buffer. Add support to skip the
duplicates by updating the rx data buffer properly.

Change-Id: I2e482924f7275b63d023c947f4a4f27678522e5a
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
2016-03-23 20:33:51 -07:00
Padmanabhan Komanduru
f3263cd2d5 msm: mdss: handle DSI command rx for less than 8 bytes requested
Currently, for long read response commands with rlen less than
8, there are padding bytes being expected to be sent by the panel.
However, there might be some panels which do not support extra
padding bytes. Due to this, the read response might not be stored
in the first byte of the rx buffer.

The RDBK_DATA_CTRL register is available from DSI6G v1.1.0 and
above. Make use of this register to check the number of bytes
returned by the panel. Based on this, calculate the offset of
the first valid byte of the response in the rx buffer. For
targets which do not have this register, calculate the offset
based on the software state of the read length variable.

Change-Id: I94d3f6d7a453f925bdfd967cdb23cf6aab1ac3a8
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
2016-03-23 20:33:50 -07:00
Padmanabhan Komanduru
72454981c6 msm: mdss: avoid DSI read commands with rlen value of zero
The minimum value of parameter for Maximum Return Packet Size
command before DSI command rx should be 1. Avoid any DSI read
commands with rlen value of zero.

Change-Id: Ieaf8d3f478047e726888f29db2838dbb7196d57a
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
2016-03-23 20:33:49 -07:00
Padmanabhan Komanduru
b3cf731350 msm: mdss: update the programmable line value during VRR
Update the programmable fetch start line register during variable
refresh rate (VRR) operations. This is needed since the vertical
front porch value changes when there is a change in fps. Also, do
not perform fetch start configuration during boot up when
continuous splash screen is enabled. The feature will be enabled in
LK. This is needed for proper VRR operations until first suspend
resume.

Change-Id: I5c82bc520da53db958ad0fad4217f00d92a25cae
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
2016-03-23 20:33:48 -07:00