OSDN Git Service

android-x86/frameworks-native.git
7 years agoSF: support higher resolutions
Chih-Wei Huang [Wed, 20 Jan 2016 18:25:52 +0000 (02:25 +0800)]
SF: support higher resolutions

Add support for Surface Pro 4.

7 years agoInputReader: add 5-point calibration
Chih-Wei Huang [Sat, 1 Nov 2014 17:21:12 +0000 (01:21 +0800)]
InputReader: add 5-point calibration

Updated for Android 5.0.

7 years agoauto determine the density if not provided in surfaceflinger
Chih-Wei Huang [Sun, 26 Oct 2014 07:39:53 +0000 (15:39 +0800)]
auto determine the density if not provided in surfaceflinger

We hope to support tablet UI for different resolutions.
So adjust the density according to the resolution.

7 years agoenable console management
Chih-Wei Huang [Sun, 26 Oct 2014 07:38:15 +0000 (15:38 +0800)]
enable console management

The console management was removed since ICS. But it's useful for debugging.
Re-implement it based on the original class ConsoleManagerThread of class
DisplayHardwareBase.

7 years agoSurfaceFlinger: Add NULL check for buffer handling
Praveena Pachipulusu [Thu, 21 Nov 2013 13:27:31 +0000 (18:57 +0530)]
SurfaceFlinger: Add NULL check for buffer handling

Add buffer handling NULL check in dequeueBuffer and
verify whether the output data from binder is not NULL
in queueBuffer and connect api's to avoid SF crash

CRs-Fixed: 573088
CRs-Fixed: 572315

Change-Id: I41cebbc0cbcbbb0fd5ecb38db7ec7b0c91cdffe9

7 years agoSurface: Initialize variable and add a defensive check
Rama Vaddula [Thu, 12 Sep 2013 21:09:32 +0000 (14:09 -0700)]
Surface: Initialize variable and add a defensive check

Initialize buf variable and make sure to check for return
value of dequeueBuffer() before sending to the client.

Change-Id: I0569f2d45825fab0e5d0f38fc91a07990f57c7ab
(cherry picked from commit a6bd7106a7305208f187fbf0a48f14139e33c9d6)
(cherry picked from commit e5d7662d68c5be2b282edd58d4feb68a4d476182)
(cherry picked from commit 885c146144480d4371a0a97df89b8e77f53d3d94)

7 years agoCheck fence is not NULL before dereferencing it
Lynus Vaz [Tue, 23 Jul 2013 12:49:02 +0000 (18:19 +0530)]
Check fence is not NULL before dereferencing it

If the fence obtained in dequeueBuffer is NULL, don't dereference it.
This will avoid a crash in surfaceflinger.

CRs-fixed: 516300
Change-Id: I3054dc37087103f3addae7884bb03460484a1eec
(cherry picked from commit ddf4adb487dc76ccb75fe2432772d6fc575ed77c)
(cherry picked from commit c6ae5271f9ced9a747e1481c2ef875ba03674172)
(cherry picked from commit cdad709878601eb694acbce7d3ae9f7a74bf14f3)

7 years agodisables hardware acceleration if debug.egl.hw=0
Chih-Wei Huang [Sun, 6 Jan 2013 08:56:00 +0000 (16:56 +0800)]
disables hardware acceleration if debug.egl.hw=0

7 years agoAdded option to disable touchscreen pressure sensitivity from idc files
Edward Peek [Tue, 3 Apr 2012 18:17:00 +0000 (06:17 +1200)]
Added option to disable touchscreen pressure sensitivity from idc files

7 years agoSupport old single-touch touchscreens with BTN_LEFT
DanielK [Tue, 20 Mar 2012 06:28:43 +0000 (14:28 +0800)]
Support old single-touch touchscreens with BTN_LEFT

7 years agoEnable 64-bit support in libs/gui/Sensor.cpp
Byron Gardner [Mon, 3 Nov 2014 23:54:28 +0000 (15:54 -0800)]
Enable 64-bit support in libs/gui/Sensor.cpp

Change-Id: Iaaa112bd821a6a0e3234461df8f7b6acc47b254e
Orig-Change-Id: I04c22e6f2c6f4271ca451b775c8d7f86e4c97c38
Tracked-On: https://jira01.devtools.intel.com/browse/IMINAN-9998
Category: aosp improvement
Domain: SENSORS.VIRT-Common
Origin: internal
Upstream-Candidate: yes
Signed-off-by: Byron Gardner <byron.gardner@intel.com>
Reviewed-on: https://android.intel.com:443/296325

7 years agoSurfaceFlinger: disable VSync thread if no clients requiring.
Wang, Yue A [Tue, 21 Jan 2014 09:42:13 +0000 (17:42 +0800)]
SurfaceFlinger: disable VSync thread if no clients requiring.

In EventThread, 2 VSYNCs are needed to do composition and update
the client status. So, a 30FPS video may leads to 60FPS VSYNC,
which means the DispSync thread would be waked 60FPS. This is a
unexpected behavior which takes more power consumption. Now we
update the SF status soon after the first VSYNC, which means no
extra VSYNC needed, and the DispSync could be awaked as expected,
and consequently power get saved.

Change-Id: If486eb9b87f109a71f71b510768f15dd733f1233
Orig-Change-Id: I1d3b166021e15a81b2ad770b039761fc2c15fddf
Tracked-On: https://jira01.devtools.intel.com/browse/IMINAN-12211
Category: aosp improvement
Domain: Graphics-SF
Origin: internal
Upstream-Candidate: yes
Signed-off-by: Wang, Yue A <yue.a.wang@intel.com>
Reviewed-on: https://android.intel.com:443/238344

7 years agoSet PS2 Keyboard controller as not a ketboard type
juntingwang [Fri, 1 Mar 2013 08:02:56 +0000 (16:02 +0800)]
Set PS2 Keyboard controller as not a ketboard type

The Eventhub detects the platforms built-in PS/2 keyboard controller
as a physical keyboard. So the system will not display the software
keyboard by default. Modify it device type in Keyboard-less tablets,
so that ActivityManager will not ignore the PS/2 controller.

Issue: AXIA-1875

Change-Id: Ia5b7592e82aaf1970066bab5e9ca5f46ac83ab1c
Signed-off-by: juntingwang <Junting.Wang@windriver.com>
7 years agobinder: Fix service initialization race vs. service manager
Andy Ross [Tue, 19 Feb 2013 22:39:34 +0000 (14:39 -0800)]
binder: Fix service initialization race vs. service manager

The framework relies on the global IServiceManager running before a
BinderService object is instantiated.  But there was no detection of
the error condition when it was not (specifically: mediaserver can be
initialized before system_server), and in fact the default error
behavior (kill the proxy object) ensured that the process would never
be able to add services again.  Retry the addService() code, and allow
transient binder failures for the special case of the service manager
proxy.

