Commit graph

4793 commits

Author SHA1 Message Date
Naseer Ahmed
6c9ad4d7e6 msm: fb: make the pan task interruptible 2013-03-04 12:46:58 -08:00
Deva Ramasubramanian
299732780b vidc: handle secure and non-secure session concurrency
Non-secure session should be rejected if a secure session is
running.

Change-Id: I13364a7bc4417a682728be333681278e7de8a1f7
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2013-03-04 12:46:58 -08:00
Naseer Ahmed
6c79a98a56 msm_fb: display: empty pending queue during suspend
Overlay_play() adds a pipe into pending queue and pan_display()
will commit those pipes to hardware and empty queue. This patch
will make sure queue is empty at suspend so that no unexpected
pipes will be commited to hardware by pan_display() at resume.
Otherwise, iommu page fault may happen.

Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:57 -08:00
Saurabh Shah
001200a326 msm_fb: HDMI: HDCP: Start HDCP authentication as a work item
HDCP authentication should be kicked off as a scheduled work
item so as to ensure that MDP is already configured and frames
are being transmitted over the HDMI channel prior to the start
of the HDCP authentication procedure.

Change-Id: I27cab44babfc24d91a318b0641674f85910cc33f
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
Signed-off-by: Saurabh Shah <saurshah@codeaurora.org>
2013-03-04 12:46:57 -08:00
Naseer Ahmed
8f8c3d414d msm: mdp: vsync sysfs bug
Make the read interruptible

Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 12:46:55 -08:00
Naseer Ahmed
c5ab413277 mdp: Do not start LUT for overlay0
The post processing daemon is not used currently.
Enabling the LUT without using it can potentially
cause display hangs.
2013-03-04 12:46:54 -08:00
Naseer Ahmed
8b804aaf0b msm: display: buf sync enhancement
Support waiting for acquire fences in the buffer sync ioctl.

Signed-off-by: Ken Zhang <kenz@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:51 -08:00
Naseer Ahmed
504021da52 msm: display: add display commit ioctl
Display commit ioctl will do what pan_display
can do, addtionally has customized setting, such
as non-blocking call.

Signed-off-by: Ken Zhang <kenz@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:50 -08:00
Naseer Ahmed
c2f0fb04a0 msm: display: make pan display as a non-blocking call
Schedule a workqueue, do the current job in the workqueue handler.
Block the second entry if the first one has not finished

Change-Id: I9466c7795bd9d6765f468bf30f4021802d904c36
Signed-off-by: Ken Zhang <kenz@codeaurora.org>

Conflicts:

	drivers/video/msm/msm_fb.c

Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:49 -08:00
Naseer Ahmed
e0501cd8dd msm: display: add sync point support in overlay commit
Wait for fence signaled before commit, signal previous
fence after commit done. Same as pan display

Signed-off-by: Ken Zhang <kenz@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:49 -08:00
Naseer Ahmed
7bf0610f43 msm_fb: display: Send vsync events using sysfs for MDP4 targets
Replace sending of vsync timestamp using uevents with sysfs entry
as uevent result in increase in power numbers due to broadcast in
nature. Also, for smart panel, wait4vsync is removed.

Change-Id: I5219e85b837b8bab9d00a9f40c1048d2a2355194
Signed-off-by: Mayank Chopra <makchopra@codeaurora.org>
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>

Conflicts:

	drivers/video/msm/mdp4_overlay_dsi_video.c

Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:48 -08:00
Naseer Ahmed
55a848bcdb msm_fb: display: add support of mdp clocks controlled by vsync
Mdp related clocks are controlled through vsync enable/disable
ioctl from userspace frame work.

Crs-fixed: 384482
Change-Id: I5999ad17955e0f862f64036a6390016ff3a6782f
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>

Conflicts:

	drivers/video/msm/mdp4_overlay_dsi_cmd.c

Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:48 -08:00
Naseer Ahmed
5e6d6c1c23 msm_fb: display: add dcs command list for dsi command mode
DSI dcs commands and mdp pixel stream share same dsi link.
Add dcs command list to serialize sending dcs command and mdp
pixel stream to avoid contention which may cause dsi controller
to stall.

Change-Id: Ie0e687f45be479d2137eb7b56b8d32040fba2044
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>

