Commit graph

567209 commits

Author SHA1 Message Date
Padmanabhan Komanduru
231f5b9fd4 msm: mdss: avoid check for ctl path number for sending panel commands
For command mode, we check for control path number to send the panel
OFF/LP1/LP2 commands. This causes issues when a command mode panel
is not driven on control path #0. Modify the check to make sure panel
commands are sent properly for all use cases using the split display
validity APIs.

Change-Id: Icbcf775020d4f65dc8bad8b3a84534842d114f0b
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
2016-03-23 20:41:04 -07:00
Padmanabhan Komanduru
62b220bb08 msm: mdss: use layer mixer number to select pingpong block
In the current implementation, the pingpong block is selected
based on the interface number. This causes issues when a
single DSI command mode panel is connected to Interface #n and
not driven on control path #(n-1). Add change to select pingpong
block based on LM number to handle this.

Change-Id: I195d25bb7dd890c3b731e6ea38b1a41a321b1cf5
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
2016-03-23 20:41:03 -07:00
Subhash Jadavani
bc3319bf28 msm: mdss: fix compilation errors if debugfs is disabled
This change fixes the compilation errors seen when DEBUG_FS is disabled.

Change-Id: I28fb230c65b90a9c2ec33c5e4332164e37f2f241
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
2016-03-23 20:41:02 -07:00
Dhaval Patel
ec3e1e02fc msm: mdss: add venus gdsc support in mdp
Venus gdsc has to be turned on before turning on
mdss gdsc due to hardware limitation for msm8996
v2 target. This change adds venus gdsc support
in mdp driver.

Change-Id: I2d6db6d43ac20d2e5196f5e31187246da38365d0
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:41:01 -07:00
Ping Li
0e4cb72b71 msm: mdss: Unblock PP and hist ioctls when PU is enabled
Currently driver has checks to ensure that partial update feature
and post-processing feature are mutually exclusive. Ideally, this
enforcement should be done by clients of PP driver. This patch
removes all the partial update status checks for PP ioctls.

Change-Id: I0e50c16c3647dcebdf2eff37c632e554cc51002b
Signed-off-by: Ping Li <pingli@codeaurora.org>
2016-03-23 20:41:00 -07:00
Ken Zhang
699a73beab Revert "msm: mdss: Override partial update PP block using ioctl"
This reverts commit 679dc362a9effee922ef2ce1447424b318f667bc.
The way overriding partial update via PP ioctl is obsolete,
partial update control is going through sysfs. The left code
is blocking pp ioctl even partial update is disabled dynamically.

Change-Id: Icb455a0101b53c58ae6c1b2686bd2297b4832396
Signed-off-by: Ken Zhang <kenz@codeaurora.org>
Signed-off-by: Ping Li <pingli@codeaurora.org>
2016-03-23 20:41:00 -07:00
Dhaval Patel
bce01b2e9d Revert "msm: mdss: enable mmagic gdsc before turning on mdp gdsc"
This reverts commit 3c2ffe73f03a1bfced4239b16d3284b2397f392c.
Clock change added support to handle the mmagic gdsc as
parent of core gdsc. This removes the requirement from
each mm core to vote explicitly for mmagic gdsc.

Change-Id: I10e0b3cc9bcb2bd5f4a850e1b8800b45f7305d67
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
[cip@codeaurora.org: Removed dtsi updates]
Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23 20:40:59 -07:00
Dhaval Patel
fae000ced6 msm: mdss: use u64 instead of u32 for bitclock rate calculation
Bitclock calculation for high resolution panel overflows the
32bit variable which causes invalid pixel clock and byte clock
setting. Updating it to 64bit fixes the overflow issue.

Change-Id: If1f6fa3200783b87022366580fc18bfe6e3ddd8d
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:40:58 -07:00
Rohit Vaswani
e863be17ed iommu: msm: Provide the IOMMU_NOEXEC flag explicitly during mapping
The logic for the iommu executable flag is inverted now and
all the iommu mappings are executable by default.
Provide the IOMMU_NOEXEC flag where the mapping needs to be non-executable.