Issue: AXIA-1706
Change-Id: Icac10bb0f47a2fe33ac9605a13633b83afa3ebff
Signed-off-by: Andy Ross <andy.ross@windriver.com>
7 years agoPrevent EventHub from adding input device twice
Daniel Leung [Thu, 13 Sep 2012 20:43:41 +0000 (13:43 -0700)]
Prevent EventHub from adding input device twice

When Android first starts up, it scans /dev/input for input devices.
In some rare instances, the EventHub gets another notification that
some device nodes are created. It then proceeds to add the same
input device again. This causes the system to get two events per
touch or key stroke.

This adds a check to prevent adding the same device if the operation
is triggerd by inotify.

Issue: AXIA-858
Change-Id: I68b02594f1c7f14067611735db0b3763378ec7ea
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
7 years agoegl_extensions: remove force of extension not supported
Daniel Charles [Fri, 13 Jul 2012 23:11:49 +0000 (16:11 -0700)]
egl_extensions: remove force of extension not supported

This problem was introduced by commit 48d438d05f14c.

When the extension GL_EXT_debug_marker is not supported by h/w
the dummy version is used already. Whenever the h/w is ready
to support the extension it will show up and be used by the
OpenGLRenderer.

Change-Id: Iddb58859b187d872a9a3a2986d30f24b8f83e76b
Signed-off-by: Daniel Charles <daniel.charles@intel.com>
7 years agoPre-test native window pointer for validity
Paul Drews [Wed, 18 Jan 2012 19:01:49 +0000 (11:01 -0800)]
Pre-test native window pointer for validity

This fixes a segfault in the oglconform tests when running
the test:

  adb shell /data/app/oglconform -v 4 -minFmt -es -test egl-basic negative.drawables.winSurfBadWin

According the the egl specification this should return
EGL_BAD_NATIVE_WINDOW.  The segfault was resulting from the
fact that the window handle is a (cast to opaque) pointer,
and there are not straightforward ways of pre-testing a
pointer for validity.  The fix implemented here is:

  () Take advantage of the msync() system-call logic to test
     pre-test basic pointer validity
  () Once confirmed that we can reference through the
     pointer, look for the "magic" value dropped in by the
     implementation to mark this type at runtime.

Change-Id: Id7d21c822c8a416e45caba25c63d7076d1e547a5
Original-Change-Id: I3c8df8ef5ece5c0fa71c47417766b5453c355f8b
Signed-off-by: Russell Webb <russell.webb@intel.com>
Signed-off-by: Paul Drews <paul.drews@intel.com>
7 years agoegl: Add NULL check for eglGetconfigs num_config parameter
Pauli Nieminen [Wed, 4 Jan 2012 14:25:10 +0000 (16:25 +0200)]
egl: Add NULL check for eglGetconfigs num_config parameter

EGL 1.4 specification says in 3.4.1:
"An EGL_BAD_PARAMETER error is generated if num config is NULL."

We have to check for the condition and return the required error to
application.

Change-Id: Ib42709f0420161ce661536394d4c0779bc62be57
Original-Change-Id: I4fe670c4362f4ae494f91d69ae105e29ccf3c769
Signed-off-by: Pauli Nieminen <pauli.nieminen@linux.intel.com>
7 years agoFix build problem when including hal and egl to same c file
Pauli Nieminen [Tue, 15 Nov 2011 18:33:05 +0000 (20:33 +0200)]
Fix build problem when including hal and egl to same c file

If including hal and egl headers to same c file compilation files
because ANativeWindow type is defined in two headers. In HC egl didn't
include system/core/include/system/window.h which hid the type conflict.

Change-Id: Icaf7b29f913f3d7fa8f6d70bb196585d22e7d05c
Original-Change-Id: Icd37329d80fb4e8b9baf9015c9b00e43ebc4f76b
Signed-off-by: Pauli Nieminen <pauli.nieminen@linux.intel.com>
7 years agosurfaceflinger: Fix the fix of the opaque check fix
Steve Kondik [Sun, 24 Jul 2016 23:19:39 +0000 (16:19 -0700)]
surfaceflinger: Fix the fix of the opaque check fix

 * Use the right define.

Change-Id: I78e2aea4bf4ff933ec828cffee1a3e925622ad31

7 years agoSF: Fix NULL pointer dereferencing in dumpDrawCycle()
Ramkumar Radhakrishnan [Thu, 19 May 2016 01:56:05 +0000 (18:56 -0700)]
SF: Fix NULL pointer dereferencing in dumpDrawCycle()

Check for NULL before dereferencing a pointer in dumpDrawCycle()

Change-Id: I1f06214577d0065c988877acb0f1b4378080690f
CRs-Fixed: 1018335

7 years agoSF: Add support for all flips of panel mount
Saurabh Shah [Tue, 22 Mar 2016 00:25:23 +0000 (17:25 -0700)]
SF: Add support for all flips of panel mount

Add support for all flips of panel mount, H, V, HV (180). Property
persist.panel.mountflip can be set to 1 for H-Flip, 2 for V-Flip,
3 for HV-Flip (180 / inverse mount).

Change-Id: Ide7b8378ad6a423e5d7335fedc27d480a25b53ae
CRs-fixed: 990622

7 years agoDO NOT MERGE: dumpstate: execute procrank using su
Nick Kralevich [Wed, 7 Oct 2015 23:38:42 +0000 (16:38 -0700)]
DO NOT MERGE: dumpstate: execute procrank using su

procrank is a setuid binary which only exists on userdebug/eng
builds. Instead of executing the setuid binary, run the binary using
the su command. This eliminates one more setuid binary, and allows
the tightening of the SELinux policy.

Bug: 18342188

(cherry picked from commit 2b1f88b6ac78e330ff006da6fecf8bc9d976ec67)
Bug: 25951005

Change-Id: I90c86f89974b3878273a29277b2a5d5d7c4b81c7

7 years agoSF: more DispSync improvements.
Haixia Shi [Wed, 28 Oct 2015 23:19:01 +0000 (16:19 -0700)]
SF: more DispSync improvements.

Pass the reference time to DispSyncThread. Since the phase offset is calculated
using timestamps relative to the reference time, we must also adjust the phase
offset by the same reference time when computing the next refresh time.

Always reset phase offset to zero when updating the reference time because the
reference time equals the first timestamp.

After beginResync() we need to keep HW vsync enabled until the model is updated.

Bug: 25113115
Change-Id: I8eae227bee91c24a99bf8e57fbebceb98d29c77d
Test: check in systrace that app/sf vsync events have correct phase

7 years agoSF: use first sample timestamp as reference.
Haixia Shi [Wed, 28 Oct 2015 20:22:22 +0000 (13:22 -0700)]
SF: use first sample timestamp as reference.

Do not use the absolute 64-bit nsecs_t timestamp directly in phase
and error calculations. Compared to the estimated vsync period, the
timestamp tend to many orders of magnitudes larger, and consequently
the integer modulo operation used to calculate phase and error can
be very sensitive to tiny fluctuation in vsync period.