Conflicts:

	drivers/video/msm/mdp4.h

Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:47 -08:00
Naseer Ahmed
f212305887 msm: mdp: Release all fences on blank
Signed-off-by: Ken Zhang <kenz@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 12:46:45 -08:00
Iliyan Malchev
0d312d6ec3 Revert "mako: display: change color value to displayed in case of underflow"
Reverting this change allows display underflows to cause flashes of blue, which
will help prove that underflows are occurring.

This reverts commit e6f596dbcd307e33e4e4842914a027c7f7138bd9.
2013-03-04 12:46:44 -08:00
Devin Kim
68866784f6 backlight: lm3530: set CABC register on first bootup
If we don't apply CABC register setting at the first bootup, then it makes a
power difference between the bootup time and the first suspend and resume,
approximately 38mA.

Change-Id: I91c915af31e9ff6934ce733f3fb2c8b96e1adf31
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 12:46:42 -08:00
Ajay Dudani
18ffec4a52 vidc: close instance if securing session fails.
Video driver will close the instance if secure call fails.

Change-Id: I39147272a9183f011529078fe8a18ac8cb2726fd
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Ajay Dudani <adudani@codeaurora.org>
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 12:46:40 -08:00
Deva Ramasubramanian
5b896d7477 msm: vidc: Allow client to request sps/pps per IDR frame
Expose SET_SPS_PPS_FOR_IDR to allow client request sps/pper per IDR
frame.

Change-Id: I0316d751bd1e0b412972cba9d4d59b142500a51d
Signed-off-by: Deva Ramasubramanian <dramasub@codeaurora.org>
2013-03-04 12:46:39 -08:00
Saurabh Shah
736cf9db3b msm_fb: display: Add MSMFB_OVERLAY_COMMIT ioctl.
MSMFB_OVERLAY_COMMIT ioctl is used to display on external.
This is used instead of the default PAN mechanism to avoid delays in that path.
This ioctl for external also waits for DMAE thus fixing tearing.

Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Signed-off-by: Arun Kumar K.R <akumarkr@codeaurora.org>
2013-03-04 12:46:38 -08:00
Ajay Dudani
18f0324bea vidc: Error handling for memory heap mapping.
Memory heap should be unsecured if secure call is successful.
This change will make sure that an unsecure will be called
only if securing of the memory heap went through fine.

CRs-Fixed: 393041
Change-Id: I49dd81d1846fc6936518c750a32921c8498ddb95
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Riaz Ur Rahaman <riazr@codeaurora.org>
Signed-off-by: Ajay Dudani <adudani@codeaurora.org>
2013-03-04 12:46:32 -08:00
Naseer Ahmed
2c889a591a msm_fb: hdmi: Add support for HDMI Audio caps
Add sysfs nodes to export the data contained in the
audio data block and the speaker allocation data block
from the EDID of a connected HDMI sink.

Change-Id: Ie558e930cc5790965d46eb2c30156a23643fa1f7
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:30 -08:00
Naseer Ahmed
59a8a43802 msm_fb: hdmi: Fix parsing of audio capabilities
Fix bugs in the parsing of the Audio Data Blocks and the
Speaker Allocation Data Blocks in the EDID data.

Change-Id: I666cf82d149c8ebb02d3bca3a053e494890870c0
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:29 -08:00
Devin Kim
07cd434307 msm_fb: call the backlight control before FB_BLANK_POWERDOWN
You might see the white line while lcd off. You should turn lcd backlight
off before lcd off to avoid that issue. So call the notifier for backlight
before handling of FB_BLANK_POWERDOWN in msm_fb.

Change-Id: I3bd08025a949ec02a1fba7cef98a13d8977c135b
2013-03-04 12:46:29 -08:00
Naseer Ahmed
3aa5b914d3 msm_fb: display: empty queue at suspend
Change-Id: Iafdf469c6cdbf5d469c9dee114555a8d1adb9c66
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:27 -08:00
Naseer Ahmed
94f97545b1 msm : display: buffer sync point update
Do not put sync point if it has been added to
a fence successfully in error handling