Change-Id: Ifa0aa3d17ae79c16abdf66d2177a09b868a9f45f
Signed-off-by: Rohit Vaswani <rvaswani@codeaurora.org>
[cip@codeaurora.org: Removed __iommu_create_mapping/kgsl_iommu_map
update]
Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23 20:40:57 -07:00
Dhaval Patel
fdd80e65fb mdss: msm: keep smmu power rail on during continuous splash
SMMU clocks and regulators should be on during continuous
splash screen scenario. Turning them off causes the underrun.
This change leaves these power rail on during probe and avoids
additional refcount during attach. This refcount will be removed
on detach during first suspend-resume.

Change-Id: I70570dea67d9a95e86ddbe892252dcb493c8fa65
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:40:56 -07:00
Kuogee Hsieh
67500148ea msm: mdss: release mdp_busy flag at isr
Release mdp_busy flag a CMD_MDP_DONE isr while doing
hs_clk_lane recovery to mitigate possibility of causing
false mdp_busy time out whey system load is heavy. Also
checking CMD_MDP_DONE isr status before declare mdp_busy
timeout.

CRs-Fixed: 823949
Change-Id: Ia5fe60c9799944b8867c262661c4cd97cffba1c7
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
2016-03-23 20:40:55 -07:00
Casey Piper
ea354ea3e4 msm: mdss: read from HDMI CEC register only if CEC enabled
If HDMI CEC is not enabled and the CEC sysfs node is
written, an unclocked register access could occur. Access
this register only if CEC is enabled and configured.

Change-Id: I1a190a8302fdf7012723fb908c661098ebabead6
Signed-off-by: Casey Piper <cpiper@codeaurora.org>
2016-03-23 20:40:54 -07:00
Veera Sundaram Sankaran
33f539a576 msm: mdss: add UBWC formats to mdp debug
Add supported UBWC formats to mdp debug, so that it displays
the correct format name.

Change-Id: I055d49344b13a74c0164072fa1da910921ef0606
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23 20:40:54 -07:00
Jeevan Shriram
59dbf28883 msm: mdss: change calculation reference to default frame rate
In the current implementation for dynamic fps in vfp method, while
calculating the porch values current fps is taken as reference which
may lead to precision loss and clock calculations go wrong. Use the
default fps as reference for any change in fps.

Change-Id: I9a36c33c9824c95abc4925a324f9cd2f47456e6a
Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
2016-03-23 20:40:53 -07:00
Adrian Salido-Moreno
9df13699a8 msm: mdss: pipe: fix solid fill image programming
When programming pipe in solid fill, the image properties should be
programmed to make sure that scaling blocks are bypassed. In order to
do this we need to program out resolution to same size as source.

Change-Id: If0a9182ca738e753f99a5b5e9cc20bc76b75238a
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2016-03-23 20:40:52 -07:00
Adrian Salido-Moreno
65a9c29680 msm: mdss: ctl: fix mixer allocation logic
Current mixer allocation logic does initialization only if the mixer is
part of the mixer pool, however code has additional path for alternative
mixer which is not being initialized. Also don't need to reallocate the
mixer if it's already allocated in case of split display.

Change-Id: I1dbbbb86096c4825d214755d9cc7bf81b2abbbc8
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2016-03-23 20:40:51 -07:00
Adrian Salido-Moreno
ea86d8e5a5 mdss: debug: add panel timings to mdp dump
Provide info about current panel timings when dumping mdp debugfs data.

Change-Id: Id2b481797e86131e8d32d7fc59531964f0a21c0a
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2016-03-23 20:40:50 -07:00
Jeevan Shriram
14b7eeba1d msm: mdss: enable tearcheck after panel on for synchronization
When pingpong split is enabled, we need to configure both PP0 and
PP4 tear check blocks for synchronization between the two interfaces.
In the existing implementation, the two tearcheck blocks are being
enabled at different time and the two TE counters are asynchronous.
This asynchronous behaviour could lead to DSI FIFO underflows and
are fatal during subsequent panel on/off. This change enables both
the tear check blocks together and waits for the TE signal  to
synchronize.

