Commit graph

3227 commits

Author SHA1 Message Date
Benet Clark
8b9d016850 msm: mdss: Redefine Gamut Mapping v1_7 Fine Mode table size
The table size definition was incorrectly defined previously, which
caused the Gamut Mapping tables to be missing values. The table size
definition has been redefined, in order to include the missing values.

Change-Id: I0adf546c52c40f7a251f3aa977864ba116822d93
Signed-off-by: Benet Clark <benetc@codeaurora.org>
2016-03-23 20:39:00 -07:00
Ian Maund
6d1a9721f4 include: media: Add the msm_rotator api header file
This header file is required by userspace components for compilation.

Signed-off-by: Ian Maund <imaund@codeaurora.org>
[cip@codeaurora.org: Resolved merge conflict]
Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23 20:38:58 -07:00
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
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
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
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
Vinu Deokaran
dd24186a13 msm: mdss: hdmi: add new formats defined in cea-861-f
CEA-861-F specification defines new video formats which are supported in
the hdmi 2.0 specification.

Change-Id: I5bf017835ea7c5e472e91c0d663f6f0083a87854
Signed-off-by: Vinu Deokaran <vinud@codeaurora.org>
2016-03-23 20:38:08 -07:00
Ajay Singh Parmar
ac448902cf msm: mdss: hdmi: optimize DTD resolution parsing
DTD (Detailed Timing Descriptor) provides full resolution timing
details. Currently we compare these details with our resolution
data base to find a match. This is not needed as DTD has complete
details. Once parsing of resolution is done, just add this as a
new resolution.

Change-Id: I0d6c101c96a6bc8c0ff8fe63c17bf233d52dad7f
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2016-03-23 20:38:07 -07:00
Jeevan Shriram
341887ec2d msm: mdss: fix issue in calculating decimated dimensions
Width and height are not properly calculated when decimation
is involved. When there is scaling on a pipe, the required number
of pixels are wrongly programmed resulting in pipe hangs and
leading to TLB SYNC issues. This change handles proper
calculation of decimated width and height.

Change-Id: Iadc4b201b32dda3dba6afe23070f349677be417c
Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
2016-03-23 20:37:59 -07:00
Terence Hampson
a66a7393a5 msm: mdss: Remove union for output buffer and retire fence
In order to provide more reusable code, and prevent unnecessary
debugging removing union as memory saving is insignificant.

Change-Id: I5da68c64c0bf09157738fbec1feb6adde5af42a2
[veeras@codeaurora.org: Resolve merge conflict in msm_mdp_ext.h by
retaining the version in this file]
Signed-off-by: Terence Hampson <thampson@codeaurora.org>
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23 20:37:36 -07:00
Ajay Singh Parmar
7c13fb1127 msm: mdss: hdmi: add new resolutions at runtime
EDID (Extended Display Identification Data) may contain some
resolutions in DTDs (Detailed Timing Descriptors) which are not
in the supported resolutions list. In such cases, every time
when the HDMI cable is connected, parse all the resolution data
from DTD and populate the resolution list with the newly found
resolution. This way any resolution found in DTD can be supported
subjected to hardware limitations.

Change-Id: Ib2223e34820a70da0b03b8ac39b170cf6b3e65b5
[veeras@codeaurora.org: Resolved merge conflict in msm_hdmi_modes.h
by retaining the version of this commit]
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23 20:37:31 -07:00
Ajay Singh Parmar
0b544625b5 msm: mdss: hdmi: give multiple resolution info using sysfs node
Provide complete resolution details in a sysfs node "res_info"
limited to PAGE_SIZE. Different modules can query for multiple
resolution details based on the resolution ids received from
EDID of the TV.
In case resolution details exceed PAGE_SIZE, reuse res_info to
get remaining timing details by provide page details.

Change-Id: I3e8e8d4de29f78d22273b3fb8ff6a059a8cb19e1
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2016-03-23 20:37:26 -07:00
Ajay Singh Parmar
33c63a3a5d msm: mdss: hdmi: optimize resolution data base
HDMI has a large number of resolutions supported and currently
for all supported resolutions, related modules maintain static
tables which are populated at boot time. This results in huge
static memory usage. Also, it limits the system to support only
the define resolutions.