Bug: 25113115
Test: set kTraceDetailedInfo=true; see Phase and Error are stable in systrace

Change-Id: I687703eec31b1072c606898c0424a96c0a8ca033

7 years agosf: Fix blending mode for legacy BSP
Arne Coucheron [Tue, 19 Jul 2016 22:46:07 +0000 (00:46 +0200)]
sf: Fix blending mode for legacy BSP

 * After 0c5f3af, glitches when blending is observed on
   A family devices. Modify ifdef to not include QCOM_BSP_LEGACY.

Change-Id: Ibb53df5709abbb0e7132065aec23a14f7accf4b3

7 years agosystem_server BINDER_TYPE_FD driver ashmem accessors
Mark Salyzyn [Tue, 2 Feb 2016 18:27:03 +0000 (10:27 -0800)]
system_server BINDER_TYPE_FD driver ashmem accessors

check if device matches the ashmem rdev, before calling
ashmem_get_size_region. This eliminates making this call
when associated with other driver file descriptors.

Bug: 26374183
Bug: 26918423
Bug: 26871259
Change-Id: I1f88c2c93ea35a73c8e14125f3d1a6c67fa4f15b

7 years agosystem_server BINDER_TYPE_FD sockets using ashmem accessors
Mark Salyzyn [Wed, 27 Jan 2016 16:02:48 +0000 (08:02 -0800)]
system_server BINDER_TYPE_FD sockets using ashmem accessors

check if device is a character device, before calling
ashmem_get_size_region. We do not check if the st_rdev
matches /dev/ashmem. So this at least eliminates making
this call when associated with a socket.

Bug: 26374183
Change-Id: I68ed9d1c2cd4c47228ed065e3e18eb4151f038f4

7 years agoParcel: file descriptor leak
Mark Salyzyn [Wed, 27 Jan 2016 16:02:48 +0000 (08:02 -0800)]
Parcel: file descriptor leak

Resolve a file descriptor leak when a request for
ashmem size adjustment is not filed.

Change-Id: I4ebccfd096ec5313725fd99dc3e025f9561d061f

7 years agosf: Make sure HWC_BLENDING_NONE is set for opaque layer
radhakrishna [Fri, 31 Oct 2014 10:18:14 +0000 (15:48 +0530)]
sf: Make sure HWC_BLENDING_NONE is set for opaque layer

Before configuring the layers to HWC, make sure
HWC_BLENDING_NONE is set if the layer is opaque

Change-Id: Ie84aa9d93e98a244692a0cffc2de653a9079f8b4
Crs-fixed: 957373

7 years agoMerge remote-tracking branch 'remotes/android-6.0.1_r52' into HEAD
Jessica Wagantall [Thu, 7 Jul 2016 18:51:12 +0000 (11:51 -0700)]
Merge remote-tracking branch 'remotes/android-6.0.1_r52' into HEAD

Ticket: CYNGNOS-3020

Change-Id: I13076de5caf1546b8eef44417ee83cd9b2cb9d62

7 years agosf: Only apply hwrotation to primary displays
Christopher N. Hesse [Fri, 17 Jun 2016 14:10:21 +0000 (16:10 +0200)]
sf: Only apply hwrotation to primary displays

Change-Id: Ib51030cec5ce7609f12be9a5e46310f75442b680

7 years agoMerge tag 'android-6.0.1_r46' into HEAD
Jessica Wagantall [Tue, 7 Jun 2016 17:10:09 +0000 (10:10 -0700)]
Merge tag 'android-6.0.1_r46' into HEAD

Android 6.0.1 release 46

# gpg: Signature made Mon 06 Jun 2016 10:38:23 AM PDT using DSA key ID 9AB10E78
# gpg: Can't check signature: public key not found

8 years agoAdd dalvik heap/hwui overrides for xxxhdpi phone with 4096MB RAM
Louis Popi [Wed, 4 May 2016 18:17:24 +0000 (20:17 +0200)]
Add dalvik heap/hwui overrides for xxxhdpi phone with 4096MB RAM

Change-Id: I8e7bd9b520c20e0cd07c9b17d74e4ae79f2769b4

8 years agoCorrectly handle dup() failure in Parcel::readNativeHandle
Marco Nelissen [Tue, 26 Apr 2016 15:44:09 +0000 (08:44 -0700)]
Correctly handle dup() failure in Parcel::readNativeHandle

bail out if dup() fails, instead of creating an invalid native_handle_t

Bug: 28395952

Change-Id: Ia1a6198c0f45165b9c6a55a803e5f64d8afa0572

8 years agodumpstate: add CM version to output
Scott Mertz [Wed, 25 May 2016 22:50:02 +0000 (15:50 -0700)]
dumpstate: add CM version to output

Change-Id: Ibd804872d7d32ac1d26efaf30927a2359d2da287

8 years agoAdd dalvik heap/hwui overrides for xxhdpi phone with 3072MB RAM
Louis Popi [Wed, 11 May 2016 20:48:52 +0000 (22:48 +0200)]
Add dalvik heap/hwui overrides for xxhdpi phone with 3072MB RAM

Change-Id: I0ebf2033341e8f09004c1e2dec5f4438aa52e5dc

8 years agoSurfaceFlinger : Ensure position changes are drawn with correct buffer size
Danesh M [Fri, 6 May 2016 07:11:27 +0000 (00:11 -0700)]
SurfaceFlinger : Ensure position changes are drawn with correct buffer size

If a single transaction has both positional and size changes, ensure we don't draw
any frames using the incorrect buffer size using the updated position. Wait for the correct
buffer size and then proceed.

Change-Id: I8e25f21f17e0936e66bb5053f85f8336c8464c7b

8 years agoMerge tag 'android-6.0.1_r43' into HEAD
Jessica Wagantall [Tue, 3 May 2016 18:38:50 +0000 (11:38 -0700)]
Merge tag 'android-6.0.1_r43' into HEAD

Ticket: CYNGNOS-2373
Android 6.0.1 release 43 (MOB30J)

Change-Id: I1d6a9cc67ded5dd7d0ee1f17773e326ac0ae87ce

8 years agosurfaceflinger: Add support for Exynos BGRA mixer
Christopher N. Hesse [Sun, 24 Apr 2016 17:30:35 +0000 (19:30 +0200)]
surfaceflinger: Add support for Exynos BGRA mixer

Change-Id: Ibc9f784b35a7bd6d8cc6b13ff68b12418cce98c5

8 years agoAdd new MotionEvent flag for partially obscured windows.
Michael Wright [Tue, 22 Mar 2016 23:52:13 +0000 (16:52 -0700)]
Add new MotionEvent flag for partially obscured windows.