Change-Id: I966dcead59028c729a71cc7e47343303b0b9a6b2
Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
2016-03-23 20:40:49 -07:00
Ujwal Patel
bc4c597e76 msm: mdss: wake up threads relying on shutdown notice
In the current framebuffer driver, user context may be put to sleep
to serialize certain operations. These contexts are woken up on certain
conditions, one of which is system shutdown notification. Current api
used, wait_event_timeout, relies on wait queue to be woken up if any
variable that could change the result of the sleep condition. So when
shutdown context is active, it needs to wake up threads waiting on
shutdown notification else they will timeout and may delay the shutdown
process.

Change-Id: I11b97e4c65b434c5f35d455a5040f407a1460516
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2016-03-23 20:40:48 -07:00
Ujwal Patel
26bebe9912 msm: mdss: handle timeouts from pan_idle and wait_for_kickoff
mdss_fb_pan_idle and mdss_fb_wait_for_kickoff are used to hold the
current context until it is safe to proceed. Unless shutdown is going on,
these contexts are woken up by corresponding display thread responsible
for committing a frame to display. Display thread has various delays like
waiting for fences to be signalled, waiting for previous frame to finish
or waiting for a vsync etc. Under normal circumstances, these delays are
very negligible and different threads work in good harmony. However in a
heavily loaded system or some bad thread which disables interrupts for a
long time, these delays can become very large. Increase timeout to
arbitrarily derived value and add error messaging when the timeout is
observed. Remove panic from the timeout to let the system recover by
itself.

Change-Id: I58fe4c0d8b0c43998f87384035a1eacc24d7230a
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2016-03-23 20:40:48 -07:00
Nitesh Gupta
3425b351bd msm: mdss: Add MDSS version macro for msm8952
This change adds MDSS version macro for msm8952

Change-Id: I096833c36229f2d623ab7efdeaf43035e5254973
Signed-off-by: Nitesh Gupta <niteshg@codeaurora.org>
2016-03-23 20:40:47 -07:00
Terence Hampson
bac2d270a4 mdss: mdp: add mixer roi to mdp dump debugfs
In situation such as partial update mixer's roi and total height
and width are different. Adding roi information to increase
debugging information.

Change-Id: Iec7de7ae35e6d052d2e3c71d88bb8feba4da245d
Signed-off-by: Terence Hampson <thampson@codeaurora.org>
2016-03-23 20:40:46 -07:00
Kuogee Hsieh
9f2e56c7e6 msm: mdss: add MDP DSC configuration
Configure MDP DSC related registers when it enabled.
It updates the PP, DSC block, configure PP block output
to big endian and configure video timing with compressed
width.

Change-Id: I072aba1935cd36b5206bf56580416d470707fe1b
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
2016-03-23 20:40:45 -07:00
Kuogee Hsieh
e9181896cf msm: mdss: add DSC parameters calculation
Add DSC run time parameters calculation base on some
predefined parameters input from dtsi. Also configure
DSI controller properly if it is enabled.

Change-Id: I24b7a2cb829084f76a159b54170b87d051c9eac6
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
2016-03-23 20:40:44 -07:00
Kuogee Hsieh
262c304acb msm: mdss: add DSC offset parsing in mdss module
DSC (display stream compression) is the new module and
supported starting MSM8996 target. Input offsets from
dtsi so that registers belong to DSC can be configured.

Change-Id: I3f06b1a2524bd0d2d408baac4309061f1f9117e8
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
2016-03-23 20:40:43 -07:00
Kuogee Hsieh
377c6c9ba8 msm: mdss: add panel on command support after te enable
Few DSI panels have requirement of receiving display on command
after receiving sleep out command and pixel stream data. This
can be achieved by sending panel on command followed by timing
engine enable. This change adds the support for such DSI panelS.