Remove static table which stores all the resolution details.
Get individual resolution details on need basis. Also, remove
the dependency to support only the defined resolution. HDMI driver
can support any non standard resolution within the allowed range.

Change-Id: I0972bc3a0ab96051ea642d685d10c4e5535b7051
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2016-03-23 20:37:25 -07:00
Vinu Deokaran
b19a1c8b15 msm: mdss: hdmi: add scrambling support for hdmi driver
Add support for enabling scrambler on hosts that support scrambling.
Scrambling is a new freature added in HDMI 2.0 specification to reduce
EMI interference at higher clock frequencies. Scrambling is enabled for
HDMI modes that have pixel clock greater than 340MHz. For lower pixel
clock frequencies, scrambling is enabled if sink supports scrambling at
lower frequencies.

Change-Id: I3aa224a32e768e2754a9e056a58ca90808a26ec6
Signed-off-by: Vinu Deokaran <vinud@codeaurora.org>
2016-03-23 20:37:25 -07:00
Gopikrishnaiah Anandan
5a4feccb48 msm: mdss: ioctl to get pp feature version
Some of the PP(post processing) features in MDP might be upgraded when
new revision hardware is released. Clients of driver were relying on
MDP revision to decide which version of the PP feature is supported.
With MDP revision approach the client of driver needs to maintain a
mapping between MDP revision and PP feature version. This change
exposes ioctl to driver clients to query PP driver version of feature
instead of maintaining mapping.

Change-Id: I73f465400112445070c75f65f6ffd87c03eef2fb
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2016-03-23 20:37:19 -07:00
Gopikrishnaiah Anandan
8a37317bf4 msm: mdss: Add PCC support for SSPP in thulium
PCC(polynomial color correction) feature is supported in SSPP(source
surface post processing) MDP block of thulium. This change enables the
caching of PCC params passed by driver client and programming the SSPP
pcc hardware block.

Change-Id: I3798becf7ed675c32a90bc7cefa415c055516d72
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2016-03-23 20:37:07 -07:00
Benet Clark
3d9fd88c44 msm: mdss: Add PA support to SSPP in thulium
Picture Adjustment (PA) global and memory color adjustments are supported
on source side VIG pipes in MDP. Clients of MDP driver can enable the
feature using overlay ioctl interface. This change adds support for
clients of the driver to enable the feature.

Change-Id: If961bb20167a7d08bf77dc4807acb46f38094f63
Signed-off-by: Benet Clark <benetc@codeaurora.org>
2016-03-23 20:37:06 -07:00
Gopikrishnaiah Anandan
0157ecd043 msm: mdss: Add source side IGC support for thulium
IGC(Inverse gamma correction) feature is supported on source side pipes
in MDP. Clients of MDP driver can enable the feature using overlay ioctl
interface. Change adds support for clients of driver to enable the
feature.

Change-Id: I5243b001acffff869f9369211fd724d7dd75e8a1
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2016-03-23 20:36:43 -07:00
Benet Clark
d9f0e69311 msm: mdss: Add PA support for DSPP in thulium
MDP block supports picture adjustment feature on the DSPP which can be
enabled/disabled by driver clients.  Change adds the support in post
processing driver and allows clients of driver to configure the PA block
in DSPP.

Change-Id: I22e3df32fd67fda4029eeb4740ad47917ae7e3a1
Signed-off-by: Benet Clark <benetc@codeaurora.org>
2016-03-23 20:36:39 -07:00
Ajay Singh Parmar
bca18b11fc msm: mdss: hdmi: remove hard-coded resolution id names
Generate the HDMI resolution id names based on resolution timing
details. This makes the code generic for all resolutions.

Change-Id: I097f450f5a85c85c1e81b7c7b1351d9c7228ba01
(cherry picked from commit 0e21977a89c126d610763c8ed9baf013bc9fa72a)
[veeras@codeaurora.org: Done as part of 3.18 upgrade
Removed msm8994-fluid.dtsi, msm8994-pinctrl.dtsi from this commit]
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23 20:36:12 -07:00
Ping Li
c74f9b5df2 msm: mdss: Add dither support for Thulium
MDP block supports dither feature in DSPPs (destination surface
processing pipes) which can be enabled or disabled by driver clients.
This change adds the support in post-processing driver to allow
dither configuration in DSPPs.

