c2f61ab1d7cc647126b30c4793d700299e90f192 |
|
11-May-2013 |
Naseer Ahmed <naseer@codeaurora.org> |
hwc: Simplify vsync code Handle the wait properly in the kernel and remove unnecessary thread signaling. Change-Id: Iff05825a7a85d0353f3feb64e7f9a06cedab7869
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|
5441c47fc6d4e98cc5d951a53cc842b2b475e860 |
|
09-May-2013 |
Naseer Ahmed <naseer@codeaurora.org> |
hwc: Do not close fd when vsync read fails Related-to-bug: 8804359 Change-Id: I7495c03910a57c2e2090fac6d7ba203de556a0b1 Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|
4df6fc1dcca26b78692c27d723c0d0de099ec103 |
|
08-May-2013 |
Naseer Ahmed <naseer@codeaurora.org> |
hwc: Disable fake vsync Disable fall back to fake vsync even when the vsync timestamp is invalid. Related-to-bug: 8804359 Change-Id: Ia8fba19ce1bd0635985c6414bbcbd97b76054ebf Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|
20cec8421c5211c2e5f2501f4eda5b834c4f766b |
|
16-Mar-2013 |
Naseer Ahmed <naseer@codeaurora.org> |
hwc: Check vsync state before sending it up The vsync enable ioctl is called in a separate thread in a recent change Hence it was now possible that vsync could be disabled but SurfaceFlinger still received a vsync. With this check we make sure that doesn't happen. Change-Id: I459c0b98ab9ce972d86a361c5ecdfe0c1a2d0e74
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|
05207f5a7575e59e5f22bb9de46f3b6b6ce2cb8d |
|
05-Mar-2013 |
Naseer Ahmed <naseer@codeaurora.org> |
hwc: Check for correct screen state before enabling vsync Sometimes vsync would not be disabled before the display is blanked. This was due to the vsync disable ioctl being kicked off in a thread different from the event control which surfaceflinger called. So, while the calls from surfaceflinger are in order, the order of execution wasn't always the same. Hence, making sure ioctls are called in the same context to ensure order. Also - Make blanking/unblanking logs show the operation as a string. - Add a debug property to dump vsync timestamps (needs framework reboot) - Remove a log which showed delay in reading vsync. This log was unreliable when vsync is disabled and we're still reading from the sysfs node. Change-Id: Ibec04e9ffebd0ac6e1d32b7031e3668abd9390ff CRs-fixed: 443113
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|
ee038351805af80e68e85eea245efec977bd30a3 |
|
13-Feb-2013 |
Naseer Ahmed <naseer@codeaurora.org> |
hwc: Log if vsync read takes more than 2 expected vsyncs Change-Id: Id1daffa9d1d3521f42d121634bf5b00757f3609f
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|
a43fb8fce6d9be5577de1e0f49c99bd4fe2f6d44 |
|
10-Feb-2013 |
Duy Truong <dtruong@codeaurora.org> |
Update copyright to The Linux Foundation Change-Id: I145b66896159ff9886ed73507f17b3165ba0266d
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|
8e1daf6b8559f557842a59c398dcad665fc3561a |
|
19-Dec-2012 |
Naseer Ahmed <naseer@codeaurora.org> |
hwc: Retry vsync on EBUSY The driver returns EBUSY if it is unable to complete the frame within a timeout - this is a recoverable error Change-Id: Ifde01c1d7515598a82d032c0ba869fa658b050a9
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|
6bacbb6cd32f78e2670ad1213fc7541f113be921 |
|
17-Nov-2012 |
Naseer Ahmed <naseer@codeaurora.org> |
hwc: Add support for faking vsync Can be set for debugging, valgrind, board bringup etc. Also - we fail reading the sysfs vsync, we fall back and fake it. Bug: 7301591 Change-Id: I9509fd7aa8862d5af7d521e29fe32bef9654168c Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|
08212c04d2128d8967208b823c7eb4b63720de79 |
|
17-Oct-2012 |
Naseer Ahmed <naseer@codeaurora.org> |
hwc: Open sysfs node when thread is initialized. Earlier, the sysfs node was created in the driver for the first time in dsi_video_on. This has now been moved to probe so this node can be opened to the start of the thread. Bug: 7305728 Change-Id: I01230e4fdc2bddd160ce0d84e153f1f8c179b8df Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|
0f9c397181604f28d15c9273de42f97ae2b4c613 |
|
12-Oct-2012 |
Iliyan Malchev <malchev@google.com> |
hwc: add some logging We are seeing errors where a device's hwcVsyncThread is not present for some reason. The surface flinger has not crashed, so either the thread never got created, or it exited withouth throwing an error. This patch adds some more verbose on-error logging to the HWC as an attempt to verify the theory that the thread does not get created, or fails in pthread_create. While we're at it, we add the same logging at pthread_create() for hwcUeventThread, as well. Also, replace the lseek()+read() with a pread() combo in the vsync thread. Change-Id: I555d786a7d66ff4ef1dbfd95947a7d9341e56f11 related-to-bug: 7305728 Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|
4014777bab1f81db4157db7759d74478eefca22c |
|
05-Oct-2012 |
Naseer Ahmed <naseer@codeaurora.org> |
hwc: don't open sysfs on every iteration Also, read again if vsync read is interrupted Bug: 7305728 Bug: 7274951 Change-Id: I563a4c4cacab8f124ac988ad98640b57a3d09813 Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|
ae823e773536ee9b6cf97c575463f1a9902370d9 |
|
05-Oct-2012 |
Saurabh Shah <saurshah@codeaurora.org> |
hwc: more error checks -- numHwLayers==1 means that there is only the FB_TARGET which HWC shouldn't draw. Also check for blank in set. Checking for this in prepare prevents us from acquiring pipes. -- add null check for private handle -- print out vsync timestamp data on error bug: 7274417 related-to-bug: 7288769 Change-Id: I8dae0d0748c5226fdc33ed8f5cc5259835dec2de Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|
c7faa70f4a92f020f9d5df20a4ae4bb80be7a022 |
|
04-Oct-2012 |
Naseer Ahmed <naseer@codeaurora.org> |
hwc: move enable disable ioctls to vsync thread This patch stabilized the vsync signal. Bug: 7274951 Change-Id: Ieb6396c67d4dfb20cfde39a63a45ab6742d9ec5b Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|
eac8965bf481a17c6bca291c0864d0eb3c0eac07 |
|
04-Oct-2012 |
Iliyan Malchev <malchev@google.com> |
hwc: fix some race conditions Fix some race conditions between hwc_eventControl and the hwcVsyncThread. Bug: 7274951 Change-Id: Ic71d65918303b4cef6a379ff5397702b2b578373 Signed-off-by: Iliyan Malchev <malchev@google.com>
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|
ff4f0254be575a264504687c407e0db2fd5573d7 |
|
01-Oct-2012 |
Naseer Ahmed <naseer@codeaurora.org> |
hwcomposer : Use sysfs to read vysnc information * Read sysfs entries to get vsync timestamp from kernel. * External display continues to use uevents for hotplug events * A new thread, vsyncThread is created to read and send vsync timestamps to HAL. * Disable H/W VSYNC for MDP 5.x targets until kernel changes are complete. * Synchronization is needed to make sure read() is not called by hwcVsyncThread when VSYNC is disabled. Change-Id: Iab0a94a3cfce9142b8867859f2a7d9bcaecb0996 Acked-by: Neti Ravi Kumar <ravineti@codeaurora.org>
/hardware/qcom/display/libhwcomposer/hwc_vsync.cpp
|