Commit graph

566962 commits

Author SHA1 Message Date
Clarence Ip
7f66a9d175 msm: mdss: Remove smmu v1 related code
smmu v1 is not supported in 3.18. Remove smmu v1 specific
changes in display.

Change-Id: I9deb060b6d3539acb9ee4b3fa05f491e0fc1db43
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
[cip@codeaurora.org: Resolved merge conflict]
Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23 20:38:57 -07:00
Veera Sundaram Sankaran
3475ec6865 msm: mdss: Include MDSS and cleanup unsupported versions in Kconfig
Add configs necessary to include MDSS hw. Remove panel related
configs and other unsupported MDP versions.

Change-Id: Ie358ca1c8105d99ce4d3aa8b27be34df1b788b1b
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
[cip@codeaurora.org: Resolved merge conflicts]
Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23 20:38:56 -07:00
Terence Hampson
90ae553e66 msm: mdss: Add flag to pass in rotation information
When open session is called, input and output format validation takes
place. In order to properly validate, we need to know if the session
contains rotation. This rotation information is passed using the flag.

Change-Id: Ie8bf4c6639aa0d671ac044a2581132bc97b68242
Signed-off-by: Terence Hampson <thampson@codeaurora.org>
2016-03-23 20:38:55 -07:00
Terence Hampson
b2217c3921 msm: mdss: Add session id to rotator item
Value will be used to validate and identify which rotator
session request item is a part of.

Change-Id: Id62719c4d37c9a2f690cb57fa1ca2826310d1da8
Signed-off-by: Terence Hampson <thampson@codeaurora.org>
2016-03-23 20:38:54 -07:00
Veera Sundaram Sankaran
fc23d209fd msm: mdss: re-factor new rotator flags
Change rot_180 and rot_270 flags to be a combination of few other
flags, as those would summarize the respective operation. This
would adhere more to how hardware behaves and also allows more
combinations.

Change-Id: Ib8e6e9e01710b773284e3ec496c689b8d786502c
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23 20:38:53 -07:00
Xiaoming Zhou
328e4bd174 msm: mdss: add rotation device API
Define the new rotation API for the mdss rotation driver.

Change-Id: Ief25e7e6c7716db8183cb49e41cbd447b7cdfbfc
Signed-off-by: Xiaoming Zhou <zhoux@codeaurora.org>
2016-03-23 20:38:52 -07:00
Terence Hampson
d3b2767d4b mdss: mdp: fast forward msm_mdp.h for 3.14 kernel upgrade
Fast forward msm_mdp.h file for 3.14 kernel upgrade. Commit
history is not essential for future debugging.

Change-Id: Id9525ef3361c7f73b5c341a29e7a3e91b8037fa7
Signed-off-by: Terence Hampson <thampson@codeaurora.org>
2016-03-23 20:38:51 -07:00
Veera Sundaram Sankaran
f94adb7e6b msm: mdss: Replace thulium with msm8996 in display code
Use appropriate SOC name. Also replace all
instances of thulia with kryo.

Change-Id: I3d21e3534fdf113190882c84ee5426ee929da131
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
[cip@codeaurora.org: Always build mdss_mdp_pp_v1_7.c]
Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23 20:38:51 -07:00
Ingrid Gallardo
76dae5e544 msm: mdss: debugfs: xlog: add support to dump registers by ranges
Current xlog dumps the entire registers ranges
mapped in memory. This entire range can be
reduced to only the meaningful offsets to help in
debugging and avoid overflows in the debug buffers.
This change adds support to only dump the registers
ranges specified.

Change-Id: Iecf7f5eaa909b0365ea599ae094c7f184c0ae8b8
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
(cherry picked from commit 899cf5dbc528b13bd488038215356c5bea5b591c)
[veeras@codeaurora.org: Resolve merge conflict in mdss_dsi.c]
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23 20:38:50 -07:00
Huaibin Yang
ebba7cddde msm: mdss: debugfs: xlog: move reg dump function to xlog
reg dump func is specifically used by xlog, so it should be static in
xlog file.