Change-Id: Ifa225aec4ad9bfd692e19c02bcb726c8d60ce4fb
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
2016-03-23 20:40:42 -07:00
Dhaval Patel
e0c0e4d04e msm: mdss: configure overfetch in software pixel ext
MDSS hardware accepts 0 or greater value for repeat
pixel. However, if software tries to configure the
negative value it leads to underrun due to large value.
In such cases, software should configure the overfetch
block which allows the negative value.

CRs-fixed: 814452
Change-Id: I915a1f10951ae12d451cbf4a5fdff427174d32dc
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:40:42 -07:00
Jayant Shekhar
a8e138b0aa msm: mdss: add support for NV21_VENUS in MDP
Earlier, camera preview buffers were of NV21(YCrCb_420_SP)
and the video buffers were of NV12_VENUS(YCbCr_420_SP_VENUS)
format. Now that the video encoder has support for NV21,
both the camera and video buffers can be of NV21_VENUS
(YCrCb_420_SP_VENUS) format.

If the preview and video buffer sizes are the same, CPP
double pass to generate video and preview buffers can be
avoided and the buffers can now be generated within a
single pass with CPP duplication thereby saving power.

Add support in kernel for NV12_VENUS format to achieve
the same.

Change-Id: Ia0ee0155faaa5ba6d5cafbc0529428734eaf37e5
Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>
2016-03-23 20:40:41 -07:00
Dhaval Patel
db39cdcb68 msm: mdss: fix MDSS and DSI hw revision check for 8996 v2
Incorrect HW revision check in MDSS drier is leading to
boot up failure for 8996 v2. This change fixes it.

Change-Id: I9c45387e48abcd48eec1dcb9fe9fda9a408c58d5
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:40:40 -07:00
Veera Sundaram Sankaran
8ae1574a3e msm: mdss: add async support for hw cursor
Reduce dependency between hw cursor updates and display commit.
Configure the cursor pipes and flush immediately, rather than
waiting for the commit. This would enable multiple cursor updates
within a single vsync. However, the screen update would happen
only after vsync, which would pick the latest cursor update. The
restriction is that after the first cursor update, a display commit
is required to stage the cursor pipes.

Change-Id: I666856c88b8e2decac6578237e9b93b106378ffa
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23 20:40:39 -07:00
Terence Hampson
9bed64d0b8 mdss: mdp: Correct return value of wait for wfd finish
mdss_mdp_wfd_wait_for_finish was returning positive value causing
false failures in atomic validate of wfd.

Change-Id: Idbb8c3a22040d3c8b0f31fa7be8143261ccbfb85
Signed-off-by: Terence Hampson <thampson@codeaurora.org>
2016-03-23 20:40:38 -07:00
Adrian Salido-Moreno
4629783f33 mdss: fb: wait for idle only on last fb release
There could be multiple references to the framebuffer, when
releasing the last one the panel should be blanked. When blanking the
panel we should make sure that panel update has finished (wait for panel
idle), however this wait should be done only if it will lead to a
change in the panel. Avoid this wait if there are more than one ref
counts which means that panel won't be blanked.

Change-Id: I22ffd25cfc6d0512d006a979613610314772a27e
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2016-03-23 20:40:37 -07:00
Ujwal Patel
3574b6767f msm: mdss: fix layer skipping due to dirty pipe
Pipe is marked dirty if it was newly allocated during validate. This
prevents unintentional staging for dirty pipes to HW. However when
the same pipe is used again with good configuration, dirty flag should
be reset. This is missing and leads to skipping of certain layers and
flooding of error logs. Fix this by resting dirty flag when pipe is
successfully validated.

Change-Id: I2d64ecbaaa8968ee7322270c93f5bf5c3e5c90e9
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2016-03-23 20:40:36 -07:00
Jeykumar Sankaran
28587990fd msm: mdss: Return EBADSLT on pipe failures due to priority
Return EBADSLT error for pipe allocation failures due to priority
mismatch. This isolation helps the client to identify and allocate
pipes to layers efficiently.