Change-Id: I2bd2da482f3d204649351bebdbe66bd5dab7a187
Signed-off-by: Ping Li <pingli@codeaurora.org>
2016-03-23 20:35:45 -07:00
Ping Li
e8bd84e0ca msm: mdss: Support for gamma correction in thulium
Gama correction blocks are part of destination and layer
mixer blocks of MDP. Client of PP driver can program these
blocks and enable them. Change adds support to program and
enable the gamma correction blocks.

Change-Id: Ieba07290525c1ccf79e4abf3648baf3dfd02d266
Signed-off-by: Ping Li <pingli@codeaurora.org>
2016-03-23 20:35:44 -07:00
Ping Li
ea14d7ee88 msm: mdss: Add PA LUT support in DSPP for Thulium
MDP block supports picture adjustment LUTv in the DSPPs
(destination surface processing pipes) which can be enabled
or disabled by driver clients. This change adds the support
in post-processing driver to allows configuration on PA LUTv
in DSPPs.

Change-Id: I7a0d436e7fdd921c55d12fddef33f5ba6c14ba00
Signed-off-by: Ping Li <pingli@codeaurora.org>
2016-03-23 20:35:43 -07:00
Ping Li
2026a16aed msm: mdss: Add support for IGC in thulium
Inverse gamma correction(IGC) feature is exposed by the MDP
hardware block in source and destination pipes. Clients of
the post processing driver can program the IGC tables and
enable the feature. This change adds support for IGC post
processing feature.

Change-Id: I177fb06f5eec58fea0a54b537c0009d4c8e01bd7
Signed-off-by: Ping Li <pingli@codeaurora.org>
2016-03-23 20:35:42 -07:00
Benet Clark
72b4bbc9c9 msm: mdss: Add PCC support in DSPP for Thulium
MDP block supports PCC feature on the dspp(destination
side picture pipe) which can be enabled/disabled by driver
clients. Change adds the support in post processing driver
and allows clients of driver to configure the PCC block
in DSPP.

Change-Id: Ic9307e12d6204c9e6e780ef8f2266151cc8a7ddc
Signed-off-by: Benet Clark <benetc@codeaurora.org>
2016-03-23 20:35:40 -07:00
Ping li
0044c3f50f msm: mdss: Add support for gamut on dspp
MDP block supports GAMUT feature on the dspp(destination
side picture pipe) which can be enabled/disabled by driver
clients. Change adds the support in post processing driver
and allows clients of driver to configure the GAMUT block
in mdp.

Change-Id: I4024d54f14ebd41374c591a27b12dcda8695c80d
(cherry picked from commit a285051a127bcfa1da56d66fe7f96eeece88c2c8)
[veeras@codeaurora.org: Done as part of 3.18 upgrade
Resolve conflict by adding this commits version of
include/uapi/linux/msm_mdp.h]
Signed-off-by: Ping Li <pingli@codeaurora.org>
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23 20:35:38 -07:00
Justin Philip
13517698e4 mdss: Add MDP_SMP_FORCE_ALLOC mdp flag
MDP_SMP_FORCE_ALLOC flag is used to allow SMP
allocations even when there is mismatch between
allocated and requested SMPs for a pipe.
User space can make use of this flag in extreme scenarios
where SMP allocations need to pass like GPU composition
and playback of protected  or secure videos.

Change-Id: I369b4361e7e2bbfc8150add467678c4ef8d5cfb6
Signed-off-by: Justin Philip <jphili@codeaurora.org>
2016-03-23 20:35:03 -07:00
Dhaval Patel
31646184c9 mdss: mdp: add UBWC format support in MDSS driver
UBWC format is supported for pipe input and WB0 & WB1
output for MDPv(1.7). This new format also has specific
buffer configuration requirement for bit stream and
meta data. This change adds UBWC support in MDSS
driver and put checks for format support in various
use cases and register configuration.

Change-Id: I29c262a94461d7571bead63f60517875eaaa5e5b
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:34:40 -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
Vishnuvardhan Prodduturi
1b119c3f6d msm: mdss: Support ARGB1555 and ARGB4444
Add support for  ARGB1555 and ARGB4444 formats in
mdp.