Change-Id: I14570e174b215d7ea5f77f0b333f65956b549222
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:38:49 -07:00
Huaibin Yang
53f3da5050 msm: mdss: debugfs: xlog: fix block names for reg dump
Update obsolete mdss block names to new ones for xlog register dump.

Change-Id: Iae8859c42df45577bfccd5a939669742f8395ca2
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:38:48 -07:00
Huaibin Yang
7a0fc66655 msm: mdss: debugfs: xlog: add debug xlog
When MDSS_XLOG_DBG entries are inserted into code, these entries are
always logged regardless enable status. This helps use xlog in quick
debugging and none of these entries should be merged.

Change-Id: Iebcf6cb7fc32bc77281e2f02a354f35357ff6d88
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:38:47 -07:00
Huaibin Yang
befbe0ce8b msm: mdss: debugfs: xlog: add iommu xlog
Add iommu xlog flags and handlers. MDSS_XLOG_IOMMU is dedicated to
iommu issues. The fault handler, if installed, dumps mdp registers to
ram, dump xlog entries to kernel log and panic the system.

Change-Id: I7d703c5958104fb3dc2c30a7fc1e59508c8d0ca3
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
(cherry picked from commit a3cfbff0abb7ff9f906df76a7ff68007d7f1fc3f)
[veeras@codeaurora.org: Resolve merge conflict in mdss_mdp.c]
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23 20:38:46 -07:00
Huaibin Yang
d86a0d05f2 msm: mdss: debugfs: xlog: fix xlog early crash
xlog entries may be called before debugfs nodes are created, so
spinlock intitialization should be done during compile time.
Use ktime APIs to avoid other crashes during early boot time.

Change-Id: I5dc8e066b56d26934fd4c324c03e5f1ec3b4a6f3
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:38:45 -07:00
Huaibin Yang
4ae0ab18f6 msm: mdss: debugfs: xlog: refactor xlog dump
Make overall dump facility more reliable and more useable for
debugging: write xlog info to stdout; only un-logged and un-dumped
entries will be dumped out each dump; add func line number, pid and
time stamp difference for each entry; add index for each entry dump.
Format of the log is as follows:
name:line=>[entry:timestamp:delta][pid]:params
   Where:
   name: Name of the caller function
   line: Line in the source file
   entry: Index in the circular buffer
   timestamp: time when log was taken
   delta: time difference with previous log
   pid: process id
   params: parameters used to log information
      (these are specific to each log)

Change-Id: I32853ef7e27cc8ac34775ff492d60c801df61dba
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
[cip@codeaurora.org: Use debugfs_create_u32 for xlog panic]
Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23 20:38:45 -07:00
Kuogee Hsieh
6faada7714 msm: mdss: set dsi clock lane to proper state on 8994
For 8994, dsi clock lane may get stuck at hs mode. It
needs manual control of clock lane to avoid it.
Force clock lane to HS mode before kick off and clear
it after completion.

CRs-Fixed: 774612
Change-Id: I8182489d2d5eaf041b4869af71155378dd3aea99
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
(cherry picked from commit 5d9e1ace6123d8f5a1ac8f0eb62e9fd8c841d5f8)
[veeras@codeaurora.org: Resolve merge conflict in mdss_dsi_host.c]
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23 20:38:44 -07:00
Kuogee Hsieh
0aa2dc71b8 msm: mdss: ignore overflow error when sending dcs command
When horizontal line time of BLLP is too short to finish
sending dcs command packet, overflow error is reported
mistakenly. The remaining packet data will get transmitted
at next line. Therefore this overflow error can be ignored.