Due to more complex window layouts resulting in lots of overlapping
windows, the policy around FLAG_WINDOW_IS_OBSCURED has changed to
only be set when the point at which the window was touched is
obscured. Unfortunately, this doesn't prevent tapjacking attacks that
overlay the dialog's text, making a potentially dangerous operation
seem innocuous. To avoid this on particularly sensitive dialogs,
introduce a new flag that really does tell you when your window is
being even partially overlapped.

We aren't exposing this as API since we plan on making the original
flag more robust. This is really a workaround for system dialogs
since we generally know their layout and screen position, and that
they're unlikely to be overlapped by other applications.

Bug: 26677796
Change-Id: I9e336afe90f262ba22015876769a9c510048fd47

8 years agosensorservice: fix an invalid format string
Khalid Zubair [Wed, 20 Apr 2016 21:13:35 +0000 (14:13 -0700)]
sensorservice: fix an invalid format string

Change-Id: Ib41bca95e6be7831c5ce77bceaf6a3d9f8b37d41

8 years agosensorservice: add power usage to dumpsys
Khalid Zubair [Tue, 19 Apr 2016 17:46:48 +0000 (10:46 -0700)]
sensorservice: add power usage to dumpsys

Include each sensor's power usage info in the per-sensor dumpsys
info section.

Change-Id: If10535d1e7fe6a35d9385ce2e6083a4c5188a06d

8 years agoMerge tag 'android-6.0.1_r30' into HEAD
Jessica Wagantall [Mon, 18 Apr 2016 18:14:35 +0000 (11:14 -0700)]
Merge tag 'android-6.0.1_r30' into HEAD

Ticket: RM-234
Android 6.0.1 release 30

8 years agosurfaceflinger: Add support for secondary color matrix
Steve Kondik [Tue, 12 Apr 2016 20:14:26 +0000 (13:14 -0700)]
surfaceflinger: Add support for secondary color matrix

 * Add a new binder transaction for applying a secondary color matrix
   using RenderEngine. This stacks with the primary color matrix
   (if set for a11y) to enable GPU-based display calibration.

Change-Id: I766455bfb5212e2dcc8ad0cb8ebdddbda87af732

8 years agoMerge tag 'android-6.0.1_r24' into HEAD
Jessica Wagantall [Tue, 5 Apr 2016 19:31:30 +0000 (12:31 -0700)]
Merge tag 'android-6.0.1_r24' into HEAD

Ticket: CYNGNOS-2213
Android 6.0.1 release 24

8 years agoFix issue #27252896: Security Vulnerability -- weak binder
Dianne Hackborn [Mon, 21 Mar 2016 17:36:54 +0000 (10:36 -0700)]
Fix issue #27252896: Security Vulnerability -- weak binder

Sending transaction to freed BBinder through weak handle
can cause use of a (mostly) freed object.  We need to try to
safely promote to a strong reference first.

Change-Id: Ic9c6940fa824980472e94ed2dfeca52a6b0fd342
(cherry picked from commit c11146106f94e07016e8e26e4f8628f9a0c73199)

8 years agoBQ: fix some uninitialized variables
Pablo Ceballos [Wed, 16 Mar 2016 01:10:49 +0000 (18:10 -0700)]
BQ: fix some uninitialized variables

Bug 27555981
Bug 27556038

Change-Id: I436b6fec589677d7e36c0e980f6e59808415dc0e

8 years agomerge in mnc-dr1.5-release history after reset to mnc-dr1.5-dev
The Android Automerger [Tue, 22 Mar 2016 22:47:49 +0000 (15:47 -0700)]
merge in mnc-dr1.5-release history after reset to mnc-dr1.5-dev

8 years agomerge in mnc-dr1.5-release history after reset to mnc-dr1.5-dev
The Android Automerger [Fri, 18 Mar 2016 01:36:43 +0000 (18:36 -0700)]
merge in mnc-dr1.5-release history after reset to mnc-dr1.5-dev

8 years agovds: Allocate Framebuffer target buffer
Manoj Kumar AVM [Thu, 14 Jan 2016 03:10:20 +0000 (19:10 -0800)]
vds: Allocate Framebuffer target buffer

Increase frame buffer surface buffers to 3. Call allocateBuffers
from the producer so that buffers are allocated. With out this,
BufferQueue implementation will only allocate 1 buffer

CRs-Fixed: 930504
@Buganizer: 26778657
Change-Id: Id0cadeb78957273d670d63f9956a09454b45eb69

8 years agoSurfaceFlinger: Add support for continuous dumpsys to file.
Dileep Marchya [Thu, 3 Dec 2015 22:39:35 +0000 (14:39 -0800)]
SurfaceFlinger: Add support for continuous dumpsys to file.

- Collect dumpsys to an outfile file when triggered.
- Collect dumpsys before calling Prepare on hwc module in
  each draw cycle. Recollect dumpsys if Commit goes through
  successfully and replace former dumpsys with this.
- Wrap around if file size reaches appx 20 MB.
- Generate output file at /data/misc/display/dumpsys.txt
- Syntax:
      adb shell dumpsys SurfaceFlinger --file [--no-limit]
          --file : Ouput dumpsys to file
          --no-limit : Do not wrap around, keep appending

      Use same command to trigger start and end of dumping.
- Output format:
      | start code | after commit? | time stamp | dump size | dump data |

CRs-Fixed: 947084

Change-Id: Ie520f51c69757aeec88b9400688a7f3271472349

8 years agosf: ex-sf: Remove screenshot surface from secondary displays
Arun Kumar K.R [Thu, 17 Dec 2015 21:36:49 +0000 (13:36 -0800)]
sf: ex-sf: Remove screenshot surface from secondary displays

- When rotation animation is disabled on secondary displays, remove
  the screenshot surface from the secondary display list, without
  this it would show up upside down frame on secondary.
- Mark IntOnly layers as invisible on secondary displays.

Change-Id: Ia859ee1c6ac7caa132c95e4f906bd2589e786fac
Crs-fixed: 949263

8 years agoMerge tag 'android-6.0.1_r22' of https://android.googlesource.com/platform/frameworks...
Steve Kondik [Fri, 11 Mar 2016 02:17:45 +0000 (18:17 -0800)]
Merge tag 'android-6.0.1_r22' of https://android.googlesource.com/platform/frameworks/native into cm-13.0

Android 6.0.1 release 22

8 years agoMerge tag 'android-6.0.1_r17' into HEAD
Jessica Wagantall [Tue, 8 Mar 2016 02:12:29 +0000 (18:12 -0800)]
Merge tag 'android-6.0.1_r17' into HEAD

Android 6.0.1 release 17
Ticket: CYNGNOS-1854

8 years agoAdd SN logging
Pablo Ceballos [Sat, 20 Feb 2016 19:26:13 +0000 (11:26 -0800)]
Add SN logging

Bug 27046057

Change-Id: Iede7c92e59e60795df1ec7768ebafd6b090f1c27

8 years agoSanity check IMemory access versus underlying mmap
Christopher Tate [Sat, 6 Feb 2016 03:02:56 +0000 (19:02 -0800)]
Sanity check IMemory access versus underlying mmap