Signed-off-by: Ken Zhang <kenz@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:26 -08:00
Naseer Ahmed
1816d1eb76 msm: mdp: Disable vsync in video off.
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:26 -08:00
Naseer Ahmed
fdf06a0c73 msm_fb: display: remove extra dmap irq disable
irq enable and disable need to be called symmetrically.
Remove an extra dmap irq disable call.

Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:25 -08:00
jh.koo
cbff6e7a0c slimport: Modify to support slimport-to-VGA and slimport-to-DP dongles
Change-Id: I4bbe996351d50bfa2a4073987c97db37a4ed3484
2013-03-04 12:46:21 -08:00
Devin Kim
ae71d63d07 msm_fb: Fix display corruption with continuous splash screen feature
During boot up, we observe random lines on screen between the
splash_screen image and the android animation. MDP clocks
were turned off during bootup. Fix this issue by enabling
the clocks when this feature is enabled.

Add check to see that the video mode engine is not busy before
turning off the dsi controller to avoid any underruns.

CRs-Fixed: 399634

Change-Id: I8fdb50fa848362a548b8cdd53ee1817346b57716
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
2013-03-04 12:46:18 -08:00
Naseer Ahmed
ccd2059e3c msm_fb: display: check base layer pipe at irq handler
Change-Id: Ib188d575044f5479672503508042c8c1e9c759c4
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:15 -08:00
Naseer Ahmed
5f2bdb1c5f msm_fb: display: add blt condition check at video/lcdc off
Blt mode may be enabled during system suspend. Need to make
sure blt overlay done  before turn off video/lcdc timig generator.

Change-Id: Iad54ee544499213bb7c9cfe60d00919f819aacb1
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:14 -08:00
Kinjal Bhavsar
70f7421a80 msm: display: Buffer sync point support
Add MSMFB_BUFFER_SYNC ioctl for the communication of
the acquired and released fence fd between kernel and hwc.

Wait for acquired fence before pan display.
Release the previous released fence after pan display

Change-Id: I6534aed574a025d948581e70465f06a86b46c868
Signed-off-by: Ken Zhang <kenz@codeaurora.org>
2013-03-04 12:46:14 -08:00
Naseer Ahmed
bd7a66d33a msm: mdp: Send fake vsync only when enabled from userspace
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:13 -08:00
Naseer Ahmed
53e65eac9e msm_fb: Clear real pipe attributes in the pipe free
Clear original pipe attributes in the pipe free call.

Change-Id: I776869e7997e5b70e4c2b102e1a394034247bbcd
Signed-off-by: Kalyan Thota <kalyant@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2013-03-04 12:46:08 -08:00
Jongrak Kwon
a5a9c40226 msm: dsi: use timeout for dma transfer
Use wait_for_completion_timeout instead of wait_for_completion
not to stuck in the kernel even when the DMA fails.

Change-Id: I29702c3c62f78399c173d660bbbc17a07ed27468
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 12:46:07 -08:00
Jongrak Kwon
73161d35e7 Revert "[ARM] msm: fix mipi_dsi_off"
Preserve original dsi-off sequence to remove DMA failure.  Previously the power
off sequence was modified to resolve display turn on/off issue, but the changes
were not necessary in current kernel and just caused side effects which
resulted in fb_blank being stuck due to occasional DMA failures.

This reverts commit e1a9b1bda7691e4f62728d09e1993eb9ae9db8d6.

Change-Id: Ia0a60cfdf697675d34066852f106d9e37578073d
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 12:46:07 -08:00
Jongrak Kwon
7060213779 Revert "[ARM] msm: fix mdp_off"
Preserve original mdp off sequence to remove DMA failure.  Previously the power
off sequence was modified to resolve display turn on / off issue, but the
changes is not necessary in current kernel and just causes side effects
resulting in fb_blank being stuck due to occasional DMA failures.

This reverts commit 0b3bc7e958f98432538a8537739fbaa560761434.

Change-Id: Ia82fb79b56b57f6696c55d9b079eeadebe8c40bf
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 12:46:06 -08:00
Devin Kim
f80be7d12e backlight: lm3530: decrease a little more backlight level
decrease backlight level to 70 nit at the charging mode