CRs-Fixed: 769898
Change-Id: I2239bd6bf432a1144f0f5b65bf1d82127dd4cfff
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
2016-03-23 20:38:43 -07:00
Huaibin Yang
33c3002ff1 msm: mdss: debugfs: xlog: enable xlog with different flags
xlog buffer helps capture debug events, however, due to its small
size, one set of xlogs cannot solve all problems. It would be helpful
that when a specific issue happens, only one set of xlogs specific to
that particular issue is dumped and other irrelevant events can be
ignored. Accordingly different event handlers can be registered as
well for different issues.

echo 0x00 > <debugfs>/mdp/xlog/enable -> disable
echo 0x01 > <debugfs>/mdp/xlog/enable -> enable default xlogs
echo 0x80 > <debugfs>/mdp/xlog/enable -> enable all xlogs
echo 0xff > <debugfs>/mdp/xlog/enable -> enable xlogs regardless flags

Change-Id: Id1bf2a6f2009afdc63d74add652ce2722a3173a4
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
2016-03-23 20:38:42 -07:00
Huaibin Yang
26a8df47f4 msm: mdss: debugfs: xlog: dump mdp registers to RAM
Currently xlog provides the capability of dumping mdp registers to
kernel log. This patch adds the option of dumping mdp regs to ram as
well.

echo 0x0 > <debugfs>/mdp/xlog/reg_dump -> disable mdp reg dump
echo 0x1 > <debugfs>/mdp/xlog/reg_dump -> enable mdp reg dump to log
echo 0x2 > <debugfs>/mdp/xlog/reg_dump -> enable mdp reg dump to ram
echo 0x3 > <debugfs>/mdp/xlog/reg_dump -> enable mdp reg dump to both

Change-Id: I767bbd956ac3b1c9e76800bd9d563fc80bd337db
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
2016-03-23 20:38:41 -07:00
Huaibin Yang
1151c7b8c9 msm: mdss: debugfs: xlog: move xlog related variables to local
debug_log is an unnecessary global structure that is actually only
related to xlog debugfs nodes. Those variables that control xlog
behaviors should be in the local xlog file.

Change-Id: I8e2a37e72d849b09e5c8afb8b2170adf9516e215
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
2016-03-23 20:38:40 -07:00
Huaibin Yang
13611e8bcf msm: mdss: fix phy_io base for ldo_cntrl
Due to wrong base io address, ldo_cntrl is not properly
configured. Fix this bug to get suspend/resume working.

Change-Id: I708d645f33a05a0bf8d68be0909c43fc628d293e
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
2016-03-23 20:38:40 -07:00
Anusha Koduru
b6f20f1701 msm: mdss: Avoid NULL pointer access
Validate pointer to avoid NULL pointer access

Change-Id: I47671f0072a61c7025d47da74de13ab66a543064
Signed-off-by: Anusha Koduru <kanusha@codeaurora.org>
2016-03-23 20:38:39 -07:00
Adrian Salido-Moreno
13b9a7e123 msm: mdss: fix wb memory registration optimization
In order to avoid multiple mappings of same buffer handle, we check for
any existing handles that are already mapped within writeback. However
current checks are based on file descriptors, and these may be reused
for a new buffer handle, and in turn we end up having wrong assumptions
of the actual queued buffer while performing the writeback commit.

Fix this by getting the actual ion handle mapped to the file descriptor
and look for this handle instead.

Change-Id: Ib800dc4000ce8353ed16c7e779cda21644696ec8
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2016-03-23 20:38:38 -07:00
Krishna Chaitanya Parimi
1f137a2c70 msm: mdss: add init and deinit calls to notify update ioctl
Adding notify update init and notify update deinit calls which
ought to be called when the notify update thread is being
started and exited in userspace. The need for these is to ensure
that during exit sequence of the notify update thread there is
minimal wait due to ioctl being blocked in driver. The wait
completions will not be reset if deinit has been called and will
need an init call for them to start working. So when we are
exiting the notify update thread, any block that might happen
due to either a concurrent or a later notify update call is now
handled properly so that the block is either returned early or
is not allowed respectively.