Bug 26877992

Change-Id: Ibbf4b1061e4675e4e96bc944a865b53eaf6984fe

8 years agoBQ: Add permission check to BufferQueueConsumer::dump
Pablo Ceballos [Fri, 12 Feb 2016 02:01:49 +0000 (18:01 -0800)]
BQ: Add permission check to BufferQueueConsumer::dump

Bug 27046057

Change-Id: Id7bd8cf95045b497943ea39dde49e877aa6f5c4e

8 years agosurfaceflinger: Use only one EventThread when phase offsets are same.
Omprakash Dhyade [Fri, 5 Feb 2016 22:54:08 +0000 (14:54 -0800)]
surfaceflinger: Use only one EventThread when phase offsets are same.

SurfaceFlinger uses two event-threads to support phase-offsets
for application and SurfaceFlinger itself. Extra thread may
cause scheduling issues and wake-up latency for either
SurfaceFlinger or Application, depending on scheduling, even
when running at higher priority as these threads have low-load
and qualify for task-packing.

Use single event-thread when phase offsets are same.

Debug runtime service call behavior change when same phase-offset:
1018 (set phase offset for Application): will change both
Application and SurfaceFlinger phase offsets.
1019 (set phase offset for SurfaceFlinger): Will be a no-op.

Change-Id: I2514b4ff6249e9bce3eb19f60b1dfe0de12b86d9

8 years agoAdd SN logging
Pablo Ceballos [Sat, 20 Feb 2016 19:26:13 +0000 (11:26 -0800)]
Add SN logging

Bug 27046057

Change-Id: Iede7c92e59e60795df1ec7768ebafd6b090f1c27

8 years agoSanity check IMemory access versus underlying mmap
Christopher Tate [Sat, 6 Feb 2016 03:02:56 +0000 (19:02 -0800)]
Sanity check IMemory access versus underlying mmap

Bug 26877992

Change-Id: Ibbf4b1061e4675e4e96bc944a865b53eaf6984fe

8 years agoBQ: Add permission check to BufferQueueConsumer::dump
Pablo Ceballos [Fri, 12 Feb 2016 02:01:49 +0000 (18:01 -0800)]
BQ: Add permission check to BufferQueueConsumer::dump

Bug 27046057

Change-Id: Id7bd8cf95045b497943ea39dde49e877aa6f5c4e

8 years agobinder: MemoryHeapIon: Fix size_t vs integer formatting mismatch
Christopher N. Hesse [Sat, 20 Feb 2016 02:05:53 +0000 (03:05 +0100)]
binder: MemoryHeapIon: Fix size_t vs integer formatting mismatch

Change-Id: I58e4ce885bce5fc11f3e36f50a1060b682b4a512

8 years agosurfaceflinger: Don't allow QC HWC virtual display without QC HWC copy
Ethan Chen [Thu, 11 Feb 2016 01:12:02 +0000 (17:12 -0800)]
surfaceflinger: Don't allow QC HWC virtual display without QC HWC copy

* QC media encoder appears to be incapable of switching between RGBA8888
  buffers and NV12_ENCODEABLE dynamically. This requires that we switch
  the entire stack to use the QC opaque format, or RGBA8888.

REF: CRACKLING-938
Change-Id: Ibd6a8faf8d268d3bfb4d61e4118a778ed82f1ab5

8 years agosurfaceflinger: Correct QTI_BSP ifdef
Ethan Chen [Thu, 11 Feb 2016 01:06:54 +0000 (17:06 -0800)]
surfaceflinger: Correct QTI_BSP ifdef

* Should be #ifdef, not #if

REF: CRACKLING-938
Change-Id: Iaa203413eaf404ba03ba2eb640f6ca93fd8c901d

8 years agoIGraphicBufferProducer: fix QUEUE_BUFFER info leak
Robert Shih [Mon, 11 Jan 2016 23:02:12 +0000 (15:02 -0800)]
IGraphicBufferProducer: fix QUEUE_BUFFER info leak

Bug: 26338109
Change-Id: I8a979469bfe1e317ebdefa43685e19f9302baea8

8 years agoIGraphicBufferConsumer: fix ATTACH_BUFFER info leak
Robert Shih [Mon, 11 Jan 2016 19:42:48 +0000 (11:42 -0800)]
IGraphicBufferConsumer: fix ATTACH_BUFFER info leak

Bug: 26338113
Change-Id: I019c4df2c6adbc944122df96968ddd11a02ebe33

8 years agoThemes: Reference app resource when compiling theme [1/2]
d34d [Tue, 19 Jan 2016 03:41:38 +0000 (19:41 -0800)]
Themes: Reference app resource when compiling theme [1/2]

This allows us to pass in the path to the target apk as an additional
included resource apk, allowing theme designers to reference styles
and attributes from the original package without needing to duplicate
them.  Duplicating attributes never worked quite well, and causes
all sorts of issues, including crashing apps.

Instead of a theme declaring attributes, that are app specific, it
simply reference the originals.  This way things like colors that
are style specific get included correctly.

Here's an example of stat_sys_wifi_signal_4_fully.xml using this feature.
By using ?com.android.systemui:attr/ we are able to reference attributes
defined in SystemUI directly in our themed resource.

<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:width="17.25dp"
    android:height="18dp"
    android:viewportWidth="46.0"
    android:viewportHeight="48.0">

    <path
        android:fillColor="?com.android.systemui:attr/backgroundColor"
        android:pathData="M20.4,18.0"/>
    <path
        android:fillColor="?com.android.systemui:attr/fillColor"
        android:pathData="M42.0,32.0l0.0,-4.0L26.0,18.0L26.0,7.0c0.0,-1.7 -1.3,-3.0 -3.0,
        -3.0c-1.7,0.0 -3.0,1.3 -3.0,3.0l0.0,11.0L4.0,28.0l0.0,4.0l16.0,-5.0l0.0,11.0l-4.0,
        3.0l0.0,3.0l7.0,-2.0l7.0,2.0l0.0,-3.0l-4.0,-3.0L26.0,27.0L42.0,32.0z"/>
</vector>

Change-Id: Ic00b5d91fc651a29a8c3ab341e5494107acd0463
TICKET: CYNGNOS-1645

8 years agoIGraphicBufferProducer: fix QUEUE_BUFFER info leak am: d06421fd37 am: 413318311c...
Robert Shih [Fri, 15 Jan 2016 01:58:27 +0000 (01:58 +0000)]
IGraphicBufferProducer: fix QUEUE_BUFFER info leak am: d06421fd37 am: 413318311c am: dc9ec35294 am: 9d959e2755 am: edb7c81a1b am: 2a7a1247cb am: 40ba03fc68
am: ea2b6c68e1

* commit 'ea2b6c68e14b918972b1390765fdf4f748b49ba2':
  IGraphicBufferProducer: fix QUEUE_BUFFER info leak