Change-Id: I601bd4880ade8313be3b870ca4551b40ebb7d00b
Signed-off-by: Jeykumar Sankaran <jsanka@codeaurora.org>
2016-03-23 20:40:35 -07:00
Terence Hampson
9c7a81c5b7 mdss: mdp: Prevent accessing uninitialized rot_session_mgr
There are situations where mdss_mdp_rotator_release_all is called
and rotator session manager is not initialized. Added error
checking to prevent crashing.

Change-Id: I104fa88dd41bb4bad3a0402cf6955c85f640e384
Signed-off-by: Terence Hampson <thampson@codeaurora.org>
2016-03-23 20:40:35 -07:00
Kuogee Hsieh
fe0e12f81c msm: mdss: add compression_mode and pps dcs_type support
Two new DCS types, compression_mode (0x03) and pps (0x0a)
are introduced to support DCS (Display Stream Compression).
Add process those two new dcs types to support DSC.

Change-Id: Ibbd90c7c84598ba24a5919174bb547e851cc4754
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
2016-03-23 20:40:34 -07:00
Terence Hampson
3d2877e73b mdss: mdp: Remove flag checks for 180 and 270 degree rotation
180 and 270 degree rotations simply consist of some combination of
90 degree, up down flip, and left right flip. The checks for
these basic operations are above the code being removed in this patch.
These explicit checks misclassifies 90 degree rotation as 270
degree rotation, and only left right flip as 180 and 270 degree
rotation.

Change-Id: I1ce547f83e350869ec0f3a1ab3be2fd7f2be752c
Signed-off-by: Terence Hampson <thampson@codeaurora.org>
2016-03-23 20:40:33 -07:00
Ujwal Patel
5c11bd9330 msm: mdss: fix stage mismatch error during mixer setup
mdss_mdp_mixer_pipe_update function performs two tasks, one it stages
pipe onto mixer's stage_pipe container for next frame and it also
un-stages same pipe from previous stage if different. When source split
is enabled, pipe can be on left blend or right blend of a given stage.
Now between consecutive frame, pipe can change the z_order and it can
change its blend as well. However current implementation of pipe update
function has an issue where it doesn't un-stage the pipe if its blend
changes between consecutive frames. Check the example below.

* Frame N, pipe X is on right blend, odd index, at z_order 1
* Frame N+1, pipe X is on left blend, even index, at z_order 2

Now when mdss_mdp_mixer_pipe_update is called for Frame (N+1), it should
stage pipe X at z_order 2 and on left blend. It also need to remove the
pipe from right blend of the z_order 1. Due to the bug 2nd task is not
performed and it leads to above error message. There were no side effects
of this bug except for the transient error log.

Change-Id: I0d6b4d9574b8ea9229754199250e2ce795ca2e12
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2016-03-23 20:40:32 -07:00
Terence Hampson
e1ea0b7299 mdss: rotator: Check for valid session ID in each rotator req
For more accurate clk rate calculations we need to know
which rotator item is assigned to which rotator block.

Change-Id: I5cb8a50728600af10d1a97ffd582269e82623f90
Signed-off-by: Terence Hampson <thampson@codeaurora.org>
2016-03-23 20:40:31 -07:00
Ajay Singh Parmar
f4fac86169 msm: mdss: hdmi: do not check for down stream data
While reporting for the resolution details, do not check if
down stream data is valid or not as not all transmitter
configurations have down stream device attached.

Change-Id: I498b94956f0ddbae0dff22d323f8299ff1ecb262
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2016-03-23 20:40:30 -07:00
Alhad Purnapatre
4999326e5a msm: mdss: Fix bug in cursor pipes allocation
The number of cursor pipe structures allocated was mistakenly
set to the number of ViG pipes. Fix the issue to allocate it to the
number of cursor pipes.