Change-Id: I8212bf058285f5929ebc85d41d6bb12b50e388d9
Signed-off-by: Krishna Chaitanya Parimi <cparimi@codeaurora.org>
2016-03-23 20:38:37 -07:00
Aravind Venkateswaran
77437745cb msm: mdss: swap flags for LP1 and LP2 modes
Use FB_BLANK_NORMAL flag for LP1 power mode and FB_BLANK_VSYNC_SUSPEND
flag for LP2 power mode. This better aligns with the definition of
these power modes since display updates are suspended in LP2 power
mode while updates can still occur in LP1 power mode.

Change-Id: Ica132e38dd1d0bb96368a1bbb51143100f0352cc
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
2016-03-23 20:38:36 -07:00
Huaibin Yang
ed28b72bee msm: mdss: add mutex locking when BTA is triggered
Add cmd_mutex when doing s/w triggered BTA to make sure this operation
does not race with DCS commands.

Change-Id: I888e06a8175691938aebc7a51c2c693d582ce23d
Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
2016-03-23 20:38:35 -07:00
Vinu Deokaran
365f1722ff msm: mdss: hdmi: set tmds clock ratio bit if scdc is supported
Set TMDS_BIT_CLOCK_RATIO bit in the SCDC port based on the bit rate
for the current mode. This bit has to be set before the TMDS clock is
turned on.

Change-Id: I315e00a032a1465974431e09ed2918ff353cb6de
Signed-off-by: Vinu Deokaran <vinud@codeaurora.org>
Signed-off-by: Casey Piper <cpiper@codeaurora.org>
2016-03-23 20:38:34 -07:00
Ujwal Patel
eca9b5401e msm: mdss: fix right_blend pipe assignment for validate layer path
When source split is enabled, a layer mixer can have two pipes staged
on a same z_order, or stage. To support this, pipe on the right side of
the blending is recognized as right_blend. Current validate ioctl path
is missing implementation for this use-case which is causing unexpected
behaviour when source split is enabled. Fix this by bringing a logic to
identify pipe as a right blend.

Change-Id: Ia117afbad993d9d60f28f1ea6641b780ba866783
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2016-03-23 20:38:34 -07:00
Dhaval Patel
65ded8d75d msm: mdss: fix ab/ib vote for nrt clients
Invalid port calculation is causing wrong ab/ib
vote on rt(RealTime) and nrt(NonRealTime) clients.
This change fixes it and provides correct ab/ib
vote for nrt clients.

Change-Id: I6b7f63721237b63fa12457b96e47852913597d9f
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:38:33 -07:00
Dhaval Patel
cf5ef3a218 msm: mdss: fix RGB565 and RGBA888 UBWC format config
Invalid stride, format configuration and destination configuration
causes corruption for RGB565 and RGBA8888 UBWC format at
input and output level. This change fixes them for input path
and output path.

Change-Id: I77cc20409bbb7c95fd0f3bdac9e61b305fddc811
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:38:32 -07:00
Ping Li
b27a8bb5bc msm: mdss: Unblock mdp PP features when AD calib mode is enabled
Assertive display calibration mode can co-exist with MDP based
post-processing features, only the backlight changes need to be
blocked when AD calibration mode is enabled.

Change-Id: I9c2932e4fa305a9d53cb4dcca11b877f298b4a23
Signed-off-by: Ping Li <pingli@codeaurora.org>
2016-03-23 20:38:31 -07:00
Ingrid Gallardo
5436b22971 msm: mdss: remove bwc workaround for thulium
HW problem where panic was being asserted
continuously when BWC was enabled and causing
CPU throttling is fixed in thulium, so this
patch disables BWC workaround for this target.

Change-Id: Ie418dcfb75c6af06f3cdfe530da7d78e5d6c8ca8
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:38:30 -07:00
Ingrid Gallardo
5e537fce5f msm: mdss: program Client Driven Prefetch (CDP) for thulium
Program CDP for thulium target as per
recommendation. This disables CDP on source
pipe and WB block when used in rotation
operations for v1.