8 years agoIGraphicBufferProducer: fix QUEUE_BUFFER info leak am: d06421fd37 am: 413318311c...
Robert Shih [Fri, 15 Jan 2016 01:56:25 +0000 (01:56 +0000)]
IGraphicBufferProducer: fix QUEUE_BUFFER info leak am: d06421fd37 am: 413318311c am: dc9ec35294 am: 9d959e2755 am: edb7c81a1b am: 2a7a1247cb
am: 40ba03fc68

* commit '40ba03fc68e6c234bb8604784716cb2481ad1c67':
  IGraphicBufferProducer: fix QUEUE_BUFFER info leak

8 years agoIGraphicBufferProducer: fix QUEUE_BUFFER info leak am: d06421fd37 am: 413318311c...
Robert Shih [Fri, 15 Jan 2016 01:54:27 +0000 (01:54 +0000)]
IGraphicBufferProducer: fix QUEUE_BUFFER info leak am: d06421fd37 am: 413318311c am: dc9ec35294 am: 9d959e2755 am: edb7c81a1b
am: 2a7a1247cb

* commit '2a7a1247cb4829daaaa4e6a6ee3e670cd2f068bf':
  IGraphicBufferProducer: fix QUEUE_BUFFER info leak

8 years agoIGraphicBufferConsumer: fix ATTACH_BUFFER info leak am: dded8fdbb7 am: 7ee203b59d...
Robert Shih [Fri, 15 Jan 2016 01:52:25 +0000 (01:52 +0000)]
IGraphicBufferConsumer: fix ATTACH_BUFFER info leak am: dded8fdbb7 am: 7ee203b59d am: dc252255af am: 202aaa8f97 am: ec87aa5218
am: c5cb7c489b

* commit 'c5cb7c489bcc3a52abdd4d02fb353b0a7b8557eb':
  IGraphicBufferConsumer: fix ATTACH_BUFFER info leak

8 years agoIGraphicBufferProducer: fix QUEUE_BUFFER info leak am: d06421fd37 am: 413318311c...
Robert Shih [Fri, 15 Jan 2016 01:52:25 +0000 (01:52 +0000)]
IGraphicBufferProducer: fix QUEUE_BUFFER info leak am: d06421fd37 am: 413318311c am: dc9ec35294 am: 9d959e2755
am: edb7c81a1b

* commit 'edb7c81a1b99d2456910b03db9e4ac250eac2fab':
  IGraphicBufferProducer: fix QUEUE_BUFFER info leak

8 years agoIGraphicBufferConsumer: fix ATTACH_BUFFER info leak am: dded8fdbb7 am: 7ee203b59d...
Robert Shih [Fri, 15 Jan 2016 01:50:22 +0000 (01:50 +0000)]
IGraphicBufferConsumer: fix ATTACH_BUFFER info leak am: dded8fdbb7 am: 7ee203b59d am: dc252255af am: 202aaa8f97
am: ec87aa5218

* commit 'ec87aa52189d5d3bbf5df214ab099d5de9f5836c':
  IGraphicBufferConsumer: fix ATTACH_BUFFER info leak

8 years agoIGraphicBufferProducer: fix QUEUE_BUFFER info leak am: d06421fd37 am: 413318311c...
Robert Shih [Fri, 15 Jan 2016 01:50:22 +0000 (01:50 +0000)]
IGraphicBufferProducer: fix QUEUE_BUFFER info leak am: d06421fd37 am: 413318311c am: dc9ec35294
am: 9d959e2755

* commit '9d959e275561bcace3aab1f9df009c6c880003fa':
  IGraphicBufferProducer: fix QUEUE_BUFFER info leak

8 years agoIGraphicBufferConsumer: fix ATTACH_BUFFER info leak am: dded8fdbb7 am: 7ee203b59d...
Robert Shih [Fri, 15 Jan 2016 01:48:17 +0000 (01:48 +0000)]
IGraphicBufferConsumer: fix ATTACH_BUFFER info leak am: dded8fdbb7 am: 7ee203b59d am: dc252255af
am: 202aaa8f97

* commit '202aaa8f97083b68c0a736f4cd432f61c9b0989d':
  IGraphicBufferConsumer: fix ATTACH_BUFFER info leak

8 years agoIGraphicBufferConsumer: fix ATTACH_BUFFER info leak am: dded8fdbb7 am: 7ee203b59d
Robert Shih [Fri, 15 Jan 2016 01:45:18 +0000 (01:45 +0000)]
IGraphicBufferConsumer: fix ATTACH_BUFFER info leak am: dded8fdbb7 am: 7ee203b59d
am: dc252255af

* commit 'dc252255af835bb3a69bc9a0d01da12419c0fc05':
  IGraphicBufferConsumer: fix ATTACH_BUFFER info leak

8 years agoIGraphicBufferProducer: fix QUEUE_BUFFER info leak am: d06421fd37 am: 413318311c
Robert Shih [Fri, 15 Jan 2016 01:45:18 +0000 (01:45 +0000)]
IGraphicBufferProducer: fix QUEUE_BUFFER info leak am: d06421fd37 am: 413318311c
am: dc9ec35294

* commit 'dc9ec35294b8ec6b6c349b826edc9b44f4ddb96d':
  IGraphicBufferProducer: fix QUEUE_BUFFER info leak

8 years agoIGraphicBufferConsumer: fix ATTACH_BUFFER info leak am: dded8fdbb7
Robert Shih [Fri, 15 Jan 2016 01:43:05 +0000 (01:43 +0000)]
IGraphicBufferConsumer: fix ATTACH_BUFFER info leak am: dded8fdbb7
am: 7ee203b59d

* commit '7ee203b59d9a74d485ce2fdfd07e96b2d10ff23b':
  IGraphicBufferConsumer: fix ATTACH_BUFFER info leak

8 years agoIGraphicBufferProducer: fix QUEUE_BUFFER info leak am: d06421fd37
Robert Shih [Fri, 15 Jan 2016 01:38:56 +0000 (01:38 +0000)]
IGraphicBufferProducer: fix QUEUE_BUFFER info leak am: d06421fd37
am: 413318311c

* commit '413318311c8cc356dd7e0837ce26e937a9f4c56a':
  IGraphicBufferProducer: fix QUEUE_BUFFER info leak

8 years agoIGraphicBufferProducer: fix QUEUE_BUFFER info leak
Robert Shih [Fri, 15 Jan 2016 01:27:23 +0000 (01:27 +0000)]
IGraphicBufferProducer: fix QUEUE_BUFFER info leak
am: d06421fd37

* commit 'd06421fd37fbb7fd07002e6738fac3a223cb1a62':
  IGraphicBufferProducer: fix QUEUE_BUFFER info leak

8 years agoIGraphicBufferConsumer: fix ATTACH_BUFFER info leak
Robert Shih [Fri, 15 Jan 2016 01:26:59 +0000 (01:26 +0000)]
IGraphicBufferConsumer: fix ATTACH_BUFFER info leak
am: dded8fdbb7

