OSDN Git Service

android-x86/frameworks-native.git
10 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>
10 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>
10 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>
10 years agoDon't change the framebuffer target until we render a new one
Jesse Hall [Thu, 7 Nov 2013 20:28:26 +0000 (12:28 -0800)]
Don't change the framebuffer target until we render a new one

Continuing to send the last-rendered framebuffer to HWC on subsequent
frames allows the HWC to read partially-composed regions that haven't
changed, instead of re-composing from scratch.

Bug: 11573910
Change-Id: I8829877d2a06001f1e1b3f168cbba71c7b217b2d

10 years agoMerge "Provide virtual display output buffer to HWC in prepare" into klp-dev
Jesse Hall [Thu, 7 Nov 2013 04:43:19 +0000 (04:43 +0000)]
Merge "Provide virtual display output buffer to HWC in prepare" into klp-dev

10 years agoMerge "Don't use implementation-defined format with CPU consumers" into klp-dev
Jesse Hall [Wed, 6 Nov 2013 15:35:08 +0000 (15:35 +0000)]
Merge "Don't use implementation-defined format with CPU consumers" into klp-dev

10 years agoProvide virtual display output buffer to HWC in prepare
Jesse Hall [Wed, 6 Nov 2013 00:12:31 +0000 (16:12 -0800)]
Provide virtual display output buffer to HWC in prepare

We were already making sure the HWComposer class had the handle before
prepare, but it wasn't passing the handle along to HWC as intended.

Partial fix for bug: 11430248
Change-Id: I25f672c4fdfaa6a81fe0acb24d9ad05153ee17dc

10 years agoDon't use implementation-defined format with CPU consumers
Jesse Hall [Tue, 5 Nov 2013 00:43:03 +0000 (16:43 -0800)]
Don't use implementation-defined format with CPU consumers

If the virtual display surface is being consumed by the CPU, it can't
be allowed with HAL_PIXEL_FORMAT_IMPLEMENTATION_DEFINED since there is
no way for the CPU consumer to find out what format gralloc chose. So
for CPU-consumer surfaces, just use the BufferQueue's default format,
which can be set by the consumer.

A better but more invasive change would be to let the consumer require
a certain format (or set of formats?), and disallow the producer from
requesting a different format.

Bug: 11479817
Change-Id: I5b20ee6ac1146550e8799b806e14661d279670c0

10 years agoMerge "DispSync: remove delay when enabling vsync events" into klp-dev
Jamie Gennis [Mon, 4 Nov 2013 22:47:31 +0000 (22:47 +0000)]
Merge "DispSync: remove delay when enabling vsync events" into klp-dev

10 years agoDispSync: remove delay when enabling vsync events
Jamie Gennis [Tue, 29 Oct 2013 20:36:12 +0000 (13:36 -0700)]
DispSync: remove delay when enabling vsync events

This change fixes a bug that caused an extra frame of latency when enabling
vsync event callbacks in DispSync.  The bug was related to the logic that
prevents the two events from firing with very little time between them due to
updates to the vsync model.

Bug: 11479720
Change-Id: Ie7eaff9e92ffb7b7b6cb4d3d4402c96cbd29af7e

10 years agoMerge "EGL: rename CallStack::dump into CallStack::log" into klp-dev
Igor Murashkin [Wed, 30 Oct 2013 21:09:39 +0000 (21:09 +0000)]
Merge "EGL: rename CallStack::dump into CallStack::log" into klp-dev

10 years agoEGL: rename CallStack::dump into CallStack::log
Igor Murashkin [Sat, 26 Oct 2013 00:13:57 +0000 (17:13 -0700)]
EGL: rename CallStack::dump into CallStack::log

Bug: 11324229
Change-Id: Ibac1be182c336e7aa5ac098f08d18b3c188964b4

10 years agoMerge "Bug fixes for SensorService" into klp-dev
Aravind Akella [Fri, 25 Oct 2013 23:16:59 +0000 (23:16 +0000)]
Merge "Bug fixes for SensorService" into klp-dev

10 years agoBug fixes for SensorService
Aravind Akella [Tue, 15 Oct 2013 22:43:10 +0000 (15:43 -0700)]
Bug fixes for SensorService