Change-Id: I6000316d177d9988eabcca8f43131e3a9f636961
Signed-off-by: Vishnuvardhan Prodduturi <vproddut@codeaurora.org>
2016-03-23 20:33:24 -07:00
Krishna Chaitanya Parimi
3d8f14bbc7 msm: mdss: Override partial update PP block using ioctl
Partial update when enabled blocks all PP ioctls. There is
currently no subtle way to enable PP. Providing an ioctl
to override the blockage of PP ioctls. This would allow
PP to override the blockage caused due to the default
enablement of partial update.

Change-Id: Ia120caa179bfa0414041bacd80328540f24dd6c8
Signed-off-by: Krishna Chaitanya Parimi <cparimi@codeaurora.org>
2016-03-23 20:33:02 -07:00
Jeykumar Sankaran
23f368710e mdss: mdp: Add mdss version macro for 8992 target
Add mdss version macro for 8992 target and initialize maximum
blending stages supported for the target.

Change-Id: Ic741fb725907498791c1d17581561e3632a40cec
Signed-off-by: Jeykumar Sankaran <jsanka@codeaurora.org>
2016-03-23 20:32:47 -07:00
Sree Sesha Aravind Vadrevu
aaaa2ae729 msm: mdss: add support for dedicated hardware cursor
Hardware cursor within mdss from mdss v1.5 onwards is
programmed within the SSPP interface and is no longer
a separate dedicated stage in the layer mixer. Cursor
needs to be staged onto the existing layer mixer stages
and always at the top level available. From this version
onwards, cursors are expected to be programmed through
the overlay interface by the user.

Change-Id: Ia225dd92079e0153e9677ff035cf8531e62d5554
Signed-off-by: Sree Sesha Aravind Vadrevu <svadrevu@codeaurora.org>
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23 20:32:10 -07:00
Dhaval Patel
d7206c1f54 msm: mdss: update MDSS driver to support latency ram
Different MDSS hardware variants support fixed pixel
latency ram for each pipe vs SMP (Shared Memory Pool).
Software does not have to handle SMP allocation/deallocation
for hardware with fixed pixel latency ram. This change
enables the driver to handle such MDSS hardware.

Change-Id: Ia55f45d65c3eb19350c7195acd83af8ffc0e9a10
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:31:56 -07:00
Jeevan Shriram
d7580b4b65 msm: mdss: share fb memory ion fd to userspace
Add new operation request to share ion fd to userspace
for mapping to the frame buffer memory.

Change-Id: I404c73c19e3fffec593ffd32c34e7b1a74a500d8
Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
2016-03-23 20:31:46 -07:00
Casey Piper
1f4617c257 msm: mdss: hdmi: update clockrate for 480p resolution
Correct the 480p clockrate to ensure HDMI pll
locks when connected to a 480p sink.

Change-Id: I93b49390c534966b86cb73bf02bdf25f5b12890e
Signed-off-by: Casey Piper <cpiper@codeaurora.org>
2016-03-23 20:31:15 -07:00
Sree Sesha Aravind Vadrevu
e2b32b069d msm: mdss: add additional blending stages for the layer mixers
msm8994 can support three additional blending stages in the layer
mixer bringing the total to 8 layers including the base stage.
Modify layer mixer programming to support additional blend stages.

Change-Id: Iff812ec2cf08e4234dc13c5630fe66ba07462b87
Signed-off-by: Sree Sesha Aravind Vadrevu <svadrevu@codeaurora.org>
2016-03-23 20:31:08 -07:00
Vinu Deokaran
c7dfe421a1 msm: display: Add pipe type selection in overlay request
Allow user to specify the type when requesting an overlay pipe.
If field is set the pipe type indication in the flags will be
ignored.

Change-Id: Iee51d24b96c7a2a987dc70a439342e6548dfc8fa
Signed-off-by: Vinu Deokaran <vinud@codeaurora.org>
2016-03-23 20:30:11 -07:00
Kuogee Hsieh
3a28acf18f mdss: display: add support of dual dsi partial update.
This patch adds l_roi and r_roi fields to display commit struct to
support partial update for dual DSI panels. Panel side
frame buffer's column, page address and DSI controller's
stream size are updated based on the ROI requested.