* commit 'dded8fdbb700d6cc498debc69a780915bc34d755':
  IGraphicBufferConsumer: fix ATTACH_BUFFER info leak

8 years agoRevert "inputflinger: Initial support for rotary encoders."
Prashant Malani [Wed, 13 Jan 2016 18:44:11 +0000 (18:44 +0000)]
Revert "inputflinger: Initial support for rotary encoders."
am: d983fd11d4

* commit 'd983fd11d4a00b03f92d09f32c08840e66d90777':
  Revert "inputflinger: Initial support for rotary encoders."

8 years agoRevert "inputflinger: Add support for scaling and true value reporting"
Prashant Malani [Wed, 13 Jan 2016 18:44:02 +0000 (18:44 +0000)]
Revert "inputflinger: Add support for scaling and true value reporting"
am: 2c09b78656

* commit '2c09b78656dd97727f94fada81845b133cf142f3':
  Revert "inputflinger: Add support for scaling and true value reporting"

8 years agoRevert "inputflinger: Initial support for rotary encoders."
Prashant Malani [Wed, 13 Jan 2016 09:00:25 +0000 (01:00 -0800)]
Revert "inputflinger: Initial support for rotary encoders."

This reverts commit ac72bbf4e46d6689070df09a25db2960a9036eb2.

8 years agoRevert "inputflinger: Add support for scaling and true value reporting"
Prashant Malani [Wed, 13 Jan 2016 09:00:08 +0000 (01:00 -0800)]
Revert "inputflinger: Add support for scaling and true value reporting"

This reverts commit ee03865fe5fc6ffe9deda0e0870a18206027cfaf.

8 years agoinputflinger: Add support for scaling and true value reporting
Prashant Malani [Wed, 13 Jan 2016 05:33:57 +0000 (05:33 +0000)]
inputflinger: Add support for scaling and true value reporting
am: ee03865fe5

* commit 'ee03865fe5fc6ffe9deda0e0870a18206027cfaf':
  inputflinger: Add support for scaling and true value reporting

8 years agoinputflinger: Add support for scaling and true value reporting
Prashant Malani [Tue, 12 Jan 2016 01:08:18 +0000 (17:08 -0800)]
inputflinger: Add support for scaling and true value reporting

-1/+1 somewhat simplifies the values that can be generated by rotary
encoders, and rules out the possibility of batching and more nuanced
movement reporting.

So, we modify the device configuration to allow values other than -1 and
1 to be supported. In order to give the developer a sense of what these
values map to in terms of angular displacement, we also parse a
resolution configuration from the devices IDC file.

This will be specified as:

device.res = xxxx

of type float. If a value is not provided, a default res value of 0.0f
is used.

This patch also adds a per device scaling factor, which is used to
suitably modify the values reported (as well as the resolution) to tune
the input events generated and resulting UI according to the hardware.
This can be specified in the IDC file as:

device.scalingFactor = xxxx

of type float. If a scaling factor is not provided, a default of 1.0f
is used.

Bug: 22836852
Bug: 18707397
Change-Id: I13686f64de1b52d3f6c97b2587ae41e52d1db6e2

8 years agoIGraphicBufferProducer: fix QUEUE_BUFFER info leak
Robert Shih [Mon, 11 Jan 2016 23:02:12 +0000 (15:02 -0800)]
IGraphicBufferProducer: fix QUEUE_BUFFER info leak

Bug: 26338109
Change-Id: I8a979469bfe1e317ebdefa43685e19f9302baea8

8 years agoIGraphicBufferConsumer: fix ATTACH_BUFFER info leak
Robert Shih [Mon, 11 Jan 2016 19:42:48 +0000 (11:42 -0800)]
IGraphicBufferConsumer: fix ATTACH_BUFFER info leak

Bug: 26338113
Change-Id: I019c4df2c6adbc944122df96968ddd11a02ebe33

8 years agoRevert "Revert "gui: only support tertiary display if QTI_BSP is defined""
Abhisek Devkota [Fri, 8 Jan 2016 19:40:31 +0000 (11:40 -0800)]
Revert "Revert "gui: only support tertiary display if QTI_BSP is defined""

This reverts commit fd95bb1c240eea33b0c491b1b569091d4f3d7525.

Change-Id: I0acbd3a8ba91f33e1ad60b14093101811683e04f

8 years agoSurfaceFlinger: Move Extended SF classes to same repository
Arun Kumar K.R [Thu, 3 Dec 2015 02:19:20 +0000 (18:19 -0800)]
SurfaceFlinger: Move Extended SF classes to same repository

Move the ExSurfaceFlinger, ExLayer, etc., classes to this
repository, to avoid dependency accross projects with static
linking

The following commits are included in this:
commit 04f501b31f627e47ae540b5160b2f86b7adbd921
Author: Baldev Sahu <bsahu@codeaurora.org>
Date:   Wed Nov 25 18:05:51 2015 +0530

display-fw: Properly initialise mIsGPUAllowedForProtected flag

- This flag need to be initialize to false when layer is
  created.

Change-Id: Ie3df40ffc4240c33883f19ecbef6428f7c539b07
CRs-fixed: 942102

commit 09032188751356db295bc5467133ec484dc536cd
Author: Arun Kumar K.R <akumarkr@codeaurora.org>
Date:   Tue Oct 20 10:22:51 2015 -0700

display-fw: Enable checking for INTERNAL_ONLY private flag

Check for INTERNAL_ONLY private flag and return correct values
from the function isIntOnly

Change-Id: I61b44f636412e0ad93e1b3ff18e4accdf90eeafe
CRs-fixed: 927880

commit f687ac25b3482b92da3c252d29b65e850cca3ce1
Author: Arun Kumar K.R <akumarkr@codeaurora.org>
Date:   Thu Oct 15 16:37:11 2015 -0700

display-frameworks: Include libqdutils
only for target builds

Featurize including libqdutils for targets which uses QCOM_BSP,
helps in resolving compilation for emulator builds

Change-Id: I39639c3100eb20dd24d2a875bb0e9bc82d2b2d1f

commit 4ec765e01be506a8083980fc746a1737bbac4bf2
Author: Arun Kumar K.R <akumarkr@codeaurora.org>
Date:   Wed Oct 7 18:33:34 2015 -0700

display-fw: Disable rotation animation on secondary displays

- Set the animating flag on layer during animation which is used
  as hint to disable rotation animation on secondary displays.
- Set sys.disable_ext_animation to enable the feature
- Remove unused definitions in the extended hwc header

Change-Id: I7b72c7b605930ea189e047fec17ed18b17d46fdf
CRs-fixed: 922304

commit 6998bbdfd7af3126b64897b16b6961e84952601b
Author: Baldev Sahu <bsahu@codeaurora.org>
Date:   Thu Jul 30 16:01:15 2015 +0530