i) Emulate Flush for AOSP Fusion Sesnsors on newer HALs that support batching.
ii) Early return if there are no events for the current SensorEventConnection.

Bug: 1132570711376538

Change-Id: Idb856302463649a99d3d5d0c965bb06ba06b8e1d

10 years agoNative counterpart of new power manager method
Marco Nelissen [Wed, 16 Oct 2013 17:57:51 +0000 (10:57 -0700)]
Native counterpart of new power manager method

Cherrypicked from master.

b/9464621

Change-Id: I54c0ed50a57ac870da91db8589a73a2c792dbd8d

10 years agoFix handling of undefined TARGET_FORCE_HWC_FOR_VIRTUAL_DISPLAYS
Jesse Hall [Fri, 25 Oct 2013 17:44:41 +0000 (10:44 -0700)]
Fix handling of undefined TARGET_FORCE_HWC_FOR_VIRTUAL_DISPLAYS

related to b/8316155 - Implement HWComposer 1.3 w/ virtual display support
Change-Id: I2dc8d65a74174aa833cc491264f97f1f2df49307

10 years agoMerge "Add a boardconfig to force HWC composition of virtual displays" into klp-dev
Jesse Hall [Wed, 23 Oct 2013 22:12:54 +0000 (22:12 +0000)]
Merge "Add a boardconfig to force HWC composition of virtual displays" into klp-dev

10 years agoMerge "Use implementation-defined format when HWC writes to output buffer" into klp-dev
Jesse Hall [Wed, 23 Oct 2013 22:12:37 +0000 (22:12 +0000)]
Merge "Use implementation-defined format when HWC writes to output buffer" into klp-dev

10 years agoOnly consume touches up until the frame time
Michael Wright [Mon, 21 Oct 2013 19:05:22 +0000 (12:05 -0700)]
Only consume touches up until the frame time

When resampling is disabled, it's currently possible to consume
touches after the current frame time. This breaks some guarantees and
could cause unexpected behaviors.

Change-Id: I99908a2cac2df9f795dd4a07188b4451213cf3e4

10 years agoWait for buffers to drain
Andy McFadden [Fri, 18 Oct 2013 22:50:24 +0000 (15:50 -0700)]
Wait for buffers to drain

When a BufferQueue producer disconnects and reconnects, we retain
the previously-queued buffers but empty the slots.  This allows
the number of queued buffers to grow without limit.  The low-memory
killer does not approve.

Bug 11069934

Change-Id: Ia2eaa954c7a3904b54209a3701dba01689e204d8

10 years agoAdd a boardconfig to force HWC composition of virtual displays
Naseer Ahmed [Fri, 4 Oct 2013 20:15:22 +0000 (16:15 -0400)]
Add a boardconfig to force HWC composition of virtual displays

When this boardconfig is defined, even when all virtual display
composition is done by GLES, the HWC will be forced to copy from the
GLES framebuffer to the output buffer. On some hardware this allows
HWC to do format conversions that would otherwise have to be done by
the consumer, with worse power and/or performance.

Bug: 8316155
Change-Id: If980ecc589f138cef063eafa757f7f748196713e

10 years agoUse implementation-defined format when HWC writes to output buffer
Jesse Hall [Fri, 27 Sep 2013 16:05:09 +0000 (09:05 -0700)]
Use implementation-defined format when HWC writes to output buffer

When GLES isn't writing to the output buffer directly, request an
implementation-defined format with minimal usage flags, leaving the
format choice up to gralloc. On some hardware this allows HWC to do
format conversions during composition that would otherwise need to be
done (with worse power and/or performance) by the consumer.

Bug: 8316155
Change-Id: Iee6ee8404282036f9fd1833067cfe11dbadbf0bf