Change-Id: Ia77f80d15033b20edd64e73f6fe98467aabb88f1
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:38:29 -07:00
Ingrid Gallardo
81db519d3d msm: mdss: add overhead factors to ab bw vote
For the ab calculation, add the overhead
and compression factors for the bandwidth vote.

Change-Id: Id1cb8d7c12e24d7c4dcce145ce0ca00e4966049c
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:38:28 -07:00
Ingrid Gallardo
30a4e6891c msm: mdss: adjust ib bw vote as maximum per-pipe bw
Adjust ib vote to calculate it as the maximum
per-pipe bandwidth of the real time clients.

Change-Id: I1596b7dd8e1304985ac3ab49581d9083c64a2b9d
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:38:27 -07:00
Alhad Purnapatre
c18e5fc4aa msm: mdss: hdmi: Make hdcp enable check look for HDCP 2.2 as well
Currently the HDCP enabling logic checks only to see if HDCP 1.4 is
available. Added support for also checking to see if HDCP 2.2 is available
and enable HDCP encryption if either 1.4 or 2.2 is available.

Change-Id: I84c87ac6cb52025dbab28f2a99c4787bd75ce7bf
Signed-off-by: Alhad Purnapatre <alhadp@codeaurora.org>
2016-03-23 20:38:27 -07:00
Ujwal Patel
9bb028df1e msm: mdss: rotator: return dst format for request match optimization
As per current implementation, every successful OVERLAY_SET IOCTL should
return destination format for that request. Now there is a driver based
optimization where if back to back OVERLAY_SET IOCTLs request same
configurations then driver avoids extra register writes. However this
optimization doesn't return correct destination format which violates the
IOCTL spec and may result in inefficiencies. Fix this by returning correct
destination format for this optimization.

Change-Id: I792e2f44f17bceb1efc7b1d389db84478581c474
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2016-03-23 20:38:26 -07:00
Ujwal Patel
52de12b7ca msm: mdss: rotator: fix synchronization issue with multiple sessions
Current rotator driver allows more sessions than actual number of rotator
hardware. This requires virtualization when number of active sessions are
greater than number of rotators. In the current implementation,
synchronization bug is getting exposed if one rotator has two or more
sessions, all these sessions are actively using shared rotator in
interleave fashion and one of the session is using optimized path where
back to back configuration is same. This leads to unexpected results and
device hang. Fix this by maintaining proper ownership and hand-off when
one session is finished using given rotator and other one picks up.

Change-Id: I1f2e7376a01f248d11253bf5b6153ab236f07b19
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2016-03-23 20:38:25 -07:00
Ingrid Gallardo
65b7b619c8 msm: mdss: move per pipe mdp clk calc to a separate function
Separate the per pipe mdp clock calculation from
the bandwidth calculation within the function
that computes the pipe performance.

Change-Id: I40cb9c786bf32523cbc5982a494e439f586cc43f
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:38:24 -07:00
Terence Hampson
6513b72b54 msm: mdss: Parse wfd mode prior to mdp ctl info
Prior to parsing mdp ctl info we need to parse wfd mode.
When wfd mode is shared we create a virtual ctl within
mdss_mdp_ctl_addr_setup. The default value for wfd is shared;
So we are always creating virtual ctl. If wfd is in fact
not shared the value was updated afterwards and the virtual
ctl never is used.

Change-Id: Ie24f224c9ea9bed1704e8688e97bf61c022ae9fa
Signed-off-by: Terence Hampson <thampson@codeaurora.org>
2016-03-23 20:38:23 -07:00
Ingrid Gallardo
d7e19e0da2 msm: mdss: add support to configure per pipe panic luts
Starting in MDPv1.7, configuration of the panic signal
is per pipe. This needs some specific luts to be
programmed on each pipe. Adding support to configure
these luts, which are enabled and tuned through
device tree.