Change-Id: I3ad14dbcfc5daf5090219da21c3f348fdb97ff77
2013-03-04 12:45:59 -08:00
choongryeol.lee
23580403bd Revert "mako: backlight: sync backlight on/off with lcd on/off"
This reverts commit af3f22de5dd769b555c018c12be837450cd59dd6.

Due to the order of backlight and lcd on/off will be guaranteed by
PowerManagerService, this patch is reverted.

Change-Id: I2e54dc14d338b5bfa1aca1bddcc37b46928a94e8
Signed-off-by: Iliyan Malchev <malchev@google.com>

Conflicts:
	drivers/video/msm/msm_fb.c
2013-03-04 12:45:51 -08:00
Iliyan Malchev
77af5d3270 msm_fsb: handle pipe-allocation errors
In mdp4_overlay_writeback_on, return -EIO is pipe allocation fails.

Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 12:45:49 -08:00
Ajay Dudani
475ec34506 msm_fb: Add option to enable/disable mixer commit
Adds support to enable or disable mixer commit during pipe staging operations.
Depending on the current activity, this selection can be made.

Change-Id: Ia2f5dbab58f73ef4de90abf7f278332d8d73df46
Signed-off-by: Pradeep Jilagam <pjilagam@codeaurora.org>
Signed-off-by: Ajay Dudani <adudani@codeaurora.org>
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 12:45:49 -08:00
Ajay Dudani
af539886f6 msm_fb: display: free base layer pipe at adb stop
Base layer pipe need to be freed at adb stop so that same
pipe can be allocated at adb start.

CRs-fixed: 390644
Change-Id: I948bb27687cfe1c96cc3b071b7bb9bb84b2c52c6
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Signed-off-by: Ajay Dudani <adudani@codeaurora.org>
2013-03-04 12:45:48 -08:00
Devin Kim
ce9d76b093 mako: display: disable LP stop mode
Enabling LP stop flag caused flicking or after image.

Change-Id: I91066bebc3b4c5277ef524435615c1b8bde70e80
2013-03-04 12:45:32 -08:00
Devin Kim
1c659927e5 mako: display: increase mipi line speed
increase mipi speed to 470Mbps from 450Mbps
too low line speed don't support HD resolution

Change-Id: I572afcc82f0c67aa0d45547f3f7f10214f4ebf81
2013-03-04 12:45:32 -08:00
Deva Ramasubramanian
eb9863d4c8 vidc: Correct start and stop sequence.
Video core stop should be called only if start is successful.

Change-Id: Ie2a8d970355387ee3fcdc34b62184972e89dd6cc
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2013-03-04 12:45:29 -08:00
jh.koo
6ff2586036 slimport: Add slimport detection function
It will be used for charger detection codes. slimport is also used
as charger like as usb charger

Change-Id: Idd40dd88b8a5f035dfb207dd787d7fd3f4ae713b
2013-03-04 12:45:23 -08:00
Deva Ramasubramanian
de751b9e44 vidc: Add secure node support for encoder.
Encoder driver will expose a new node for clients
intending to start a secure encoding session.

Change-Id: I2a104155fd19534a3b3b35e6606d39047f34c42f
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2013-03-04 12:45:22 -08:00
Deva Ramasubramanian
a7b1a91bbb msm: vidc: Use MM heap for prediction buffer during secure encode
We are incorrectly using the firmware heap to allocate prediction
buffers. This violates an agreement between TZ and HLOS that only
the firmware will reside in the FW heap. As such, move the buffer
to MM heap.

Change-Id: I2c91499c38043abfa21ae3443d3a8f22d6474eaa
CRs-fixed: 380161
Signed-off-by: Deva Ramasubramanian <dramasub@codeaurora.org>
2013-03-04 12:45:21 -08:00
jaekyung.oh
0e4c04388a mako: display: update lcd initial code.
Added OTP read protection code for prevent skew value read error.

Change-Id: Ic91031c41ccf6a43346eb0e20f82ad6144fccab2
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 12:45:16 -08:00
Devin Kim
7e45a10da4 backlight: lm3530: add the backlight map in platform data
Add the backlight map into platform data for calibrating
by the board specific values

Change-Id: Ib997a8cbf738b2700305028f47178f31420f9e85
2013-03-04 12:45:13 -08:00