10 years agomerge in klp-release (no-op)
Ed Heyl [Thu, 17 Oct 2013 00:43:06 +0000 (17:43 -0700)]
merge in klp-release (no-op)

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Wed, 16 Oct 2013 04:14:09 +0000 (21:14 -0700)]
merge in klp-release history after reset to klp-dev

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Tue, 15 Oct 2013 22:55:41 +0000 (15:55 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoSurfaceFlinger: give SF its own vsync phase
Jamie Gennis [Tue, 15 Oct 2013 03:52:46 +0000 (20:52 -0700)]
SurfaceFlinger: give SF its own vsync phase

This change allows SurfaceFlinger to run at a different vsync phase offset from
that used by external listeners.

Bug: 11175503
Change-Id: I561c53a5659fa6dc1e3e4ae30340f3c1a6adceb4

10 years agoSurfaceFlinger: Add EventControlThread
Jamie Gennis [Mon, 14 Oct 2013 19:22:52 +0000 (12:22 -0700)]
SurfaceFlinger: Add EventControlThread

This change adds a new thread for calling HWComposer's eventControl
asynchronously.  The DispSync-based vsync approach ends up enabling and
disabling HWComposer's vsync callbacks at arbitrary times, and some HWComposer
implementations do not have these calls optimized.

Bug: 11175503
Change-Id: I719be82bd200b391c61d40863b991c7b59acdfd6

10 years agoMerge "Disable hardware vsync when blanking the screen" into klp-dev
Jesse Hall [Tue, 15 Oct 2013 19:53:10 +0000 (19:53 +0000)]
Merge "Disable hardware vsync when blanking the screen" into klp-dev

10 years agoMerge "SensorService Flush API bug fix." into klp-dev
Aravind Akella [Tue, 15 Oct 2013 17:01:55 +0000 (17:01 +0000)]
Merge "SensorService Flush API bug fix." into klp-dev

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Tue, 15 Oct 2013 13:00:54 +0000 (06:00 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoSensorService Flush API bug fix.
Aravind Akella [Tue, 15 Oct 2013 00:04:42 +0000 (17:04 -0700)]
SensorService Flush API bug fix.

SensorService is dead locking itself when flush is called on older devices which don't support batching. mConnectionLock is acquired twice.

Change-Id: I5c25585bfb2b396df4b05826a9cba1da7997a3ee

10 years agoDisable hardware vsync when blanking the screen
Jesse Hall [Mon, 14 Oct 2013 19:56:09 +0000 (12:56 -0700)]
Disable hardware vsync when blanking the screen

Bug: 11220224
Change-Id: I99d0a42e1a6bb0aaf89706f6d100e9ef2a5deaa4

10 years agoFilter out vsync events from HWC with duplicate timestamps
Jesse Hall [Mon, 14 Oct 2013 19:36:45 +0000 (12:36 -0700)]
Filter out vsync events from HWC with duplicate timestamps

Bug: 11220224
Change-Id: I4efe0b66ea8969bf0ec3c4fcb325d354c8a0c315

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Mon, 14 Oct 2013 02:20:31 +0000 (19:20 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoMerge "Adding PackageManager feature strings for stepcounter and stepdetector." into...
Aravind Akella [Sun, 13 Oct 2013 22:47:47 +0000 (22:47 +0000)]
Merge "Adding PackageManager feature strings for stepcounter and stepdetector." into klp-dev

10 years agoAdding PackageManager feature strings for stepcounter and stepdetector.
Aravind Akella [Sun, 13 Oct 2013 00:30:40 +0000 (17:30 -0700)]
Adding PackageManager feature strings for stepcounter and stepdetector.

Change-Id: I75ec21900fdc3ea80b61ec12c851a0c5ce9c44e8

10 years agoMerge "DispSync: don't compensate for wakeup latency" into klp-dev
Jesse Hall [Sun, 13 Oct 2013 20:13:59 +0000 (20:13 +0000)]
Merge "DispSync: don't compensate for wakeup latency" into klp-dev

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Sun, 13 Oct 2013 13:02:02 +0000 (06:02 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoMerge "Use black for blackout layer" into klp-dev
Andy McFadden [Fri, 11 Oct 2013 21:39:49 +0000 (21:39 +0000)]
Merge "Use black for blackout layer" into klp-dev

10 years agoChange API from flush(handle) to flush(). Call flush on all active sensors in the...
Aravind Akella [Tue, 8 Oct 2013 21:59:26 +0000 (14:59 -0700)]
Change API from flush(handle) to flush(). Call flush on all active sensors in the given SensorEventConnection.

Change-Id: I4ef2bec80406c517903ab9782dc9eaf3fa8b7f36

10 years agoUse black for blackout layer
Andy McFadden [Fri, 11 Oct 2013 18:16:03 +0000 (11:16 -0700)]
Use black for blackout layer

SurfaceFlinger was rendering dark purple for secure content, which
showed up when we took a screen shot for the orientation change
animation.  Use black instead.

Bug 11157921

Change-Id: I3895e8168891d49dc5b84eed599bcd0a303bb70a

10 years agoEliminate latency when resampling is disabled
Michael Wright [Fri, 11 Oct 2013 01:54:12 +0000 (18:54 -0700)]
Eliminate latency when resampling is disabled

Since the latency was introduced to avoid egregious errors during
resampling, remove it when we aren't resampling.

Change-Id: Ia8e9a9afb1e16212fec81a8c9c661c598e1b0ebf

10 years agoMerge "Eliminate latency when resampling is disabled" into klp-dev
Dave Burke [Fri, 11 Oct 2013 02:33:15 +0000 (02:33 +0000)]
Merge "Eliminate latency when resampling is disabled" into klp-dev

10 years agoMerge "Change API from flush(handle) to flush(). Call flush on all active sensors...
Aravind Akella [Fri, 11 Oct 2013 02:05:40 +0000 (02:05 +0000)]
Merge "Change API from flush(handle) to flush(). Call flush on all active sensors in the given SensorEventConnection." into klp-dev

10 years agoEliminate latency when resampling is disabled
Michael Wright [Fri, 11 Oct 2013 01:54:12 +0000 (18:54 -0700)]
Eliminate latency when resampling is disabled

Since the latency was introduced to avoid egregious errors during
resampling, remove it when we aren't resampling.

Change-Id: Ia8e9a9afb1e16212fec81a8c9c661c598e1b0ebf

10 years agoMerge "Wake up disp sync thread when setting display period" into klp-dev
Jesse Hall [Thu, 10 Oct 2013 22:24:32 +0000 (22:24 +0000)]
Merge "Wake up disp sync thread when setting display period" into klp-dev

10 years agoWake up disp sync thread when setting display period
Jesse Hall [Thu, 10 Oct 2013 21:48:22 +0000 (14:48 -0700)]
Wake up disp sync thread when setting display period

Bug: 10624956
Change-Id: I272c15f319521bfbd1bb70451366c7dd84d60bf9

10 years agoFix blank / partial screenshots
Andy McFadden [Wed, 9 Oct 2013 23:38:02 +0000 (16:38 -0700)]
Fix blank / partial screenshots

The screen capture code wasn't waiting for the render to finish,
so sometimes you'd see an empty or partial image.

Bug 11131777

Change-Id: Ic64087322ce3bb15bb5f4fb1eb07579880fe6197

10 years agoDispSync: don't compensate for wakeup latency
Jamie Gennis [Thu, 10 Oct 2013 00:49:37 +0000 (17:49 -0700)]
DispSync: don't compensate for wakeup latency

This change removes the wakeup latency compensation from the software-generated
vsync events.  Choreographer can't handle timestamps in the future, so don't
aim for early wake-ups with the expectation that the actual wake-up will be
late.

Bug: 11153576

10 years agoChange API from flush(handle) to flush(). Call flush on all active sensors in the...
Aravind Akella [Tue, 8 Oct 2013 21:59:26 +0000 (14:59 -0700)]
Change API from flush(handle) to flush(). Call flush on all active sensors in the given SensorEventConnection.

Change-Id: I4ef2bec80406c517903ab9782dc9eaf3fa8b7f36

10 years agoFix blank / partial screenshots
Andy McFadden [Wed, 9 Oct 2013 23:38:02 +0000 (16:38 -0700)]
Fix blank / partial screenshots

The screen capture code wasn't waiting for the render to finish,
so sometimes you'd see an empty or partial image.

Bug 11131777

Change-Id: Ic64087322ce3bb15bb5f4fb1eb07579880fe6197

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Wed, 9 Oct 2013 13:01:16 +0000 (06:01 -0700)]
merge in klp-release history after reset to klp-dev

10 years agomerge in KQS81M
Ed Heyl [Tue, 8 Oct 2013 22:40:38 +0000 (15:40 -0700)]
merge in KQS81M

10 years agoSurfaceFlinger: SW-based vsync events
Jamie Gennis [Tue, 30 Jul 2013 22:10:32 +0000 (15:10 -0700)]
SurfaceFlinger: SW-based vsync events

This change adds the DispSync class, which models the hardware vsync event
times to allow vsync event callbacks to be done at an arbitrary phase offset
from the hardware vsync.  This can be used to reduce the minimum latency from
Choreographer wake-up to on-screen image presentation.

Bug: 10624956
Change-Id: I8c7a54ceacaa4d709726ed97b0dcae4093a7bdcf

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Sun, 6 Oct 2013 13:01:27 +0000 (06:01 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoAdd feature android.hardware.consumerir xml file
Alex Ray [Thu, 3 Oct 2013 20:09:37 +0000 (13:09 -0700)]
Add feature android.hardware.consumerir xml file

Bug: 10676690
Change-Id: I2cc62b9c97a71588c43ff96ca38d470976bde9b0

10 years agoMerge "Allow blaming a single uid for work done" into klp-dev
Marco Nelissen [Thu, 3 Oct 2013 16:34:51 +0000 (16:34 +0000)]
Merge "Allow blaming a single uid for work done" into klp-dev

10 years agoMerge "media/hardware/HardwareAPI.h: Added PrepareForAdaptivePlaybackParams" into...
Lajos Molnar [Thu, 3 Oct 2013 16:10:25 +0000 (16:10 +0000)]
Merge "media/hardware/HardwareAPI.h: Added PrepareForAdaptivePlaybackParams" into klp-dev

10 years agoAllow blaming a single uid for work done
Marco Nelissen [Wed, 2 Oct 2013 19:42:20 +0000 (12:42 -0700)]
Allow blaming a single uid for work done

This lets audioflinger assign blame for wakelocks to a single uid.
Currently this is only used for recording wakelocks.
b/10985160

Change-Id: Idc9adb22c29030010ac690d4cb95e7e7ea6b91e6

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Thu, 3 Oct 2013 13:02:17 +0000 (06:02 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoSet the outbuf acquire fence after we actually have it.
Jesse Hall [Wed, 2 Oct 2013 00:25:20 +0000 (17:25 -0700)]
Set the outbuf acquire fence after we actually have it.

In GLES-only mode, we don't have the outbuf acquire fence until after
GLES composition is done for the frame. We were setting the fence in
HWC's state immediately after dequeueing the buffer from the consumer,
before GLES had started. This fence got passed through HWC and on to
the consumer, so the consumer was reading the buffer before GLES was
done writing to it.

Now we update HWC's state just before set(), when we know we have the
right fence.

Bug: 11000763
Change-Id: Iea9db4c69634c352dc2d600f0bdb6bef2a432636

10 years agoonly clear FB when asked for the opaque layer
Mathias Agopian [Tue, 1 Oct 2013 22:36:52 +0000 (15:36 -0700)]
only clear FB when asked for the opaque layer

a layer need to be considered NOT opaque if it has a
plane-alpha.

Bug: 10846930
Change-Id: Ibd8981b63ede4560c7096bacc4cff46a7eb2a8bb

10 years agoTreat composition frames with no layers as using GLES composition
Jesse Hall [Mon, 30 Sep 2013 23:49:30 +0000 (16:49 -0700)]
Treat composition frames with no layers as using GLES composition

When there are no window layers for a display, SurfaceFlinger clears
the undefined region using GLES. Some of the places that check for
GLES composition weren't considering this special case, in particular:

- We were skipping the eglSwapBuffers() on these frames.
- We were putting VirtualDisplaySurface in HWC-only composition mode.

This change centralizes the logic for this special case.

Bug: 10957068
Change-Id: I2deaf2ed101e8ea76708862a6bb67751b6078794

10 years agoBufferQueue: fix a test crash
Jamie Gennis [Thu, 26 Sep 2013 00:21:56 +0000 (17:21 -0700)]
BufferQueue: fix a test crash

Bug: 10935880
Change-Id: If76e9fb055103bad0db7e6c16487532671573149

10 years agoMerge "GLConsumer: start using EGL_ANDROID_image_crop" into klp-dev
Jamie Gennis [Wed, 2 Oct 2013 17:36:48 +0000 (17:36 +0000)]
Merge "GLConsumer: start using EGL_ANDROID_image_crop" into klp-dev

10 years agoMerge "only clear FB when asked for the opaque layer" into klp-dev
Dave Burke [Wed, 2 Oct 2013 17:36:40 +0000 (17:36 +0000)]
Merge "only clear FB when asked for the opaque layer" into klp-dev

10 years agoGLConsumer: start using EGL_ANDROID_image_crop
Jamie Gennis [Tue, 24 Sep 2013 00:22:10 +0000 (17:22 -0700)]
GLConsumer: start using EGL_ANDROID_image_crop

This change makes GLConsumer use the EGL_ANDROID_image_crop extension when
available on a device.  The crop rectangle is passed to the EGL driver when
creating EGLImages, allowing the crop to be performed by the driver rather than
using the texture transform matrix.

Bug: 10897141
Change-Id: I63e9a5d5c85067376abc420e3639154468346311

10 years agoMerge "Treat composition frames with no layers as using GLES composition" into klp-dev
Jesse Hall [Wed, 2 Oct 2013 14:54:03 +0000 (14:54 +0000)]
Merge "Treat composition frames with no layers as using GLES composition" into klp-dev

10 years agoSet the outbuf acquire fence after we actually have it.
Jesse Hall [Wed, 2 Oct 2013 00:25:20 +0000 (17:25 -0700)]
Set the outbuf acquire fence after we actually have it.

In GLES-only mode, we don't have the outbuf acquire fence until after
GLES composition is done for the frame. We were setting the fence in
HWC's state immediately after dequeueing the buffer from the consumer,
before GLES had started. This fence got passed through HWC and on to
the consumer, so the consumer was reading the buffer before GLES was
done writing to it.

Now we update HWC's state just before set(), when we know we have the
right fence.

Bug: 11000763
Change-Id: Iea9db4c69634c352dc2d600f0bdb6bef2a432636

10 years agoonly clear FB when asked for the opaque layer
Mathias Agopian [Tue, 1 Oct 2013 22:36:52 +0000 (15:36 -0700)]
only clear FB when asked for the opaque layer

a layer need to be considered NOT opaque if it has a
plane-alpha.

Bug: 10846930
Change-Id: Ibd8981b63ede4560c7096bacc4cff46a7eb2a8bb

10 years agoTreat composition frames with no layers as using GLES composition
Jesse Hall [Mon, 30 Sep 2013 23:49:30 +0000 (16:49 -0700)]
Treat composition frames with no layers as using GLES composition

When there are no window layers for a display, SurfaceFlinger clears
the undefined region using GLES. Some of the places that check for
GLES composition weren't considering this special case, in particular:

- We were skipping the eglSwapBuffers() on these frames.
- We were putting VirtualDisplaySurface in HWC-only composition mode.

This change centralizes the logic for this special case.

Bug: 10957068
Change-Id: I2deaf2ed101e8ea76708862a6bb67751b6078794

10 years agoFix two EGLConfig selection bugs
Jesse Hall [Sat, 28 Sep 2013 05:10:47 +0000 (22:10 -0700)]
Fix two EGLConfig selection bugs

This fixes two bugs introduced by
  Change-Id: Ia8cc084c02a0e3de910def024da8a08d02bbd89d

(a) There is no invalid EGLConfig value, in particular zero is valid.
    Checking return values of eglGetConfigs and eglChooseConfig is the
    only way to determine success.
(b) The "simple" EGLConfig query used as the emulator fallback should
    not include EGL_RECORDABLE; the emulator doesn't have it.

Bug: 10935622
Change-Id: Ib798a24e7cf06a679811c46eaa45d39174a715ec

10 years agoFix two EGLConfig selection bugs
Jesse Hall [Sat, 28 Sep 2013 05:10:47 +0000 (22:10 -0700)]
Fix two EGLConfig selection bugs

This fixes two bugs introduced by
  Change-Id: Ia8cc084c02a0e3de910def024da8a08d02bbd89d

(a) There is no invalid EGLConfig value, in particular zero is valid.
    Checking return values of eglGetConfigs and eglChooseConfig is the
    only way to determine success.
(b) The "simple" EGLConfig query used as the emulator fallback should
    not include EGL_RECORDABLE; the emulator doesn't have it.

Bug: 10935622
Change-Id: Ib798a24e7cf06a679811c46eaa45d39174a715ec

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Sun, 29 Sep 2013 13:01:19 +0000 (06:01 -0700)]
merge in klp-release history after reset to klp-dev

10 years agofix crashers with wifi/virtual displays
Mathias Agopian [Thu, 26 Sep 2013 03:40:07 +0000 (20:40 -0700)]
fix crashers with wifi/virtual displays

Bug: 10647742
Change-Id: I4b8ed9da52ef95af3a3b3a04b98514a3776a674d

10 years agoMerge "fix initialization of framebuffer target crop rect on hwc 1.3" into klp-dev
Mathias Agopian [Thu, 26 Sep 2013 19:41:22 +0000 (19:41 +0000)]
Merge "fix initialization of framebuffer target crop rect on hwc 1.3" into klp-dev

10 years agofix initialization of framebuffer target crop rect on hwc 1.3
Mathias Agopian [Thu, 26 Sep 2013 03:44:34 +0000 (20:44 -0700)]
fix initialization of framebuffer target crop rect on hwc 1.3

Bug: 10936771
Change-Id: If283e5e231ca34b93e0b1784bb4e8e4c7bfd75de

10 years agofix crashers with wifi/virtual displays
Mathias Agopian [Thu, 26 Sep 2013 03:40:07 +0000 (20:40 -0700)]
fix crashers with wifi/virtual displays

Bug: 10647742
Change-Id: I4b8ed9da52ef95af3a3b3a04b98514a3776a674d

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Sun, 22 Sep 2013 17:51:13 +0000 (10:51 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoGLConsumer: Add query for current frame number.
Eino-Ville Talvala [Thu, 19 Sep 2013 20:36:07 +0000 (13:36 -0700)]
GLConsumer: Add query for current frame number.

Surface the underlying frame number of the current texture.

Bug: 10830400
Change-Id: Ide3a7da12ea0aac54588beb6bf00dbfe2cd37653

10 years agoreinstate black-screenshot debugging code
Mathias Agopian [Fri, 20 Sep 2013 00:08:37 +0000 (17:08 -0700)]
reinstate black-screenshot debugging code

turned off by default.

Bug: 10809349
Change-Id: I3e6b8c7860e6b0e122b8f07de4020967cd1f005c

10 years agoMerge "Fix GLES context version selection" into klp-dev
Mathias Agopian [Thu, 19 Sep 2013 22:29:30 +0000 (22:29 +0000)]
Merge "Fix GLES context version selection" into klp-dev

10 years agoGLConsumer: Add query for current frame number.
Eino-Ville Talvala [Thu, 19 Sep 2013 20:36:07 +0000 (13:36 -0700)]
GLConsumer: Add query for current frame number.

Surface the underlying frame number of the current texture.

Bug: 10830400
Change-Id: Ide3a7da12ea0aac54588beb6bf00dbfe2cd37653

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Thu, 19 Sep 2013 13:01:50 +0000 (06:01 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoFix GLES context version selection
Mathias Agopian [Wed, 18 Sep 2013 23:20:26 +0000 (16:20 -0700)]
Fix GLES context version selection

Explicitly selects an ES 2.0 config first, then an ES 1.x config,
before attempting the fallback path for the emulator.

Bug: 10820214
Change-Id: Ia8cc084c02a0e3de910def024da8a08d02bbd89d

10 years agofix camera API 2.0 orientation
Mathias Agopian [Wed, 18 Sep 2013 06:45:22 +0000 (23:45 -0700)]
fix camera API 2.0 orientation

we add a flag to ANativeWindow::setBufferTransform that means
"apply the inverse rotation of the display this buffer is displayed
onto to".

Bug: 10804238
Change-Id: Id2447676271950463e8dbcef1b95935c5c3f32b2

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Wed, 18 Sep 2013 04:11:23 +0000 (21:11 -0700)]
merge in klp-release history after reset to klp-dev

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Wed, 18 Sep 2013 00:39:56 +0000 (17:39 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoFix build (tests)
Mathias Agopian [Tue, 17 Sep 2013 22:55:18 +0000 (15:55 -0700)]
Fix build (tests)

Change-Id: I5b233ef448e5e7eec3818c6586dfea138b28f7b6

10 years agoMerge "Make sure do disconnect from a BQ when its client dies." into klp-dev
Mathias Agopian [Tue, 17 Sep 2013 21:31:13 +0000 (21:31 +0000)]
Merge "Make sure do disconnect from a BQ when its client dies." into klp-dev

10 years agoMerge "Fix for AOSP fusion sensors not handling multiple clients correctly." into...
Aravind Akella [Tue, 17 Sep 2013 18:17:50 +0000 (18:17 +0000)]
Merge "Fix for AOSP fusion sensors not handling multiple clients correctly." into klp-dev

10 years agoMerge "Sensor Batching Bug fixes." into klp-dev
Aravind Akella [Tue, 17 Sep 2013 17:49:26 +0000 (17:49 +0000)]
Merge "Sensor Batching Bug fixes." into klp-dev

10 years agoMerge "Enable FEATURE_DEVICE_ADMIN for handheld devices" into klp-dev
Amith Yamasani [Tue, 17 Sep 2013 15:56:23 +0000 (15:56 +0000)]
Merge "Enable FEATURE_DEVICE_ADMIN for handheld devices" into klp-dev

10 years agomerge in klp-release history after reset to klp-dev
The Android Automerger [Tue, 17 Sep 2013 13:01:01 +0000 (06:01 -0700)]
merge in klp-release history after reset to klp-dev

10 years agoMerge "Stop using default value for Surface producerControlledByApp parameter" into...
Jesse Hall [Tue, 17 Sep 2013 03:27:15 +0000 (03:27 +0000)]
Merge "Stop using default value for Surface producerControlledByApp parameter" into klp-dev

10 years agoMake sure do disconnect from a BQ when its client dies.
Mathias Agopian [Thu, 12 Sep 2013 02:35:45 +0000 (19:35 -0700)]
Make sure do disconnect from a BQ when its client dies.

Bug: 5679534

Change-Id: If447e8673df83fe0b1d6210641e0a48522501a53

10 years agoFix for AOSP fusion sensors not handling multiple clients correctly.
Aravind Akella [Mon, 16 Sep 2013 22:37:41 +0000 (15:37 -0700)]
Fix for AOSP fusion sensors not handling multiple clients correctly.

Bug: 10786801
Change-Id: I7b938bc583a303a30237c3d93b5accbf64cc90b5

10 years agoStop using default value for Surface producerControlledByApp parameter
Jesse Hall [Mon, 16 Sep 2013 22:24:53 +0000 (15:24 -0700)]
Stop using default value for Surface producerControlledByApp parameter

Bug: 10785749
Change-Id: Ifbf9340e5eabe621a69e990ec3e05ac51f8db66a

10 years agoSensor Batching Bug fixes.
Aravind Akella [Fri, 6 Sep 2013 00:03:38 +0000 (17:03 -0700)]
Sensor Batching Bug fixes.

i) SensorService dropping events. Increase SOCKET_BUFFER_SIZE in BitTube ctor.
ii) Call flush before every activate.
iii) Emulate flush for older devices. Add a trivial flush complete event when flush is called.

Bug: 10641596
Change-Id: I30d0f3948e830457143f16e157b6ad81908687ce

10 years agoDisable the egl_khr_gl_colorspace extension
Jesse Hall [Sun, 15 Sep 2013 04:00:14 +0000 (21:00 -0700)]
Disable the egl_khr_gl_colorspace extension

Bug: 10777398
Change-Id: Ib50ea8b9d5d960537701b85929d6312304993a0f