Change-Id: I8af08e8458f8136e9767ccfea27489ce2976a437
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:38:22 -07:00
Casey Piper
54528ec56c mdss: hdmi: update qfprom offsets
QFPROM offsets have changed on targets with
new HDMI core. Check for the version and
update the offsets respectively.

Change-Id: Ie017571c9291a060c5911b4ba3bc5399d2317c01
Signed-off-by: Casey Piper <cpiper@codeaurora.org>
2016-03-23 20:38:21 -07:00
Ingrid Gallardo
0d82ce80de msm: mdss: add support to configure per pipe qos lut
This change adds support to set the qos lut
for each real time and non real time rotator
read clients.
Qos lut is configurable through dtsi, so it
can be adjusted per chipset.

Change-Id: I423265032c4a618039cdcfdad0a1f963f45ae5c6
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23 20:38:21 -07:00
Naseer Ahmed
e8f1a69da0 mdss: Set initial permissions for CEC write node
Userspace cannot chown this node if read permissions aren't set.

Change-Id: I000ec09a30cf1803f307d96ac387ceb746a4a9e2
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2016-03-23 20:38:20 -07:00
Ping Li
a932f10e62 msm: mdss: Use the correct bl_mfd for panel backlight info
Get the panel backlight info from the correct bl_mfd.

Change-Id: Icc4568eb4ae9f4091f7ccf5f60e97bfd7f745420
Signed-off-by: Ping Li <pingli@codeaurora.org>
2016-03-23 20:38:19 -07:00
Ping Li
0fa49a06e4 msm: mdss: Notify AD only when brightness changes
Previously, any backlight change to panel will trigger assertive
display (AD) feature to conduct screen refresh calls. This will
trigger unnecessary screen refresh if AD is enabled together with
CABL feature. This change modifies the backlight notification
mechanism to notify AD only when the Android brightness level
is changed.

Change-Id: I5647269b9651d3a17d896e4047f01b7a244581a4
Signed-off-by: Ping Li <pingli@codeaurora.org>
2016-03-23 20:38:18 -07:00
Benet Clark
19ac09fff8 msm: mdss: Prevent QSEED scaling on VIG pipe with RGB data
When the VIG source side pipes are reconfigured from YUV to RGB data,
the sharpening/smoothing QSEED block is sometimes still enabled, but
it is only allowed for YUV data. This change adds a specific check if
the source format is YUV before proceeding with sharpening/smoothing
enable.

Change-Id: I5ba39f6910bb41eaed898726c9c1419699371784
Signed-off-by: Benet Clark <benetc@codeaurora.org>
2016-03-23 20:38:17 -07:00
Benet Clark
aa5020f2af msm: mdss: Clear PP pipe resources before copying new userspace config
During the pipe setup function, we copy any PP related parameters from
userspace to the pipe cache. We currently do not clear the cache
beforehand. In cases where the pipe is being reconfigured, stale, invalid
values might still be present in the cache since the last time the pipe
was configured. These values need to be cleared before accepting a new
config.

Change-Id: I0d9a51052bb738f599f386d39cb9de5509aae7ac
Signed-off-by: Benet Clark <benetc@codeaurora.org>
2016-03-23 20:38:16 -07:00
Dhaval Patel
90629d6dad msm: mdss: map writeback buffer to correct context bank
Writeback uses rotation smmu on thulium target for buffer
mapping. Selecting wrong context bank is leading to
writeback failure on this target. This change fixes the
context bank selection for writeback use cases.

Change-Id: I23369bb43cc3fd05457fb003ee58bba21eeaa192
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:38:15 -07:00
Ping Li
8fb38cdf83 msm: mdss: Fix uninitialized return value for compact ioctl function
Initialize the return value before using or returning to user space
to avoid returning uninitialised values to user space.

Change-Id: Iac43744830d725cf69120603befc3e4dd758d031
Signed-off-by: Ping Li <pingli@codeaurora.org>
2016-03-23 20:38:15 -07:00