display-frameworks: Extend support for MDP3

- Add support for HWC_BLIT
- Allow GPU to compose widevine level 3

Change-Id:I11e03ccd0842d019e85d0c29bc5b7be559fccbaa

commit 2fa7aa1684c0162b8226c4327c86c6eaf6b76101
Author: Manoj Kumar <manoj@codeaurora.org>
Date:   Thu Aug 20 13:52:15 2015 -0700

display-frameworks: Override mOutputUsage with sink Usage flags

mOutputUsage flags contain default usage flags and doesnt reflect
sink usage flags. Override mOutputUsage with sink usage flags.

This change is needed to support WFD Secure usecase.

Change-Id: I14d8812049f635a8ebe6a944783e0ec7f8f80b1f

commit 09da768794c8c6acd786d73239ed5a739695b8cb
Author: Raj Kamal <rkamal@codeaurora.org>
Date:   Mon Jul 20 10:46:27 2015 +0530

display-frameworks: Extend the classes defined in SF

Add support for custom classes ExSurfaceFlinger,
ExLayer, ExHWComposer and ExVirtualDisplaySurface

Change-Id: Iab8c4835faaad9b436bbd34d38702741eb0cf12d

Change-Id: Ie400c94ccc77fc379ffa256af03a9e42ba5decaa

8 years agosf: Change log message in layer query method from ALOGE to ALOGW
Tatenda Chipeperekwa [Tue, 13 Oct 2015 22:14:51 +0000 (15:14 -0700)]
sf: Change log message in layer query method from ALOGE to ALOGW

This error can be seen for the following use case

1. Connect HDMI display
2. Dump the SurfaceFlinger state

The problem here is that HWComposer would have processed the display
connection event via the hotplug mechanism and considers that the
external display is connected. However, SurfaceFlinger has not
updated its internal state (mDisplays) since it will be waiting for
the mStateLock to be release by the dump function. As a result, when
the dump function invokes the getLayerSortedByZForHwcDisplay for the
external display, we will end up seeing the error log message because
SurfaceFlingers internal state has not yet been updated.

We can move this to ALOGW since it is a non-fatal/recoverable state.

CRs-Fixed: 914173
Change-Id: Ib0ba359ecd894dd463417ba57ba1f72c07b5833e

8 years agoRevert "gui: only support tertiary display if QTI_BSP is defined"
Abhisek Devkota [Fri, 8 Jan 2016 05:28:23 +0000 (21:28 -0800)]
Revert "gui: only support tertiary display if QTI_BSP is defined"

This reverts commit cbd3e07921a7e7525d88c7606b1b8aeb32441804.

Change-Id: I2a0f130dc64a9ebcbcaef36cfe973c759824cf8b

8 years agosensor: Skip additional permission request checks
Matt Filetto [Mon, 21 Dec 2015 04:22:04 +0000 (20:22 -0800)]
sensor: Skip additional permission request checks

* Some legacy Samsung HALs supporting BODY_SENSOR types are
  incompatible with the new permission checks added in M.
  Extend the NO_SENSOR_PERMISSION_CHECK flags to cover more
  of the actual checks.

Change-Id: Id2b9b57d8151b0998d9233e0a6541e8c88e06af7

8 years agogui: only support tertiary display if QTI_BSP is defined
Abhisek Devkota [Tue, 20 Oct 2015 22:44:32 +0000 (15:44 -0700)]
gui: only support tertiary display if QTI_BSP is defined

Non-caf display HALs crap out with this

Change-Id: I9db8a74e262e674335cd993a5365e05d3715d1e8

8 years agosensor: Allow devices to skip the permission request
Christopher N. Hesse [Sat, 28 Nov 2015 23:39:51 +0000 (00:39 +0100)]
sensor: Allow devices to skip the permission request

This is needed by Samsung devices with pre-M sensor
blobs which have support for SENSOR_TYPE_HEART_RATE
or body sensors in general.
These HALs somehow segfault on the flagged code.

Change-Id: I698f4129e71b683f6f063f00da79f32a5f521149

8 years agodumpstate: increase logcat timeout to 40 seconds (DO NOT MERGE)
Mark Salyzyn [Fri, 18 Dec 2015 18:14:46 +0000 (10:14 -0800)]
dumpstate: increase logcat timeout to 40 seconds (DO NOT MERGE)

- temporary measure until root issues can be resolved.

Bug: 23685592
Change-Id: Ia33f4e3928a457c3dcd730ad2c2c57d13fbf133d

8 years agoFix the execution point of onFrameAvailable/onFrameReplaced callbacks
Christian Poetzsch [Mon, 7 Dec 2015 13:36:22 +0000 (13:36 +0000)]
Fix the execution point of onFrameAvailable/onFrameReplaced callbacks

In a4650a5 the concept of a maximum frame number allowance for the consumer was
introduced. A call to acquireBuffers will only return buffers when their frame
number is less-than-or-equal-to this maximum frame number. When SurfaceFlinger
is the consumer, this maximum  frame number is calculated in the
onFrameAvailable/onFrameReplaced callbacks. These callbacks are called when a
new buffer is dequeued by the application. The problem is that these callbacks
are called _after_ the fence wait which is used to throttle the frame
production of client apps. When the previous frame needs a long time to draw,
those waits can potentially be a long time. As a result SurfaceFlinger won't do
any composition with the new frame until the wait is over.

Normally this isn't a big problem because there is a queue of buffers for
SurfaceFlinger to work with. However, this changes massively when a client app
is using a swap interval of zero. In this case, a new frame will instantly
replace the previous queued frame. However, SurfaceFlinger doesn't know this
until the onFrameReplaced callback gets called - which is delayed by the fence
wait. If the timing is bad, SurfaceFlinger never gets a chance to pick up a new
frame to do the composition with.

We see this behaviour on our TC development system (slow GPU) with legacy
on-screen benchmarks. Such apps are using a swap interval of zero and sometimes
frames don't get updated for several seconds. This behaviour can be also seen
on a Nexus5, although it isn't as obvious as on our TC.

The fix in this cl is to move the EGL throttling to the end of the queueBuffers
function. This ensures that if a frame gets replaced in the queue, all
consumers who installed the callbacks, get called in a timely fashion.

Change-Id: I36e9ecda162150f41e97d4fb7437963a3d86b371
Signed-off-by: Christian Poetzsch <christian.potzsch@imgtec.com>
8 years agoSF: Fix invalid reduction of transparent region from a layer.
radhakrishna [Fri, 21 Feb 2014 04:31:08 +0000 (10:01 +0530)]
SF: Fix invalid reduction of transparent region from a layer.

Reduce transparent region from a layer only if the transparent
region has valid intersection with the layer. Otherwise, reducing
a transparent region lying completely outside of the layer leads to
invalid sourcecrop values for the layer.

Change-Id: Iee9ba53a8072c21c9ba8a6d58cb14ca30f8600ba
CRs-Fixed: 620973