Change-Id: I88185a97c64767ad993997d7e4b5398526068222
Signed-off-by: Alhad Purnapatre <alhadp@codeaurora.org>
2016-03-23 20:40:30 -07:00
Shalaj Jain
308ba1e4d0 msm: mdss: Pass secure vmid in domain attributes
Pass the secure pixel vmid for secure context banks in domain
attributes before calling attach for both mdss and rotator
SMMUs.

Change-Id: Ide25821d85c2e912cd91b8e206277456d4c78f3d
Signed-off-by: Shalaj Jain <shalajj@codeaurora.org>
2016-03-23 20:40:29 -07:00
Dhaval Patel
e8740737be msm: mdss: do not call SCM API to unlock register on msm8996
SCM call to unlock the registers is not required for
msm8996 target. However, such call during resume
prints multiple error messages when GDSC is toggled. This
change adds mdss hw capability option to handle the
case.

Change-Id: I6084d0e1e2b7d08c853e44ee2c6e276cc47f1244
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:40:28 -07:00
Dhaval Patel
257d9c9e85 msm: mdss: remove extra print for function name
Remove extra print for function name in debug module.

Change-Id: Ic7327bcedb2254b2bc4b7655138289a19605f935
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:40:27 -07:00
Dhaval Patel
21f3c7dd23 msm: mdss: use regulator get optional API for optional reg
"vdd-cx" is optional regulator and usage of incorrect API
returns the dummy regulator. Display driver tries to
enable/disable this regulator on each suspend/resume and
prints error based on return value. This change uses
correct API for optional regulator to avoid unnecessary
error messages on each suspend/resume.

Change-Id: I51df98fd32702e4de83c5ecc5311f176f82818e1
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:40:26 -07:00
Dhaval Patel
3e28d13595 msm: mdss: add RGBX UBWC format support in mdss for msm8996
MDSS hardware on msm8996 target supports RGBX UBWC format
because it handles the RGBA and RGBX formats in same manner.
This change adds the RGBX UBWC format support with
compression ratio information.

Change-Id: I674d136496910e017d4c21d56b62def7eff0562e
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:40:25 -07:00
Ujwal Patel
6344ac8b7f msm: mdss: fix pipe un-staging issues when source split is used
When source split is used, pipe can be staged on two mixers or it can
be staged on right blend of a mixer. It is also possible that same pipe
is used at different z_order in consecutive frames. When pipe's z_order
is changed and it goes from two mixers to single mixer or right blend to
left blend or any other such variations, pipe needs to un-stage properly.
Fix issues in current code by correcting order of state assignments.

Change-Id: I5b26cc98186183713b7a187673bcb30440d14145
Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2016-03-23 20:40:24 -07:00
Adrian Salido-Moreno
1c4125582f msm: mdss: add proper locking for buffer lists
Buffer lists are protected by list_lock to prevent multiple threads from
modifying the list. Locks are missing in a few places which may lead to
potential concurrent access and lead to corruption. Add proper locking
to prevent this.

CRs-Fixed: 806684
Change-Id: I95c5ebbb5cd9c11c38ea9be0826f3b8748632a5b
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2016-03-23 20:40:24 -07:00
Clarence Ip
1513be3724 msm: mdss: ignore kmemleak false warning in buf allocation
Overlay buffer allocations are marked as kmemleak because the base
pointer is not being tracked, rather these are tracked as part of a
list. Add kmemleak_not_leak to prevent false positives.

Change-Id: I3c54c15b6d73d3aece8e28b7723e0cf9c4953be5
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
[cip@codeaurora.org: Resolved merge conflict]
Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23 20:40:23 -07:00
Dhaval Patel
326db38d9c msm: mdss: dsi: initialize the panel_name array to null
Uninitialized panel_name array can cause the invalid string
comparison between "NON_PANEL" and uninitialized value. Fix this
by initialized the array with null string.

CRs-fixed: 790201
Change-Id: I18486db909e5d41e39b5e6052c8c7c760ae8d4b4
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23 20:40:22 -07:00