Change-Id: I70957c9ee1546448416441a8d0608fb00c3b92ca
Signed-off-by: Jeykumar Sankaran <jsanka@codeaurora.org>
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
2016-03-23 20:30:06 -07:00
Sandeep Panda
41211cdb1f msm: mdss: Add support for dynamic mode switch
Add support for switching between dsi command mode and
video mode and vice versa at runtime. If the panel is
configured in video mode, it would be power efficient to
be able to dynamically switch to command mode on need
basis. This change adds the support by providing an IOCTL
to switch between video mode and command mode at runtime.

Change-Id: I573c063556d68d631fe27cc2d1447522eceb7f2a
Signed-off-by: Sandeep Panda <spanda@codeaurora.org>
2016-03-23 20:30:04 -07:00
Dhaval Patel
9cbe5da507 msm: mdss: send panic/roburst signal to bimc based on fill level
MDP hardware will send panic/roburst signal to bimc based
on fill level for all pipes connected to realtime interferfaces.
This allows bimc to priortize the MDP traffic across all bimc
ports, regardless of other clients' priority. This feature
is not for non-realtime clients like writeback.

Change-Id: Iafe891c6aefad905d482bd7aa54e00562698676e
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:29:31 -07:00
Ping Li
ee779a5bd9 msm: mdss: Add update notify for backlight change in static screen
Previously, the change of backlight sysfs node value will not trigger
notify updates if display is in static screen case. This will cause
delay or wrong configuration for assertive display. This patch fixes
the above issue by adding an update notify if backlight changes when
there are no display updates.

Change-Id: I1475896214a50dc1fa71739aa751b2e626d27adb
Signed-off-by: Ping Li <quicpingli@codeaurora.org>
2016-03-23 20:28:56 -07:00
Ujwal Patel
8733f513b2 msm: mdss: propagate pipe priority to user-space
Priority is returned by the driver when overlay is set for the first
time. It indicates the priority of the underlying pipe serving the
overlay. This priority can be used by user-space in source split when
pipes are re-used and shuffled around to reduce fall-backs related
priority restrictions.

Change-Id: Ibfda0280279e7057a1d3494f4e5f68962b26ef4a
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2016-03-23 20:27:39 -07:00
Ujwal Patel
71443cd17a msm: mdss: add support for 565 macro tile formats
Extend macro tile format support to rgb565 and bgr565.

Change-Id: Ida93ac7fbf93819b4d20f7392edc7df5a95f7979
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2016-03-23 20:27:22 -07:00
Ping Li
fbba6f8799 msm: mdss: Add backlight attenuation mechanism in AD auto strength mode
AD backlight attenuation provides the ability to modulate backlight based
on calibration before feeding it to AD core for strength computation.

Change-Id: Iea011807b25882463b1142e17324fa0509007aa4
Signed-off-by: Ping Li <quicpingli@codeaurora.org>
2016-03-23 20:27:08 -07:00
Adrian Salido-Moreno
0324446cc2 msm: mdss: implement overlay prepare ioctl
Overlay prepare will allow a full frame with multiple overlays to be
configured at once and perform frame level checks before being pushed to
display. This function guarantees that if the call is successful, the
frame can be displayed successfully on the screen when display commit is
called.

Change-Id: I276b6fe3e0a872a2e93170f3cea1002d3ce0dac9
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2016-03-23 20:26:13 -07:00
Ken Zhang
a218b1f5b0 msm: display: 8092: Update pipe-flush sel reg for VID pipe
For mpq platform, buffer is not queued through HWC except the
first frame. So, added this change to get the correct pipe flush
setting for VIG pipe. Since, in mpq, the buffer is queued
directly by Maple firmware only on VIG pipe. The flag
MDP_VPU_PIPE determines that the layer will be composed by
VPU(maple) on the given pipe.

Change-Id: I0566913d5d14f6160e5cbc132b76ba8fbec609a7
Signed-off-by: Zohaib Alam <zalam@codeaurora.org>
2016-03-23 20:25:55 -07:00